902bfc75337de6fd2e9e7719bd609d67f48d7007
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-31  Wim Taymans  <wim@fluendo.com>
2
3         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
4         (gst_base_transform_handle_buffer):
5         Passthrough elements don't need the caps as they don't care.
6
7 2005-08-31  Wim Taymans  <wim@fluendo.com>
8
9         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
10         (gst_base_transform_handle_buffer), (gst_base_transform_chain):
11         Don't leak refcounts on buffers.
12
13 2005-08-31  Wim Taymans  <wim@fluendo.com>
14
15         * gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
16         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
17         (gst_base_transform_chain), (gst_base_transform_change_state):
18         * gst/base/gstbasetransform.h:
19         Handle the case where we are not negotiated more gracefully.
20
21 2005-08-31  Tim-Philipp Müller  <tim at centricular dot net>
22
23         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
24         (gst_file_src_map_region):
25           Set READONLY flag on mmap'ed buffers, otherwise
26           gst_buffer_make_writable() won't work properly (#314708).
27
28 2005-08-31  Wim Taymans  <wim@fluendo.com>
29
30         * gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
31         passthrough elements can even do inplace on non writable
32         buffers (as they don't touch them).
33
34 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
35
36         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
37         (gst_test_mono_source_set_property),
38         (gst_test_mono_source_class_init), (GST_START_TEST),
39         (gst_controller_suite):
40           more tests (hehe I have the most)
41         * gst/gstbus.c:
42           describe popping messages whenusing mulltiple sources
43         * libs/gst/controller/gst-controller.c:
44         (gst_controlled_property_set_interpolation_mode),
45         (gst_controlled_property_new):
46         * libs/gst/controller/gst-controller.h:
47         * libs/gst/controller/gst-interpolation.c:
48           implement boolean properties
49
50 2005-08-31  Wim Taymans  <wim@fluendo.com>
51
52         * gst/gstminiobject.c: (gst_mini_object_ref):
53         Cannot assert that the refcount has to be positive
54         since a disposed object can be resurected.
55
56 2005-08-31  Wim Taymans  <wim@fluendo.com>
57
58         * gst/gstpad.c: (gst_pad_init):
59         Revert change, need to first fix badly behaving 
60         apps.
61
62 2005-08-30  Wim Taymans  <wim@fluendo.com>
63
64         * check/elements/fakesrc.c: (setup_fakesrc):
65         * check/elements/identity.c: (setup_identity):
66         Activate pads before using them.
67
68 2005-08-30  Wim Taymans  <wim@fluendo.com>
69
70         * gst/base/gstadapter.c: (gst_adapter_flush):
71         Flushing out 0 bytes is ok for this function.
72
73         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
74         no newsegment gives a warning and sets the start/stop to 
75         invalid.
76
77         * gst/base/gstbasetransform.c: (gst_base_transform_change_state),
78         (gst_base_transform_set_passthrough):
79         Some debug info.
80
81         * gst/gstminiobject.c: (gst_mini_object_ref):
82         Check refcount here too.
83
84         * gst/gstpad.c: (gst_pad_init):
85         Pads are initially flushing and refusing data.
86
87         * gst/gstutils.c: (gst_element_link_pads_filtered):
88         When adding a capsfilter element make sure it has the
89         same state as the parent bin.
90
91 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
92
93         * docs/gst/tmpl/.cvsignore:
94         * docs/gst/tmpl/gstformat.sgml:
95         * docs/gst/tmpl/gstversion.sgml:
96         * gst/gstbus.h:
97         * gst/gstformat.c:
98         * gst/gstformat.h:
99         * gst/gstversion.h.in:
100           more docs and two more inlined
101
102 2005-08-30  Wim Taymans  <wim@fluendo.com>
103
104         * gst/elements/gstfilesink.c: (gst_file_sink_class_init):
105         Don't sync to clock.
106
107 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
108
109         * docs/gst/gstreamer-sections.txt:
110           ultral33t func10ns deserve to appear in the docs actualy
111         * docs/gst/tmpl/.cvsignore:
112         * docs/gst/tmpl/gstcompat.sgml:
113         * docs/gst/tmpl/gstconfig.sgml:
114         * gst/check/gstcheck.c:
115         * gst/gstcompat.h:
116         * gst/gstconfig.h.in:
117           inlined more docs
118
119 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
120
121         * docs/gst/tmpl/.cvsignore:
122         * docs/gst/tmpl/gstquery.sgml:
123         * docs/gst/tmpl/gstutils.sgml:
124         * gst/gstquery.c:
125         * gst/gstquery.h:
126           inlined and extended docs
127
128 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
129
130         * check/gst-libs/controller.c: (GST_START_TEST),
131         (gst_controller_suite):
132           more tests
133         * docs/gst/tmpl/gstutils.sgml:
134         * docs/libs/gstreamer-libs-sections.txt:
135         * docs/libs/tmpl/gstdataprotocol.sgml:
136           include path fixes
137         * examples/controller/audio-example.c: (main):
138           controller example works now
139         * gst/gstclock.h:
140           doc fixes
141         * tools/gst-inspect.c: (print_element_properties_info):
142           show param spec flags
143
144 2005-08-29  Andy Wingo  <wingo@pobox.com>
145
146         * gst/gstutils.c (gst_util_uint64_scale): New 3733t funct10n.
147
148 2005-08-28  Andy Wingo  <wingo@pobox.com>
149
150         * gst/gstutils.h (GST_BOILERPLATE_FULL): Prototype instance_init
151         as having two arguments instead of just one. Allows superclasses
152         to access information on subclasses -- see the terrible for() loop
153         in gtype.c:g_type_create_instance for the reason why. All callers
154         changed.
155
156 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
157
158         * docs/design/part-messages.txt:
159           update info
160         * docs/gst/tmpl/.cvsignore:
161         * docs/gst/tmpl/gstcaps.sgml:
162         * docs/gst/tmpl/gstclock.sgml:
163         * gst/gstbus.c:
164         * gst/gstcaps.c:
165         * gst/gstcaps.h:
166         * gst/gstclock.c:
167         * gst/gstclock.h:
168         * gst/gstmessage.c:
169           added descriptions for bus and message
170           inline caps and clock docs
171
172 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
173
174         * gst/gstmessage.c:
175         * gst/gstmessage.h:
176           doc fixes
177
178 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
179
180         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
181           fix div-by-zero
182
183 2005-08-26  Andy Wingo  <wingo@pobox.com>
184
185         * check/pipelines/simple_launch_lines.c (run_pipeline): Check
186         element_set_state's return val.
187         (test_2_elements): Add test that's been disabled for months.
188
189         * gst/elements/gstfakesink.c: Cleanups. Add can-activate-push and
190         can-activate-pull properties.
191
192         * gst/elements/gstfakesrc.c: Cleanups. Add can-activate-push and
193         can-activate-pull properties. Implement is_seekable so fakesrc can
194         operate in pull mode.
195
196         * gst/base/gstbasesink.c (GstBaseSink): Remove has-loop, has-chain
197         properties.
198         (gst_base_sink_activate, gst_base_sink_activate_pull)
199         (gst_base_sink_activate_push): Make activation mode choosing work.
200         Cleanups.
201         (gst_base_sink_chain, gst_base_sink_loop): Assert activation mode
202         is right. Make pull mode work. Post an eos before pausing in pull
203         mode.
204         (gst_base_sink_change_state): Pay attention to the core's
205         change_state() return val.
206         
207         * gst/base/gstbasesrc.c (GstBaseSrc): Remove has-loop,
208         has-getrange properties. Cleanups.
209         
210         * gst/base/gstbasesrc.h (GstBaseSrc): Remove has_loop,
211         has_getrange and replace with can_activate_pull and
212         can_activate_push.
213
214         * gst/base/gstbasesink.h (GstBaseSink): Rearrange fields, add
215         locking comments. Remove has_loop, has_chain and replace with
216         can_activate_pull and can_activate_push.
217
218 2005-08-26  Jan Schmidt  <thaytan@mad.scientist.com>
219
220         * configure.ac:
221         * examples/Makefile.am:
222         * examples/metadata/Makefile.am:
223         * examples/metadata/read-metadata.c: (message_loop),
224         (have_pad_handler), (make_pipeline), (print_tag), (main):
225           Add metadata reading example that loops over a list of filenames,
226           dumping any tags found.
227
228         * gst/gstbus.c: (gst_bus_dispose):
229         * gst/gstelement.c: (gst_element_dispose):
230           Release a few potentially-held references in dispose.
231
232 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
233
234         * docs/gst/tmpl/gstminiobject.sgml:
235           do *not* add tmpl/*.sgml files to CVS!
236
237 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
238
239         * libs/gst/bytestream/.cvsignore:
240         * libs/gst/bytestream/Makefile.am:
241         * libs/gst/bytestream/adapter.c:
242         * libs/gst/bytestream/adapter.h:
243         * libs/gst/bytestream/bytestream.c:
244         * libs/gst/bytestream/bytestream.h:
245         * libs/gst/bytestream/filepad.c:
246         * libs/gst/bytestream/filepad.h:
247           removing obsolete files
248
249 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
250
251         * docs/gst/gstreamer-docs.sgml:
252         * docs/libs/gstreamer-libs-docs.sgml:
253           disabed additional index entries again, as this makes docs-gen just
254           slow and they aren't useful yet
255         * docs/libs/gstreamer-libs-sections.txt:
256           little -section.txt cleanup for libs
257
258 2005-08-26  Thomas Vander Stichele  <thomas at apestaart dot org>
259
260         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
261         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
262           fix up some debugging
263         (gst_base_transform_get_unit_size),
264         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
265         (gst_base_transform_handle_buffer):
266         * gst/base/gstbasetransform.h:
267           handle and store timed NEWSEGMENT events so that subclasses that
268           calculate time by counting samples have a segment_start time they
269           need to add to their timestamps - see audioresample
270
271 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
272
273         * gst/gstbin.h:
274           removed ';' from the end of macro defs
275         * docs/gst/gstreamer-docs.sgml:
276         * docs/gst/gstreamer-sections.txt:
277         * docs/gst/tmpl/.cvsignore:
278         * gst/gstbus.h:
279         * gst/gstelement.c: (gst_element_class_init),
280         (gst_element_set_state), (activate_pads),
281         (gst_element_save_thyself):
282         * gst/gstevent.c: (gst_event_new_newsegment):
283         * gst/gstevent.h:
284         * gst/gstiterator.c:
285         * gst/gstiterator.h:
286         * gst/gstpad.c:
287         * gst/gstprobe.h:
288         * gst/gstutils.c: (gst_pad_query_convert):
289         * gst/gstutils.h:
290           fixed parameter name mismatches between source, header and docs
291           added some more docs, resolved the last batch of unused elements in
292           docs (now someone needs to doc them)
293
294 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
295
296         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
297         * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
298           don't walk through the plugins backwards.  Where is all this
299           reversed logic coming from ?
300
301 2005-08-25  Wim Taymans  <wim@fluendo.com>
302
303         * gst/base/gstbasetransform.c: (gst_base_transform_init),
304         (gst_base_transform_transform_size),
305         (gst_base_transform_configure_caps),
306         (gst_base_transform_get_unit_size),
307         (gst_base_transform_buffer_alloc),
308         (gst_base_transform_change_state):
309         * gst/base/gstbasetransform.h:
310         Cache caps unit_size.
311         Make sure we cannot negotiate up and downstream at the
312         same time.
313
314 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
315
316         * gst/gst.c: (init_pre), (init_post):
317           register the installed plugin path after the env var
318         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
319         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
320           don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
321           directories, so the tests can prefer uninstalled over installed
322
323 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
324
325         * gst/base/gstbasetransform.h:
326           comment
327         * gst/gstpad.c:
328           add to docs
329
330 2005-08-25  Wim Taymans  <wim@fluendo.com>
331
332         * gst/gstbin.c: (bin_bus_handler):
333         Be a bit more conservative about the posted message.
334         
335         * gst/gstbus.c: (gst_bus_post):
336         Some cleanups, warn wrong return values.
337
338 2005-08-25  Jan Schmidt  <thaytan@mad.scientist.com>
339
340         * check/gst/gstbin.c: (GST_START_TEST):
341         * gst/gstbin.c: (bin_bus_handler):
342         * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
343         (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
344         (gst_message_new_warning), (gst_message_new_tag),
345         (gst_message_new_state_changed), (gst_message_new_segment_start),
346         (gst_message_new_segment_done), (gst_message_new_custom):
347         * gst/gstmessage.h:
348         * tools/gst-launch.c: (event_loop):
349         * tools/gst-md5sum.c: (event_loop):
350           Revert unpopular change for GST_MESSAGE_SRC to GObject.
351
352 2005-08-25  Wim Taymans  <wim@fluendo.com>
353
354         * check/generic/states.c: (GST_START_TEST):
355         Cleanup can be done at the end.
356
357         * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
358         (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
359         (gst_task_get_state), (gst_task_start), (gst_task_pause):
360         Oh boy.. Thanks for finding this, Thomas. 
361
362 2005-08-25  Stefan Kost  <ensonic@users.sf.net>
363
364         * docs/gst/gstreamer.types:
365           added missing types
366
367 2005-08-25  Stefan Kost  <ensonic@users.sf.net>
368
369         * docs/gst/gstreamer-docs.sgml:
370         * docs/gst/gstreamer-sections.txt:
371         * docs/gst/tmpl/.cvsignore:
372         * gst/gstbin.c:
373         * gst/gstiterator.c:
374         * gst/gstutils.c:
375         * gst/registries/gstxmlregistry.h:
376           added miissing classes and symbols (123 more to go)
377           removed removed symbols from section file
378           fixed many doc-comments
379
380 2005-08-24  Wim Taymans  <wim@fluendo.com>
381
382         * check/generic/states.c: (GST_START_TEST):
383         Make sure all tasks are stopped.
384
385         * check/gst/gstbin.c: (GST_START_TEST):
386         Unref after usage for proper valgrinding.
387
388         * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
389         Really wait for the task to stop before destroying the
390         mutex.
391
392         * gst/gstqueue.c: (gst_queue_sink_activate_push),
393         (gst_queue_src_activate_push):
394         Small cleanups. Don't stop the task when we did not start
395         it.
396
397         * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
398         (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
399         (gst_task_get_state), (gst_task_start), (gst_task_pause),
400         (gst_task_join):
401         * gst/gsttask.h:
402         Protect the stream lock with the object lock.
403         Disallow setting the stream lock when running.
404         Add cleanup_all to wait for the threadpool to finish.
405         Remove code to autoallocate a mutex if none was provided.
406         Add _join() to wait for a task to stop.
407         Protect the thread pool with a global lock.
408
409 2005-08-24  Wim Taymans  <wim@fluendo.com>
410
411         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
412         (gst_base_sink_get_times), (gst_base_sink_do_sync),
413         (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
414         * gst/base/gstbasesink.h:
415         Handle newsegment events correctly.
416         Drop buffers out of the segment range.
417
418 2005-08-22  Andy Wingo  <wingo@pobox.com>
419
420         * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
421         macro, implements an interface and gstimplementsinterface for a
422         new type.
423
424 2005-08-24  Thomas Vander Stichele  <thomas at apestaart dot org>
425
426         * check/Makefile.am:
427         * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
428           add a test that does a bunch of state changes on elements
429           needs some fixing for valgrind
430         * check/states/sinks.c: (gst_object_suite):
431           whitespace
432         * gst/gstcaps.h:
433           add prototype for gst_caps_is_equal_fixed
434         * gst/gstplugin.c:
435         * gst/gstregistrypool.c:
436           doc fixes
437
438 2005-08-24  Andy Wingo  <wingo@pobox.com>
439
440         * gst/gstquery.c (gst_query_new_convert): Spew if we try to
441         convert a negative value. Doesn't make much sense. Mostly this is
442         here to force callers to ensure -1 maps to -1.
443
444 2005-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
445
446         * docs/pwg/advanced-types.xml:
447           Well done to Michael for catching my deliberate introduction
448           of this spelling mistake. 
449         * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
450         * gst/gstelement.h:
451           Add GST_ELEMENT_UNPARENTING to prevent races so that we can
452           unlink pads before removing the element from the bin.
453
454 2005-08-24  Andy Wingo  <wingo@pobox.com>
455
456         * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
457         the same thing as GST_DEBUG=*:4.
458         (parse_debug_level, parse_debug_category): New helper parsers.
459
460 2005-08-24  Thomas Vander Stichele  <thomas at apestaart dot org>
461
462         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
463         (gst_base_transform_transform_size), (gst_base_transform_getcaps),
464         (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
465         (gst_base_transform_buffer_alloc),
466         (gst_base_transform_handle_buffer):
467           use gboolean return values and pointers to size so we can use the
468           full GST_BUFFER_SIZE range (guint) for buffer sizes
469           use GstPadDirection for transform_caps
470         * gst/base/gstbasetransform.h:
471           rename get_size to get_unit_size since that's what it is
472         * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
473           use GstPadDirection for transform_caps
474         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
475         * gst/gstutils.h:
476           cleanup and debugging
477
478 2005-08-24  Stefan Kost  <ensonic@users.sf.net>
479
480         * gst/gstelement.c: (gst_element_class_init),
481         (gst_element_set_state), (activate_pads),
482         (gst_element_save_thyself):
483         * tools/gst-compprep.c: (main):
484         * tools/gst-inspect.c: (print_element_properties_info):
485         * tools/gst-xmlinspect.c: (print_element_properties):
486           Fixed long standing mem-leak
487
488 2005-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
489
490         * check/gst/gstbin.c: (GST_START_TEST):
491         * gst/gstbin.c: (bin_bus_handler):
492         * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
493         (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
494         (gst_message_new_warning), (gst_message_new_tag),
495         (gst_message_new_state_changed), (gst_message_new_segment_start),
496         (gst_message_new_segment_done), (gst_message_new_custom):
497         * gst/gstmessage.h:
498         * tools/gst-launch.c: (event_loop):
499         * tools/gst-md5sum.c: (event_loop):
500           Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
501           that applications can sensibly post custom messages with references
502           to their own objects.
503
504 2005-08-24  Andy Wingo  <wingo@pobox.com>
505
506         * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
507         already.
508
509 2005-08-24  Wim Taymans  <wim@fluendo.com>
510
511         * gst/base/gstbasetransform.c: (gst_base_transform_init),
512         (gst_base_transform_transform_caps),
513         (gst_base_transform_transform_size),
514         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
515         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
516         (gst_base_transform_handle_buffer):
517         * gst/base/gstbasetransform.h:
518         Many fixes and new features added by Thomas. Can now also do
519         transforms with variable sizes and a custom fixate_caps function.
520
521 2005-08-24  Wim Taymans  <wim@fluendo.com>
522
523         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
524         Some debugging.
525
526         * gst/gstclock.h:
527         Cast to ClockTime before formatting to time.
528
529         * gst/gstutils.h:
530         Cleanups.
531
532 2005-08-24  Stefan Kost  <ensonic@users.sf.net>
533
534         * check/gst-libs/controller.c: (GST_START_TEST),
535         (gst_controller_suite):
536         * docs/gst/tmpl/gstcaps.sgml:
537         * docs/gst/tmpl/gstghostpad.sgml:
538         * docs/gst/tmpl/gstquery.sgml:
539         * docs/gst/tmpl/gstutils.sgml:
540         * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
541         (gst_object_sink_values), (gst_object_get_value_arrays),
542         (gst_object_get_value_array):
543           gracefully handle helper method calls to objects that are not beeing
544           controlled, added test case for that          
545
546 2005-08-23  Wim Taymans  <wim@fluendo.com>
547
548         * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
549         (gst_event_new_newsegment), (gst_event_parse_newsegment),
550         (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
551         (gst_event_parse_qos), (gst_event_new_seek),
552         (gst_event_parse_seek):
553         * gst/gstevent.h:
554         Some more debugging output and doc cleanups.
555
556         * gst/gstqueue.c: (gst_queue_handle_sink_event):
557         Fix possible deadlock.
558
559 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
560
561         * docs/gst/gstreamer-docs.sgml:
562         * docs/gst/gstreamer-sections.txt:
563         * docs/gst/gstreamer.types:
564         * docs/gst/tmpl/.cvsignore:
565         * gst/gstbin.h:
566         * gst/gstbus.c:
567         * gst/gstelement.c:
568         * gst/gstevent.h:
569           added about 100 symbols from gstreamer-unused.txt to the right sections
570           fixed more broken comments
571           added GstBus to docs
572
573 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
574
575         * docs/gst/gstreamer-sections.txt:
576         * docs/gst/tmpl/.cvsignore:
577         * docs/gst/tmpl/gstbin.sgml:
578         * docs/gst/tmpl/gstbuffer.sgml:
579         * gst/base/gstbasesrc.c:
580         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
581         * gst/gstbuffer.c:
582         * gst/gstbuffer.h:
583         * tools/gst-launch.1.in:
584           inlined more doc comments, added missing comments and fixed comments
585           fixed typos
586
587 2005-08-23  Thomas Vander Stichele  <thomas at apestaart dot org>
588
589         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
590           some debugging
591         * gst/gstcaps.h:
592           whitespace fixes
593         * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
594           more debugging
595         * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
596         * gst/gststructure.h:
597           add a fixate function for booleans; add a FIXME that these func
598           names should probably be gst_structure_fixate_*
599
600 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
601
602         * docs/gst/gstreamer-docs.sgml:
603         * docs/gst/gstreamer-sections.txt:
604         * gst/Makefile.am:
605         * gst/gstbin.c: (gst_bin_get_type),
606         (gst_bin_child_proxy_get_child_by_index),
607         (gst_bin_child_proxy_get_children_count),
608         (gst_bin_child_proxy_init):
609         * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
610         (gst_child_proxy_get_child_by_index),
611         (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
612         (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
613         (gst_child_proxy_get), (gst_child_proxy_set_property),
614         (gst_child_proxy_set_valist), (gst_child_proxy_set),
615         (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
616         (gst_child_proxy_base_init), (gst_child_proxy_get_type):
617         * gst/gstchildproxy.h:
618         * gst/parse/grammar.y:
619         * tools/gst-inspect.c: (print_interfaces),
620         (print_element_properties_info), (print_element_info):
621          ported gstchildproxy over from 0.8
622          ported gst-inspect fixes and enhancements over from 0.8
623
624 2005-08-22  Wim Taymans  <wim@fluendo.com>
625
626         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
627         (gst_base_transform_handle_buffer):
628         Also call the transform function if we have ANY caps.
629
630         * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
631         Fix debug info.
632
633 2005-08-22  Jan Schmidt  <thaytan@mad.scientist.com>
634
635         * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
636           Don't pretend to handle seek events if the source is not seekable
637
638 2005-08-22  Jan Schmidt  <thaytan@mad.scientist.com>
639
640         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
641           Remove extra parameter to debug output
642
643         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
644         (gst_base_src_do_seek), (gst_base_src_activate_push):
645           Fix seek event handling.
646
647         * gst/gstpipeline.c: (gst_pipeline_change_state):
648         * gst/gstqueue.c: (gst_queue_handle_sink_event),
649         (gst_queue_src_activate_push):
650           Don't start the src pad task on FLUSH_STOP if the pad
651           isn't linked.
652           Debug changes.
653
654 2005-08-22  Wim Taymans  <wim@fluendo.com>
655
656         * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
657         Added check for gst_static_caps_get() refcounting.
658
659 2005-08-22  Wim Taymans  <wim@fluendo.com>
660
661         * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
662         Make _static_caps_get() refcounting sane.
663         
664         * gst/gstelement.c: (gst_element_set_state):
665         Add g_return_val_if_fail() to protect against segfaults.
666
667 2005-08-22  Stefan Kost  <ensonic@users.sf.net>
668
669         * docs/gst/tmpl/gstevent.sgml:
670         * gst/gstevent.c:
671         * gst/gstevent.h:
672           inlined remaining docs, added missing doc comments
673
674 2005-08-22  Thomas Vander Stichele  <thomas at apestaart dot org>
675
676         * check/gst/gstbin.c: (GST_START_TEST):
677           since we don't know when preroll is done, use refcount range
678           check for the sink
679         * gst/check/gstcheck.h:
680           add macro for checking refcount range
681
682 2005-08-21  Thomas Vander Stichele  <thomas at apestaart dot org>
683
684         * check/Makefile.am:
685           clean up environment for when registry gets built versus
686           when actual tests are run; valgrind seems to not report
687           leaks if GST_PLUGIN_PATH is set to some specific values
688         * check/gst/gstbin.c: (GST_START_TEST):
689           add more refcounting checks; maybe this exposes a
690           preroll lock bug ?
691         * common/check.mak:
692         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
693         * gst/check/gstcheck.h:
694         * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
695         (gst_bin_change_state):
696         * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
697           add/fix debugging/whitespace
698
699 2005-08-21  Jan Schmidt  <thaytan@mad.scientist.com>
700
701         * check/gst/gstevent.c: (event_probe), (test_event),
702         (GST_START_TEST):
703          Er, don't call gst_bin_watch_for_state_change you idiot.
704
705 2005-08-21  Jan Schmidt  <thaytan@mad.scientist.com>
706
707         * check/Makefile.am:
708           Use CHECK_CFLAGS and CHECK_LIBS
709         * check/gst/gstevent.c: (event_probe), (test_event),
710         (GST_START_TEST):
711           Don't leak events.
712         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
713         (gst_base_src_start), (gst_base_src_stop),
714         (gst_base_src_activate_push), (gst_base_src_activate_pull),
715         (gst_base_src_change_state):
716           Sprinkle gst_base_src_stop liberally around error paths to fix
717           problems reusing a source after failed state changes.
718         * gst/base/gsttypefindhelper.c: (helper_find_peek),
719         (helper_find_suggest), (gst_type_find_helper):
720           Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
721         * gst/gstevent.h:
722         * docs/gst/tmpl/gstevent.sgml:
723           Migrate part of the docs from the SGML file. Wait for ensonic to
724           tell me how I did it wrong ;)
725         * tools/gst-typefind.c: (main):
726           Extra robustness to state changes between files.
727
728 2005-08-21  Thomas Vander Stichele  <thomas at apestaart dot org>
729
730         * check/Makefile.am:
731           don't valgrind the controller test - it's leaking - Stefan, HELP
732         * gst/check/gstcheck.c: (gst_check_message_error),
733         (gst_check_chain_func), (gst_check_setup_element),
734         (gst_check_teardown_element), (gst_check_setup_src_pad),
735         (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
736         (gst_check_teardown_sink_pad):
737         * gst/check/gstcheck.h:
738           add a bunch of methods to set up elements, and src and sink pads
739         * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
740         * check/elements/identity.c: (setup_identity), (cleanup_identity),
741         (GST_START_TEST):
742           use them
743         * gst/gstmessage.c:
744         * gst/gsttag.h:
745           whitespace/doc fixes
746
747 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
748
749         * gst/gstelement.h:
750           make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
751           be handled by the application and not always printed as well
752
753 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
754
755         * check/Makefile.am:
756           set GST_TOOLS_DIR
757         * gst/check/gstcheck.c: (gst_check_message_error):
758         * gst/check/gstcheck.h:
759           add a fail_unless_equals_int
760           add fail_unless for error messages
761
762 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
763
764         * check/Makefile.am:
765         * check/gst.supp:
766         * common/Makefile.am:
767         * common/check.mak:
768         * common/gst.supp:
769           factor out some of the common stuff so we can use it
770
771 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
772
773         * check/Makefile.am:
774         * check/gst/gstiterator.c: (GST_START_TEST):
775         * check/gst/gstsystemclock.c: (GST_START_TEST),
776         (gst_systemclock_suite):
777         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
778         * gst/gstclock.c:
779           valgrind more tests
780
781 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
782
783         * check/elements/.cvsignore:
784         * check/elements/gstfakesrc.c:
785           rename to name of element
786         * check/elements/identity.c: (chain_func), (event_func),
787         (setup_identity), (cleanup_identity), (GST_START_TEST),
788         (identity_suite), (main):
789           add a test for identity
790         * check/Makefile.am:
791         * pkgconfig/Makefile.am:
792         * pkgconfig/gstreamer-check.pc.in:
793         * pkgconfig/gstreamer-check-uninstalled.pc.in:
794         * gst/check:
795         * gst/Makefile.am:
796         * configure.ac:
797           move the check stuff to a library that gets installed
798         * check/gst-libs/controller.c: (GST_START_TEST):
799         * check/gst-libs/gdp.c:
800         * check/gst/gst.c: (GST_START_TEST):
801         * check/gst/gstbin.c:
802         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
803         * check/gst/gstbus.c:
804         * check/gst/gstcaps.c: (GST_START_TEST):
805         * check/gst/gstelement.c:
806         * check/gst/gstghostpad.c:
807         * check/gst/gstiterator.c:
808         * check/gst/gstmessage.c:
809         * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
810         * check/gst/gstobject.c:
811         * check/gst/gstpad.c: (GST_START_TEST):
812         * check/gst/gststructure.c: (GST_START_TEST):
813         * check/gst/gstsystemclock.c: (GST_START_TEST),
814         (gst_systemclock_suite):
815         * check/gst/gsttag.c: (gst_tag_suite):
816         * check/gst/gstvalue.c:
817         * check/pipelines/cleanup.c:
818         * check/pipelines/simple_launch_lines.c:
819         * check/states/sinks.c:
820           change include statement
821
822         * docs/gst/gstreamer-sections.txt:
823         * docs/gst/tmpl/gstpad.sgml:
824           document more pad stuff
825         * gst/gstminiobject.c: (gst_mini_object_ref),
826         (gst_mini_object_unref):
827           debug refcounting
828
829 2005-08-19  Stefan Kost  <ensonic@users.sf.net>
830
831         * docs/gst/tmpl/gst.sgml:
832         * gst/gst.c:
833           eliminate another tmpl file, fix spelling in the long-description
834
835 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
836
837         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
838         (test_event), (timediff), (gstevents_suite):
839           Should fix build on 64-bit arch's
840
841 2005-08-18  Andy Wingo  <wingo@pobox.com>
842
843         Make sure that when a pipeline goes to PLAYING, that data has
844         actually hit the sink.
845
846         * check/states/sinks.c (test_sink): A sink that doesn't get any
847         data shouldn't return SUCCESS for going to either PLAYING or
848         PAUSED. Test also the return values on the way back down.
849
850         * gst/gstelement.c (gst_element_set_state): When changing the
851         state of an element currently changing state asynchronously, go to
852         lost-state after commiting the pending state. Makes future calls
853         to get_state continue to return ASYNC.
854
855         * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
856         ASYNC when going to PLAYING if we still don't have preroll, as can
857         happen with live sources.
858
859 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
860
861         * docs/pwg/advanced-types.xml:
862           Hack long paragraph into 2 chunks as a workaround for buggy
863           jadetex version in sid and breezy that loops infinitely and
864           eats all RAM.
865
866 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
867
868         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
869         (test_event), (timediff), (gstevents_suite):
870           Provide more error margin in clock measurements to allow for 
871           g_get_current_time inaccuracies.
872
873 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
874
875         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
876         (test_event), (timediff), (gstevents_suite):
877            Fix error message output so I might be able to tell why the
878            test works here but fails on the build farm.
879
880 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
881
882         * check/Makefile.am:
883         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
884         (test_event), (timediff), (gstevents_suite), (main):
885           I wrote a test!
886
887         * docs/design/part-seeking.txt:
888           Spelling correction
889
890         * docs/gst/tmpl/gstevent.sgml:
891         * docs/gst/tmpl/gstfakesrc.sgml:
892           Docs updates.
893
894         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
895           Treat a buffer-without-newsegment the same as a receiving 
896           a newsegment not in time format, and disable syncing to the clock
897           with a warning.
898
899         * gst/gstbus.c: (gst_bus_set_sync_handler):
900           Assert if anyone tries to replace the existing sync_handler for bus, 
901           as only the owner should be setting it.
902
903         * gst/gstevent.h:
904           Have a fixed set of custom event enums with events identified by
905           their structure name (as in 0.8), rather than a free-for-all
906           allowing collisions between enum values from different plugins.
907
908         * gst/gstpad.c: (gst_pad_class_init):
909           Docs change.
910           
911         * gst/gstqueue.c: (gst_queue_handle_sink_event):
912           Handle out-of-band downstream events from the sending thread.
913
914 2005-08-17  Andy Wingo  <wingo@pobox.com>
915
916         * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
917         play-timeout==0 to mean no timeout at all. In that case, don't
918         bother with a get_state or a warning, just return directly, even
919         if it's ASYNC.
920
921         * gst/base/gstbasetransform.c: Debug changes.
922
923         * gst/gstutils.h:
924         * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
925         ensure bins post state change messages. A bit of a hack but I can't
926         think of a way to avoid it.
927
928         * check/gst/gstbin.c (test_watch_for_state_change): Added test.
929
930 2005-08-16  Andy Wingo  <wingo@pobox.com>
931
932         * gst/base/gstadapter.h:
933         * gst/base/gstadapter.c (gst_adapter_take): New function, like
934         peek() but you own the data. Not terribly efficient atm.
935
936 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
937
938         * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
939         (gst_element_found_tags):
940         * gst/gstutils.h:
941           Add two utility functions for tag handling.
942
943 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
944
945         * docs/manual/advanced-dataaccess.xml:
946         * docs/manual/basics-helloworld.xml:
947           Fix docs to use _bin_add() before _link(), which fixes the examples
948           with recent core versions (reported by Madhan Raj M
949           <raj_madan@rediffmail.com>, #313199).
950
951 2005-08-16  Wim Taymans  <wim@fluendo.com>
952
953         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
954         Added subtract checks.
955
956         * docs/design/part-events.txt:
957         Some more docs about newsegment
958
959         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
960         Fix FIXME
961
962         * gst/gstcaps.c: (gst_caps_to_string):
963         Add comments, cleanups.
964         
965         * gst/gstelement.c: (gst_element_save_thyself):
966         cleanups
967         
968         * gst/gstvalue.c: (gst_value_collect_int_range),
969         (gst_string_unwrap), (gst_value_union_int_int_range),
970         (gst_value_union_int_range_int_range),
971         (gst_value_intersect_int_int_range),
972         (gst_value_intersect_int_range_int_range),
973         (gst_value_intersect_double_double_range),
974         (gst_value_intersect_double_range_double_range),
975         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
976         (gst_value_subtract_int_range_int),
977         (gst_value_subtract_double_range_double),
978         (gst_value_subtract_double_range_double_range),
979         (gst_value_subtract_from_list), (gst_value_subtract_list),
980         (gst_value_can_compare), (gst_value_compare_fraction):
981         Cleanups, add comments, remove unneeded asserts.
982
983 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
984
985         * tools/gst-launch.c: (event_loop):
986           don't convert NULL structures to strings
987
988 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
989
990         * docs/gst/gstreamer-sections.txt:
991           made some defines private
992         * docs/gst/tmpl/gstconfig.sgml:
993         * docs/gst/tmpl/gstqueue.sgml:
994         * docs/gst/tmpl/gsttaglist.sgml:
995         * docs/gst/tmpl/gsttypes.sgml:
996         * docs/gst/tmpl/gstutils.sgml:
997         * docs/pwg/appendix-porting.xml:
998         * gst/base/gstbasesink.h:
999         * gst/base/gstbasesrc.c:
1000         * gst/base/gstbasesrc.h:
1001         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
1002         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
1003         * gst/gstelement.c: (gst_element_class_init):
1004         * gst/gstpad.c: (gst_pad_class_init):
1005         * gst/gstqueue.c: (gst_queue_class_init):
1006         * gst/gstxml.c: (gst_xml_class_init):
1007           documented all undocumented signal inline
1008         * libs/gst/controller/gst-controller.h:
1009           added padding
1010
1011 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1012
1013         * docs/pwg/appendix-porting.xml:
1014           Document _set_link_function -> _set_setcaps_function.
1015
1016 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
1017
1018         * check/Makefile.am:
1019           add a .check target for running the check
1020         * check/gst-libs/controller.c: (GST_START_TEST):
1021           cosmetic fixups
1022         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1023           complete checks for gstbuffer; would be nice if I could get the
1024           gcov stuff to work so I can see if I actually completed gstbuffer.c
1025         * check/gstcheck.h:
1026           add ASSERT_BUFFER_REFCOUNT
1027
1028 2005-08-13  Tim-Philipp M??ller  <tim at centricular dot net>
1029
1030         * docs/gst/gstreamer-sections.txt:
1031         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
1032         * gst/gsttag.h:
1033           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
1034           spew out a warning if a tag that is already registered
1035           is re-registered, unless it is re-registered with a 
1036           different type (#308438).
1037
1038 2005-08-12  Tim-Philipp M??ller  <tim at centricular dot net>
1039
1040         * docs/pwg/appendix-porting.xml:
1041         * docs/pwg/building-state.xml:
1042           Add some paragraphs about state changes in 0.9 to the PWG
1043           and the porting guide, in particular about the new meaning
1044           of GST_STATE_PAUSED and how to write state change functions
1045           with concurrent access by multiple threads in mind.
1046
1047 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
1048
1049         * docs/gst/gstreamer-docs.sgml:
1050         * docs/libs/gstreamer-libs-docs.sgml:
1051           added deprecation and since indexes
1052         * libs/gst/controller/gst-controller.c:
1053         * libs/gst/controller/gst-helper.c:
1054           added since tags
1055
1056
1057 2005-08-11  Wim Taymans  <wim@fluendo.com>
1058
1059         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
1060         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
1061         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
1062         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
1063         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
1064         (gst_ghost_pad_set_target):
1065         Actually implement (re)setting the target on a ghostpad
1066         as described in the docs.
1067
1068 2005-08-10  Tim-Philipp M??ller  <tim at centricular dot net>
1069
1070         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
1071           Check whether GST_DEBUG_NO_COLOR environment variable is
1072           set and disable coloured debug output if that is the case.
1073
1074 2005-08-10  Tim-Philipp M??ller  <tim at centricular dot net>
1075
1076         * gst/base/gsttypefindhelper.c: (helper_find_peek),
1077         (gst_type_find_helper):
1078           The memory returned by gst_type_find_peek() needs to
1079           stay valid until the end of a typefind function, and
1080           typefind functions may keep results from different 
1081           offsets around, so we can't just unref the buffer from
1082           the previous _peek(), but have to save all buffers 
1083           returned by _peek() until typefinding is done and only
1084           free them then.
1085
1086 2005-08-09  Tim-Philipp M??ller  <tim at centricular dot net>
1087
1088         * docs/gst/gstreamer-sections.txt:
1089         * gst/gstutils.h:
1090           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
1091
1092 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1093
1094         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
1095           Fix a pretty good memleak.
1096
1097 2005-08-08  Tim-Philipp M??ller  <tim at centricular dot net>
1098
1099         * gst/gstiterator.h:
1100           Fix wrong include and 'make distcheck'.
1101
1102 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1103
1104         * gst/gstbin.c: (bin_bus_handler):
1105           Use gst_element_post_message() instead.
1106
1107 2005-08-08  Tim-Philipp M??ller  <tim at centricular dot net>
1108
1109         * gst/base/gstadapter.h:
1110         * gst/base/gstbasesink.h:
1111         * gst/base/gstbasesrc.h:
1112         * gst/base/gstbasetransform.h:
1113         * gst/base/gstcollectpads.h:
1114         * gst/base/gstpushsrc.h:
1115         * gst/gstiterator.h:
1116           Add padding to our base elements' class and instance structs and
1117           to GstIterator (you will need to rebuild all plugins and apps!)
1118
1119 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1120
1121         * gst/gstbin.c: (bin_bus_handler):
1122           Make default message forwarding from child->bus to bin->bus
1123           threadsafe and make it not emit warnings if the parent has no bus.
1124
1125 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1126
1127         * gst/gstelement.c: (activate_pads):
1128           On paused->ready, set pad->caps to NULL, as is the documented
1129           behaviour in this state change. Fixes playback of series of
1130           media files when visualization is enabled in Totem.
1131
1132 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1133
1134         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
1135           Allow NULL as filter-caps (which means "any").
1136
1137 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
1138
1139         * docs/libs/gstreamer-libs-sections.txt:
1140         * libs/gst/controller/gst-controller.c:
1141         * libs/gst/controller/gst-controller.h:
1142         * libs/gst/controller/gst-helper.c:
1143           adding more entries to the docs and fix small doc-bugs
1144
1145 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
1146
1147         * docs/gst/gstreamer-docs.sgml:
1148         * docs/gst/gstreamer-sections.txt:
1149         * docs/gst/gstreamer.types:
1150         * docs/gst/tmpl/gstbasesink.sgml:
1151         * docs/gst/tmpl/gstbasesrc.sgml:
1152         * docs/gst/tmpl/gstbasetransform.sgml:
1153         * docs/gst/tmpl/gstfakesrc.sgml:
1154         * gst/base/gstcollectpads.c:
1155         * gst/base/gstcollectpads.h:
1156         * libs/gst/controller/gst-controller.c:
1157         * libs/gst/controller/gst-controller.h:
1158         * libs/gst/controller/gst-helper.c:
1159         * libs/gst/controller/gst-interpolation.c:
1160         * libs/gst/controller/lib.c:
1161           added long/short desc for controller docs
1162           added collectpads base class docs
1163           added correct includes to base-class docs
1164
1165 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
1166
1167         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
1168         (gst_test_mono_source_set_property),
1169         (gst_test_mono_source_class_init), (GST_START_TEST),
1170         (gst_controller_suite):
1171         * docs/gst/gstreamer-docs.sgml:
1172         * docs/gst/gstreamer-sections.txt:
1173         * docs/gst/gstreamer.types:
1174         * docs/libs/gstreamer-libs-docs.sgml:
1175         * docs/libs/gstreamer-libs-sections.txt:
1176         * gst/base/gstadapter.c:
1177         * libs/gst/controller/gst-controller.c:
1178         (gst_controlled_property_new), (gst_controlled_property_free),
1179         (gst_controller_new_valist),
1180         (gst_controller_remove_properties_valist),
1181         (gst_controller_sink_values), (_gst_controller_finalize):
1182         * libs/gst/controller/gst-controller.h:
1183         * libs/gst/controller/gst-helper.c:
1184         (gst_object_control_properties), (gst_object_uncontrol_properties),
1185         (gst_object_get_controller), (gst_object_set_controller),
1186         (gst_object_sink_values), (gst_object_get_value_arrays),
1187         (gst_object_get_value_array):
1188           more tests (and fixes) for the controller
1189           more docs for the controller
1190           integrated companies docs for the adapter 
1191
1192 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
1193
1194         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
1195         (GST_START_TEST), (fakesrc_suite):
1196           add tests for sizetype
1197
1198 2005-08-04  Andy Wingo  <wingo@pobox.com>
1199
1200         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
1201         fixes buffer_alloc proxying among other things.
1202
1203         * gst/base/gstbasetransform.c:
1204         * gst/base/gstbasetransform.h:
1205         Revert patch to gstbasetransform from 7-28 removing
1206         delay_configure.
1207
1208         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
1209         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
1210         Semantics changed, should return not the size of the output buffer
1211         but the byte size of a buffer with a given caps.
1212
1213         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
1214         debug object.
1215         (gst_base_transform_configure_caps): Don't set out_size here: (in,
1216         out) are not the pad caps until setcaps finishes.
1217         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
1218         not-in-place case as well. Deal with changing from in-place to
1219         not-in-place within calling pad_alloc_buffer. Still a bit
1220         concerned about the overhead here...
1221
1222 2005-08-03  Andy Wingo  <wingo@pobox.com>
1223
1224         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
1225         fixating is an error.
1226
1227 2005-08-04  Edward Hervey  <edward@fluendo.com>
1228
1229         * gst/base/gstadapter.h: 
1230         Added gst_adapter_get_type() to the header
1231
1232 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
1233
1234         * check/Makefile.am:
1235         * check/gst-libs/controller.c:
1236         * libs/gst/controller/gst-controller.c:
1237         (gst_controller_new_valist):
1238           added check test suite for the controller
1239         * gst/base/gstpushsrc.c:
1240           fixed a doc typo
1241
1242 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
1243
1244         * docs/gst/Makefile.am:
1245         * docs/gst/gstreamer-docs.sgml:
1246         * docs/gst/gstreamer-sections.txt:
1247         * docs/gst/gstreamer.types:
1248         * docs/gst/tmpl/gstfakesrc.sgml:
1249         * gst/base/README:
1250         * gst/base/gstbasesink.c:
1251         * gst/base/gstbasesink.h:
1252         * gst/base/gstbasesrc.c:
1253         * gst/base/gstbasesrc.h:
1254         * gst/base/gstbasetransform.c:
1255         * gst/base/gstpushsrc.c:
1256         * gst/base/gstpushsrc.h:
1257           add short/long description docs to base classes
1258           add pushsrc to the docs
1259           remove consolidated doc fragments
1260
1261 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
1262
1263         * configure.ac:
1264         * docs/libs/Makefile.am:
1265         * docs/libs/gstreamer-libs-docs.sgml:
1266         * docs/libs/gstreamer-libs-sections.txt:
1267         * docs/libs/gstreamer-libs.types:
1268         * examples/Makefile.am:
1269         * examples/controller/.cvsignore:
1270         * examples/controller/Makefile.am:
1271         * examples/controller/audio-example.c: (main):
1272         * libs/gst/Makefile.am:
1273         * libs/gst/controller/.cvsignore:
1274         * libs/gst/controller/Makefile.am:
1275         * libs/gst/controller/gst-controller.c:
1276         (on_object_controlled_property_changed), (gst_timed_value_compare),
1277         (gst_timed_value_find),
1278         (gst_controlled_property_set_interpolation_mode),
1279         (gst_controlled_property_new), (gst_controlled_property_free),
1280         (gst_controller_find_controlled_property),
1281         (gst_controller_new_valist), (gst_controller_new),
1282         (gst_controller_remove_properties_valist),
1283         (gst_controller_remove_properties), (gst_controller_set),
1284         (gst_controller_set_from_list), (gst_controller_unset),
1285         (gst_controller_get), (gst_controller_get_all),
1286         (gst_controller_sink_values), (gst_controller_get_value_arrays),
1287         (gst_controller_get_value_array),
1288         (gst_controller_set_interpolation_mode),
1289         (_gst_controller_finalize), (_gst_controller_init),
1290         (_gst_controller_class_init), (gst_controller_get_type):
1291         * libs/gst/controller/gst-controller.h:
1292         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
1293         (g_object_uncontrol_properties), (g_object_get_controller),
1294         (g_object_set_controller), (g_object_sink_values),
1295         (g_object_get_value_arrays), (g_object_get_value_array):
1296         * libs/gst/controller/gst-interpolation.c:
1297         (gst_controlled_property_find_timed_value_node),
1298         (interpolate_none_get), (interpolate_trigger_get),
1299         (interpolate_trigger_get_value_array):
1300         * libs/gst/controller/lib.c: (gst_controller_init):
1301         * pkgconfig/Makefile.am:
1302         * pkgconfig/gstreamer-control-uninstalled.pc.in:
1303         * pkgconfig/gstreamer-control.pc.in:
1304         * testsuite/Makefile.am:
1305         * testsuite/controller/.cvsignore:
1306         * testsuite/controller/Makefile.am:
1307         * testsuite/controller/interpolator.c: (main):
1308           added controller code
1309           removed dparam pc files
1310
1311 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
1312         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
1313         (gst_collectpads_stop):
1314           Broadcast the condition when shutting down, to make sure we wake all
1315           threads up. Shut down pads on finalize, for safety.
1316
1317 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
1318         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1319         (gst_base_transform_handle_buffer),
1320         (gst_base_transform_change_state):
1321           Handle PAUSED->READY->PAUSED transition after negotiation
1322           occurred already.
1323         * gst/gstmessage.c: (gst_message_init):
1324           Extra piece of debug for new messages.
1325
1326 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
1327
1328         * configure.ac:
1329         * docs/gst/tmpl/gstbasesrc.sgml:
1330         * docs/gst/tmpl/gstelement.sgml:
1331         * docs/gst/tmpl/gstevent.sgml:
1332         * docs/gst/tmpl/gstfakesrc.sgml:
1333         * docs/gst/tmpl/gstformat.sgml:
1334         * docs/gst/tmpl/gstghostpad.sgml:
1335         * docs/gst/tmpl/gstpad.sgml:
1336         * docs/gst/tmpl/gstquery.sgml:
1337         * docs/gst/tmpl/gststructure.sgml:
1338         * docs/gst/tmpl/gsttaglist.sgml:
1339         * docs/gst/tmpl/gstvalue.sgml:
1340         * docs/libs/gstreamer-libs-docs.sgml:
1341         * docs/libs/gstreamer-libs-sections.txt:
1342         * docs/libs/gstreamer-libs.types:
1343         * libs/gst/Makefile.am:
1344         * libs/gst/control/.cvsignore:
1345         * libs/gst/control/Makefile.am:
1346         * libs/gst/control/control.c:
1347         * libs/gst/control/control.h:
1348         * libs/gst/control/dparam.c:
1349         * libs/gst/control/dparam.h:
1350         * libs/gst/control/dparam_smooth.c:
1351         * libs/gst/control/dparam_smooth.h:
1352         * libs/gst/control/dparamcommon.h:
1353         * libs/gst/control/dparammanager.c:
1354         * libs/gst/control/dparammanager.h:
1355         * libs/gst/control/dplinearinterp.c:
1356         * libs/gst/control/dplinearinterp.h:
1357         * libs/gst/control/unitconvert.c:
1358         * libs/gst/control/unitconvert.h:
1359         * testsuite/Makefile.am:
1360         * testsuite/dynparams/.cvsignore:
1361         * testsuite/dynparams/Makefile.am:
1362         * testsuite/dynparams/dparamstest.c:
1363         * tools/Makefile.am:
1364         * tools/gst-inspect.c: (print_element_info), (main):
1365         * tools/gst-xmlinspect.c: (print_element_info), (main):
1366           deactivate and remove dparams (libgstcontrol)
1367
1368 2005-08-01  Tim-Philipp M??ller  <tim at centricular dot net>
1369
1370         * gst/elements/gsttypefindelement.c:
1371         (gst_type_find_element_have_type), (gst_type_find_element_init),
1372         (stop_typefinding), (gst_type_find_element_handle_event),
1373         (gst_type_find_element_chain), (gst_type_find_element_getrange):
1374         * gst/elements/gsttypefindelement.h:
1375           Set caps on all outgoing buffers, not just the first one.
1376
1377 2005-08-01  Tim-Philipp M??ller  <tim at centricular dot net>
1378
1379         * gst/elements/gsttypefindelement.c:
1380         (gst_type_find_element_have_type),
1381         (gst_type_find_element_check_set_buffer_caps),
1382         (gst_type_find_element_init), (stop_typefinding),
1383         (gst_type_find_element_handle_event),
1384         (gst_type_find_element_chain), (gst_type_find_element_getrange):
1385         * gst/elements/gsttypefindelement.h:
1386           Set caps on first outgoing buffer when we've found the type.
1387
1388 2005-08-01  Tim-Philipp M??ller  <tim at centricular dot net>
1389
1390         * docs/gst/gstreamer-docs.sgml:
1391         * docs/gst/gstreamer-sections.txt:
1392         * docs/gst/tmpl/gstscheduler.sgml:
1393         * docs/gst/tmpl/gstschedulerfactory.sgml:
1394           Remove some old cruft from docs.
1395
1396 2005-07-31  Tim-Philipp M??ller  <tim at centricular dot net>
1397
1398         * gst/gstpad.h:
1399           Fix inline docs for GstPadLinkReturn.
1400           
1401         * gst/gststructure.c: (gst_structure_has_name):
1402         * gst/gststructure.h:
1403         * docs/gst/gstreamer-sections.txt:
1404           New API: gst_structure_has_name().
1405
1406 2005-07-30  Tim-Philipp M??ller  <tim at centricular dot net>
1407
1408         * configure.ac:
1409           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
1410           and _LARGEFILE_SOURCE in config.h as required. Do not 
1411           export those flags in our .pc files any longer (#142209).
1412
1413           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
1414
1415         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
1416         (gst_file_sink_do_seek), (gst_file_sink_event),
1417         (gst_file_sink_get_current_offset), (gst_file_sink_render):
1418           Redo seek/tell calls with large file support in mind; add some
1419           debugging messages; add log message that tells us when large
1420           file support is unavailable or not enabled for some reason.
1421
1422         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
1423           Add log message that tells us when large file support 
1424           is unavailable or not enabled for some reason.
1425
1426 2005-07-29  Wim Taymans  <wim@fluendo.com>
1427
1428         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
1429         Added test for removing an element with ghostpad from a bin.
1430         Fixed test as current implementation does the right thing.
1431
1432         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
1433         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
1434         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
1435         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
1436         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
1437         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
1438         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
1439         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1440         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
1441         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
1442         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
1443         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
1444         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
1445         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
1446         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
1447         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
1448         * gst/gstghostpad.h:
1449         Clean up ghostpads, remove properties for internal stuff.
1450         Make threadsafe.
1451         Fix refcounting.
1452         Prepare for switching targets, not all use cases work yet.
1453
1454 2005-07-29  Wim Taymans  <wim@fluendo.com>
1455
1456         * docs/design/part-gstghostpad.txt:
1457         Small update.
1458
1459         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
1460         (gst_bin_remove_func):
1461         Unlinking pads while holding the bin LOCK is not a good
1462         idea.
1463
1464         * gst/gstpad.c: (gst_pad_class_init),
1465         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
1466         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
1467         No prob setting template after creating the pad.
1468
1469 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
1470
1471         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
1472         (gst_bus_peek), (gst_bus_source_dispatch),
1473         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
1474         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
1475           gst_bus_poll may be called from other threads. Handle
1476           this nicely by not making poll_data disappear off the
1477           stack once gst_bus_poll returns.
1478           gst_bus_peek now increments the refcount on the returned
1479           message.
1480
1481 2005-07-29  Wim Taymans  <wim@fluendo.com>
1482
1483         * docs/design/part-gstghostpad.txt:
1484         Overview of current GhostPad datastructures and use
1485         cases for changing the target.
1486
1487 2005-07-28  Wim Taymans  <wim@fluendo.com>
1488
1489         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1490         Added checks for hierarchy consistency whan adding linked
1491         elements to bins.
1492
1493         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1494         Added check to test element scheduling without bin/pipeline.
1495
1496         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1497         First add elements to bin, then link.
1498         
1499         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
1500         (gst_bin_remove_func):
1501         Unlink pads from elements added/removed from bin to maintain
1502         hierarchy consistency.
1503
1504 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1505
1506         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
1507         (gst_base_transform_handle_buffer):
1508         * gst/base/gstbasetransform.h:
1509           Remove broken delay_configure (fixes renegotiation of software
1510           scaling pipelines); remove some leftover printf()s.
1511
1512 2005-07-28  Wim Taymans  <wim@fluendo.com>
1513
1514         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
1515         Added some more tests for wrong hierarchy
1516
1517         * docs/design/part-overview.txt:
1518         Some updates.
1519
1520         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
1521         Cleanups.
1522
1523         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
1524         (gst_element_dispose):
1525         Some more cleanups.
1526
1527         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
1528         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
1529         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1530         (gst_pad_set_caps), (gst_pad_send_event):
1531         Check for correct hierarchy when linking pads. Moving to
1532         strict requirement for ghostpads when linking elements in
1533         different bins.
1534
1535         * gst/gstpad.h:
1536         Clean ups. Added WRONG_HIERARCHY return value.
1537
1538 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1539
1540         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1541           Better debug if no transform is possible.
1542
1543 2005-07-27  Wim Taymans  <wim@fluendo.com>
1544
1545         * docs/random/wtay/network-transp:
1546         Some old doc I had.
1547
1548 2005-07-27  Wim Taymans  <wim@fluendo.com>
1549
1550         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
1551         (gst_dp_event_from_packet):
1552         Fix serialization of seek events.
1553
1554 2005-07-27  Wim Taymans  <wim@fluendo.com>
1555
1556         * check/gst-libs/gdp.c: (GST_START_TEST):
1557         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
1558         Fix compilation and fix event serialization.
1559
1560 2005-07-27  Wim Taymans  <wim@fluendo.com>
1561
1562         * CHANGES-0.9:
1563         * docs/design/part-TODO.txt:
1564         * docs/design/part-events.txt:
1565         Some docs updates
1566
1567         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1568         (gst_base_sink_event), (gst_base_sink_do_sync),
1569         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
1570         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1571         (gst_base_src_do_seek), (gst_base_src_event_handler),
1572         (gst_base_src_loop):
1573         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
1574         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1575         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1576         (gst_base_transform_event), (gst_base_transform_handle_buffer),
1577         (gst_base_transform_set_passthrough),
1578         (gst_base_transform_is_passthrough):
1579         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
1580         * gst/elements/gstfilesink.c: (gst_file_sink_event):
1581         Event updates.
1582
1583         * gst/gstbuffer.h:
1584         Use faster casts.
1585
1586         * gst/gstelement.c: (gst_element_seek):
1587         * gst/gstelement.h:
1588         Update gst_element_seek.
1589
1590         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
1591         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
1592         (gst_event_new_flush_start), (gst_event_new_flush_stop),
1593         (gst_event_new_eos), (gst_event_new_newsegment),
1594         (gst_event_parse_newsegment), (gst_event_new_tag),
1595         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
1596         (gst_event_parse_qos), (gst_event_new_seek),
1597         (gst_event_parse_seek), (gst_event_new_navigation):
1598         * gst/gstevent.h:
1599         Make GstEvent use GstStructure. Add parsing code, make sure the
1600         API is sufficiently generic.
1601         Mark possible directions of events and serialization.
1602
1603         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
1604         (_gst_message_copy), (gst_message_new_segment_start),
1605         (gst_message_new_segment_done), (gst_message_new_custom),
1606         (gst_message_parse_segment_start),
1607         (gst_message_parse_segment_done):
1608         Small cleanups.
1609
1610         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1611         (gst_pad_set_caps), (gst_pad_send_event):
1612         Update for new events. 
1613         Catch events sent in wrong directions.
1614
1615         * gst/gstqueue.c: (gst_queue_link_src),
1616         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
1617         (gst_queue_handle_src_query):
1618         Event updates.
1619
1620         * gst/gsttag.c:
1621         * gst/gsttag.h:
1622         Remove event code from this file.
1623
1624         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
1625         (gst_dp_event_from_packet):
1626         Event updates.
1627
1628 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1629
1630         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
1631         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1632         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
1633           Make debugging actually useful.
1634
1635 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1636
1637         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
1638         (gst_pad_fixate_caps):
1639           Implement default fixation once again, so that gst_pad_fixate()
1640           actually does anything at all. This probably needs to be some
1641           sort of a last resort, and use profile-based fixation first, but
1642           since that doesn't exist yet, this is the best we have. Fixes
1643           visualization in Totem.
1644
1645 2005-07-22  Wim Taymans  <wim@fluendo.com>
1646
1647         * docs/design/part-events.txt:
1648         Small update.
1649
1650         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1651         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
1652         (gst_base_sink_activate_pull):
1653         Some more comments.
1654
1655         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
1656         (gst_fake_src_create):
1657         Fix handoff marshall.
1658
1659         * gst/elements/gstidentity.c: (gst_identity_class_init),
1660         (gst_identity_transform_ip):
1661         We're a real inplace element.
1662
1663         * gst/gstbus.c: (gst_bus_post):
1664         Added some comments.
1665
1666         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
1667         * tests/muxing/case1.c: (main):
1668         * tests/sched/dynamic-pipeline.c: (main):
1669         * tests/sched/interrupt1.c: (main):
1670         * tests/sched/interrupt2.c: (main):
1671         * tests/sched/interrupt3.c: (main):
1672         * tests/sched/runxml.c: (main):
1673         * tests/sched/sched-stress.c: (main):
1674         * tests/seeking/seeking1.c: (event_received), (main):
1675         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
1676         (main):
1677         * tests/threadstate/threadstate3.c: (main):
1678         * tests/threadstate/threadstate4.c: (main):
1679         * tests/threadstate/threadstate5.c: (main):
1680         Fix the tests.
1681
1682 2005-07-21  Wim Taymans  <wim@fluendo.com>
1683
1684         * docs/design/part-seeking.txt:
1685         Some small additions.
1686
1687         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1688         (gst_base_sink_get_times), (gst_base_sink_do_sync),
1689         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
1690         * gst/base/gstbasesink.h:
1691         discont values are gint64, handle the math correctly.
1692
1693         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1694         Make the basesrc report error if the source pad is not linked.
1695
1696         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
1697         (gst_queue_loop), (gst_queue_handle_src_query),
1698         (gst_queue_src_activate_push):
1699         Make queue collect data even if the srcpad is not linked.
1700         Start pushing out data as soon as it is linked.
1701
1702         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
1703         * gst/gstutils.h:
1704         Added gst_flow_get_name() to ease error reporting.
1705
1706 2005-07-20  Wim Taymans  <wim@fluendo.com>
1707
1708         * gst/gstmessage.c: (gst_message_new_segment_start),
1709         (gst_message_new_segment_done), (gst_message_parse_segment_start),
1710         (gst_message_parse_segment_done):
1711         * gst/gstmessage.h:
1712         Added a bunch of messages for advanced seeking.
1713
1714         * gst/parse/grammar.y:
1715         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
1716         (gst_dpman_state_changed):
1717         Fix some new-pad -> pad-added signals
1718
1719 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1720
1721         * docs/manual/appendix-porting.xml:
1722         * docs/pwg/appendix-porting.xml:
1723           Document new-pad/state-change signal renames and the FixedList
1724           type rename.
1725
1726 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1727
1728         * docs/manual/advanced-autoplugging.xml:
1729         * docs/manual/basics-helloworld.xml:
1730         * docs/manual/basics-pads.xml:
1731         * docs/random/ds/0.9-suggested-changes:
1732         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
1733         * gst/gstelement.h:
1734         * gst/gstevent.h:
1735         * gst/gstformat.h:
1736         * gst/gstquery.h:
1737         * gst/gststructure.c: (gst_structure_value_get_generic_type),
1738         (gst_structure_parse_array), (gst_structure_parse_value):
1739         * gst/gstvalue.c: (gst_type_is_fixed),
1740         (gst_value_list_prepend_value), (gst_value_list_append_value),
1741         (gst_value_list_get_size), (gst_value_list_get_value),
1742         (gst_value_transform_array_string), (gst_value_serialize_array),
1743         (gst_value_deserialize_array), (gst_value_intersect_array),
1744         (gst_value_is_fixed), (_gst_value_initialize):
1745         * gst/gstvalue.h:
1746           GstElement::new-pad -> pad-added, GstElement::state-change ->
1747           state-changed, GstValueFixedList -> GstValueArray, add format and
1748           flags as their own arguments in gst_element_seek() (should improve
1749           "bindeability"), remove function generators since they don't work
1750           under a whole bunch of compilers (they were deprecated already
1751           anyway).
1752
1753 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1754
1755         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
1756         (_gst_debug_register_funcptr):
1757         * gst/gstinfo.h:
1758           Fix illegal cast on some platforms (#309253).
1759
1760 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1761
1762         * gst/gstmessage.c: (gst_message_new_custom):
1763         * gst/gstmessage.h:
1764           Add _new_custom, make _new_application a macro to _new_custom.
1765
1766 2005-07-20  Wim Taymans  <wim@fluendo.com>
1767
1768         * gst/base/gstbasesrc.c: (gst_base_src_init),
1769         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
1770         * gst/base/gstbasesrc.h:
1771         Add a gboolean to decide when to push out a discont.
1772
1773         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1774         (gst_queue_loop), (gst_queue_handle_src_query),
1775         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
1776         (gst_queue_set_property), (gst_queue_get_property):
1777         Some cleanups.
1778
1779         * tests/threadstate/threadstate1.c: (main):
1780         Make a thread test compile and run... very silly..
1781
1782
1783 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1784
1785         * docs/manual/appendix-porting.xml:
1786           Mention removal of libgstgconf-0.9.la and existence of gconf
1787           elements.
1788
1789 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1790
1791         * docs/pwg/advanced-clock.xml:
1792         * docs/pwg/appendix-porting.xml:
1793         * docs/pwg/intro-preface.xml:
1794         * docs/pwg/other-base.xml:
1795         * docs/pwg/other-manager.xml:
1796         * docs/pwg/other-nton.xml:
1797         * docs/pwg/other-ntoone.xml:
1798         * docs/pwg/other-oneton.xml:
1799         * docs/pwg/pwg.xml:
1800           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
1801           demuxer), remove n-to-n (was never written), fix some code examples
1802           and links and update the porting section to include all this.
1803
1804 2005-07-19  Wim Taymans  <wim@fluendo.com>
1805
1806         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
1807         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
1808         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
1809         (gst_queue_src_activate_push), (gst_queue_change_state),
1810         (gst_queue_get_property):
1811         * gst/gstqueue.h:
1812         Propagate GstFlowReturn more intelligently upstream and output
1813         an ERROR/EOS when streaming stopped due to fatal error.
1814
1815 2005-07-19  Wim Taymans  <wim@fluendo.com>
1816
1817         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1818         Don't block forever for the state change to complete, the
1819         pipeline already did with a sensible timeout.
1820
1821 2005-07-19  Wim Taymans  <wim@fluendo.com>
1822
1823         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
1824         Make sure we never call the create function is we
1825         got deactivated.
1826
1827 2005-07-19  Andy Wingo  <wingo@pobox.com>
1828
1829         * gst/parse/parse.l: Attempt to solve bug #172815.
1830
1831 2005-07-19  Wim Taymans  <wim@fluendo.com>
1832
1833         * docs/design/part-clocks.txt:
1834         * docs/design/part-events.txt:
1835         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
1836         Small docs updates.
1837         Only update the seeking values when we are not
1838         busy streaming.
1839
1840 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1841
1842         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1843           Oops, ignore the result of gst_pad_push_event here.
1844
1845 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1846
1847         * gst/base/gstbasesrc.c: (gst_base_src_loop),
1848         (gst_base_src_activate_push):
1849           Send discont event from the loop function, as pads
1850           aren't activated yet in the activate_push handler.
1851
1852         * gst/gstbin.c: (bin_bus_handler):
1853           Don't leak element name.
1854
1855 2005-07-18  Andy Wingo  <wingo@pobox.com>
1856
1857         * configure.ac: Use AS_LIBTOOL_TAGS.
1858
1859 2005-07-18  Wim Taymans  <wim@fluendo.com>
1860
1861         * docs/gst/gstreamer.types:
1862         Remove deleted types.
1863
1864 2005-07-18  Wim Taymans  <wim@fluendo.com>
1865
1866         * check/elements/gstfakesrc.c: (GST_START_TEST):
1867         * configure.ac:
1868         * gst/Makefile.am:
1869         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
1870         (init_popt_callback):
1871         * gst/gst.h:
1872         * gst/gst_private.h:
1873         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
1874         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
1875         * gst/gstbin.h:
1876         * gst/gstbus.h:
1877         * gst/gstconfig.h.in:
1878         * gst/gstelement.c: (gst_element_class_init),
1879         (gst_element_set_base_time), (gst_element_get_base_time),
1880         (iterator_fold_with_resync), (gst_element_change_state),
1881         (gst_element_dispose), (gst_element_get_bus):
1882         * gst/gstelement.h:
1883         * gst/gstelementfactory.h:
1884         * gst/gsterror.c: (_gst_core_errors_init):
1885         * gst/gsterror.h:
1886         * gst/gstevent.h:
1887         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1888         * gst/gstindex.c:
1889         * gst/gstinfo.c: (_gst_debug_init):
1890         * gst/gstmessage.c: (_gst_message_copy):
1891         * gst/gstmessage.h:
1892         * gst/gstminiobject.h:
1893         * gst/gstobject.c:
1894         * gst/gstobject.h:
1895         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1896         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
1897         * gst/gstpad.h:
1898         * gst/gstparse.h:
1899         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1900         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1901         (gst_pipeline_get_last_stream_time):
1902         * gst/gstpipeline.h:
1903         * gst/gstpluginfeature.h:
1904         * gst/gstquery.h:
1905         * gst/gstscheduler.c:
1906         * gst/gstscheduler.h:
1907         * gst/gststructure.h:
1908         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
1909         (gst_task_finalize), (gst_task_func), (gst_task_create),
1910         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
1911         (gst_task_stop), (gst_task_pause):
1912         * gst/gsttask.h:
1913         * gst/gsttypefind.h:
1914         * gst/gsttypes.h:
1915         * gst/registries/gstlibxmlregistry.c: (load_feature),
1916         (gst_xml_registry_load), (gst_xml_registry_save_feature):
1917         * gst/registries/gstxmlregistry.c:
1918         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
1919         * gst/schedulers/threadscheduler.c:
1920         * libs/gst/control/dparammanager.h:
1921         * tools/gst-inspect.c: (print_element_list),
1922         (print_plugin_features), (print_element_features):
1923         * tools/gst-xmlinspect.c: (print_element_list),
1924         (print_plugin_info), (main):
1925         Removed plugable schedulers.
1926         Removed Scheduler/Manager from elements.
1927         Removed gsttypes.h, rearranged includes.
1928         Removed dependency pad<->element, element<>pipeline, and
1929         various others,  fix includes.
1930         implement gst_pad_get_parent() with gst_object_get_parent()
1931         Make GstTask sefcontained.
1932         Fix _get_state() on GstBin, it did not return ASYNC with a 0
1933         timeout.
1934         Fix endless loop in iterator_fold_with_resync.
1935
1936
1937 2005-07-18  Wim Taymans  <wim@fluendo.com>
1938
1939         * gst/Makefile.am:
1940         * gst/gstarch.h:
1941         Remove old file.
1942
1943 2005-07-18  Wim Taymans  <wim@fluendo.com>
1944
1945         * gst/Makefile.am:
1946         No more cothreads.h
1947
1948 2005-07-18  Wim Taymans  <wim@fluendo.com>
1949
1950         * gst/cothreads.c:
1951         * gst/cothreads.h:
1952         Let's remove these.
1953
1954 2005-07-18  Wim Taymans  <wim@fluendo.com>
1955
1956         * docs/design/part-dynamic.txt:
1957         * docs/design/part-events.txt:
1958         * docs/design/part-seeking.txt:
1959         Some more docs in the works.
1960
1961         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
1962         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
1963         (gst_base_transform_setcaps), (gst_base_transform_get_size),
1964         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
1965         (gst_base_transform_handle_buffer),
1966         (gst_base_transform_sink_activate_push),
1967         (gst_base_transform_src_activate_pull),
1968         (gst_base_transform_set_passthrough),
1969         (gst_base_transform_is_passthrough):
1970         Refcounting fixes.
1971
1972         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
1973         Cleanups.
1974
1975         * gst/gstevent.c: (gst_event_finalize):
1976         Set SRC to NULL.
1977
1978         * gst/gstutils.c: (gst_element_unlink),
1979         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
1980         (gst_pad_proxy_setcaps):
1981         * gst/gstutils.h:
1982         Add _get_parent_element() to get a pads parent as an element.
1983
1984 2005-07-18  Wim Taymans  <wim@fluendo.com>
1985
1986         * check/gst/gstbin.c: (GST_START_TEST):
1987         Remove bogus test.
1988
1989 2005-07-18  Wim Taymans  <wim@fluendo.com>
1990
1991         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1992         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1993         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1994         (gst_base_sink_event), (gst_base_sink_do_sync),
1995         (gst_base_sink_chain), (gst_base_sink_loop),
1996         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
1997         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
1998         Refcounting fixes.
1999         Fix logic for returning ASYNC when not prerolled.
2000
2001 2005-07-18  Wim Taymans  <wim@fluendo.com>
2002
2003         * gst/gstqueue.c: (gst_queue_handle_sink_event):
2004         Fix nasty refcount bug.
2005
2006 2005-07-16 Philippe Khalaf <burger@speedy.org>
2007         * gst/elements/gstfdsrc.c:
2008         * gst/elements/gstfdsrc.h:
2009         * gst/elements/gstelements.c:
2010         * gst/elements/Makefile.am:
2011         Ported fdsrc to 0.9.
2012
2013 2005-07-16  Wim Taymans  <wim@fluendo.com>
2014
2015         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2016         (gst_base_sink_do_sync):
2017         Fix compile error.
2018
2019 2005-07-16  Wim Taymans  <wim@fluendo.com>
2020
2021         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2022         (gst_base_sink_event), (gst_base_sink_get_times),
2023         (gst_base_sink_do_sync), (gst_base_sink_change_state):
2024         * gst/base/gstbasesink.h:
2025         Store and use discont values when syncing buffers as described
2026         in design docs.
2027         
2028         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
2029         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
2030         (gst_base_src_activate_push):
2031         Push discont event when starting.
2032
2033         * gst/elements/gstidentity.c: (gst_identity_transform):
2034         Small cleanups.
2035
2036         * gst/gstbin.c: (gst_bin_change_state):
2037         Small cleanups in base_time  distribution.
2038
2039         * gst/gstelement.c: (gst_element_set_base_time),
2040         (gst_element_get_base_time), (gst_element_change_state):
2041         * gst/gstelement.h:
2042         Added methods for the base_time of the element.
2043         Some MT fixes.
2044
2045         * gst/gstpipeline.c: (gst_pipeline_send_event),
2046         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
2047         (gst_pipeline_get_last_stream_time):
2048         * gst/gstpipeline.h:
2049         MT fixes.
2050         Handle seeking as described in design doc, remove stream_time
2051         hack.
2052         Cleanups clock and stream_time selection code. Added accessors
2053         for the stream_time.
2054         
2055
2056 2005-07-16  Andy Wingo  <wingo@pobox.com>
2057
2058         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
2059         (#305291).
2060
2061 2005-07-16  Wim Taymans  <wim@fluendo.com>
2062
2063         * check/gst/gstbin.c: (GST_START_TEST):
2064         Make elements silent as the deep_notify refs the
2065         parent, which might make the test fail.
2066
2067         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
2068         Don't hold the lock for too long.
2069
2070 2005-07-16  Tim-Philipp M??ller  <tim at centricular dot net>
2071
2072         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
2073           Don't unref the caps we passed to gst_caps_make_writable() after
2074           passing them. gst_caps_make_writable() will do that for us.
2075
2076 2005-07-15  Andy Wingo  <wingo@pobox.com>
2077
2078         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
2079         (#157311).
2080
2081         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
2082         own marshalling function for the handoff signal. Properly type the
2083         buffer as a buffer. Fixes some warnings. Should do a more general
2084         solution.
2085         (gst_identity_class_init): Plug into the right marshaller.
2086
2087 2005-07-15  Wim Taymans  <wim@fluendo.com>
2088
2089         * docs/design/part-TODO.txt:
2090         * docs/design/part-clocks.txt:
2091         * docs/design/part-element-sink.txt:
2092         * docs/design/part-events.txt:
2093         * docs/design/part-gstpipeline.txt:
2094         Updated docs, mostly DISCONT related.
2095
2096 2005-07-15  Tim-Philipp M??ller  <tim at centricular dot net>
2097
2098         * docs/pwg/building-pads.xml:
2099           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
2100
2101 2005-07-15  Andy Wingo  <wingo@pobox.com>
2102
2103         * tools/gst-typefind.c: Update, add copyright block.
2104
2105         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
2106         Normalize and truncate caps before fixation.
2107
2108         * gst/gstcaps.h:
2109         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
2110         discards all but the first structure from its argument.
2111
2112 2005-07-15  Wim Taymans  <wim@fluendo.com>
2113
2114         * gst/base/gstbasetransform.c: (gst_base_transform_init),
2115         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
2116         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
2117         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
2118         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
2119         (gst_base_transform_chain), (gst_base_transform_change_state),
2120         (gst_base_transform_set_passthrough),
2121         (gst_base_transform_is_passthrough):
2122         * gst/base/gstbasetransform.h:
2123         Make passthrough work using the bufferpools.
2124         Changed API a bit, subclasses have to write into a buffer
2125         provided by the base class.
2126         More debug info in nego functions.
2127         
2128         * gst/elements/gstidentity.c: (gst_identity_init),
2129         (gst_identity_transform):
2130         Port to new base class.
2131
2132 2005-07-15  Wim Taymans  <wim@fluendo.com>
2133
2134         * gst/gstmessage.c: (gst_message_new_state_changed):
2135         * tools/gst-launch.c: (event_loop), (main):
2136         Totally dump messages in -launch with the -m option.
2137         Fix message name for State messages,
2138
2139 2005-07-14  Wim Taymans  <wim@fluendo.com>
2140
2141         * gst/base/gstbasesrc.c: (gst_base_src_loop):
2142         Post error messages on errors.
2143
2144 2005-07-14  Wim Taymans  <wim@fluendo.com>
2145
2146         * gst/gstcaps.c: (gst_caps_do_simplify):
2147         Remove debug info.
2148
2149         * gst/gsterror.h:
2150         Define error for stream stopped.
2151
2152         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2153         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
2154         Do proper return values.
2155
2156         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
2157         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
2158         (gst_pad_get_range):
2159         Better return values.
2160
2161         * gst/gstpad.h:
2162         Reorganise return values, add macro to check for fatal errors.
2163
2164         * gst/gstqueue.c: (gst_queue_chain):
2165         Return proper GstFlowReturn values,
2166
2167 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
2168
2169         * docs/gst/gstreamer-sections.txt:
2170         * docs/gst/gstreamer.types:
2171         * docs/gst/tmpl/gst.sgml:
2172         * docs/gst/tmpl/gstbasesink.sgml:
2173         * docs/gst/tmpl/gstbasesrc.sgml:
2174         * docs/gst/tmpl/gstbasetransform.sgml:
2175         * docs/gst/tmpl/gstbin.sgml:
2176         * docs/gst/tmpl/gstbuffer.sgml:
2177         * docs/gst/tmpl/gstcaps.sgml:
2178         * docs/gst/tmpl/gstclock.sgml:
2179         * docs/gst/tmpl/gstcompat.sgml:
2180         * docs/gst/tmpl/gstconfig.sgml:
2181         * docs/gst/tmpl/gstelement.sgml:
2182         * docs/gst/tmpl/gstelementdetails.sgml:
2183         * docs/gst/tmpl/gstelementfactory.sgml:
2184         * docs/gst/tmpl/gstenumtypes.sgml:
2185         * docs/gst/tmpl/gsterror.sgml:
2186         * docs/gst/tmpl/gstevent.sgml:
2187         * docs/gst/tmpl/gstfakesink.sgml:
2188         * docs/gst/tmpl/gstfakesrc.sgml:
2189         * docs/gst/tmpl/gstfilesink.sgml:
2190         * docs/gst/tmpl/gstfilesrc.sgml:
2191         * docs/gst/tmpl/gstfilter.sgml:
2192         * docs/gst/tmpl/gstformat.sgml:
2193         * docs/gst/tmpl/gstghostpad.sgml:
2194         * docs/gst/tmpl/gstimplementsinterface.sgml:
2195         * docs/gst/tmpl/gstindex.sgml:
2196         * docs/gst/tmpl/gstindexfactory.sgml:
2197         * docs/gst/tmpl/gstinfo.sgml:
2198         * docs/gst/tmpl/gstiterator.sgml:
2199         * docs/gst/tmpl/gstmacros.sgml:
2200         * docs/gst/tmpl/gstmemchunk.sgml:
2201         * docs/gst/tmpl/gstminiobject.sgml:
2202         * docs/gst/tmpl/gstobject.sgml:
2203         * docs/gst/tmpl/gstpad.sgml:
2204         * docs/gst/tmpl/gstpadtemplate.sgml:
2205         * docs/gst/tmpl/gstparse.sgml:
2206         * docs/gst/tmpl/gstpipeline.sgml:
2207         * docs/gst/tmpl/gstplugin.sgml:
2208         * docs/gst/tmpl/gstpluginfeature.sgml:
2209         * docs/gst/tmpl/gstquery.sgml:
2210         * docs/gst/tmpl/gstqueue.sgml:
2211         * docs/gst/tmpl/gstregistry.sgml:
2212         * docs/gst/tmpl/gstregistrypool.sgml:
2213         * docs/gst/tmpl/gstscheduler.sgml:
2214         * docs/gst/tmpl/gstschedulerfactory.sgml:
2215         * docs/gst/tmpl/gststructure.sgml:
2216         * docs/gst/tmpl/gstsystemclock.sgml:
2217         * docs/gst/tmpl/gsttaglist.sgml:
2218         * docs/gst/tmpl/gsttagsetter.sgml:
2219         * docs/gst/tmpl/gsttrace.sgml:
2220         * docs/gst/tmpl/gsttrashstack.sgml:
2221         * docs/gst/tmpl/gsttypefind.sgml:
2222         * docs/gst/tmpl/gsttypefindfactory.sgml:
2223         * docs/gst/tmpl/gsttypes.sgml:
2224         * docs/gst/tmpl/gsturihandler.sgml:
2225         * docs/gst/tmpl/gsturitype.sgml:
2226         * docs/gst/tmpl/gstutils.sgml:
2227         * docs/gst/tmpl/gstvalue.sgml:
2228         * docs/gst/tmpl/gstversion.sgml:
2229         * docs/gst/tmpl/gstxml.sgml:
2230         * docs/libs/tmpl/gstcontrol.sgml:
2231         * docs/libs/tmpl/gstdataprotocol.sgml:
2232         * docs/libs/tmpl/gstdparam.sgml:
2233         * docs/libs/tmpl/gstdplinint.sgml:
2234         * docs/libs/tmpl/gstdpman.sgml:
2235         * docs/libs/tmpl/gstdpsmooth.sgml:
2236         * docs/libs/tmpl/gstgetbits.sgml:
2237         * docs/libs/tmpl/gstunitconvert.sgml:
2238         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
2239         (gst_push_src_base_init), (gst_push_src_class_init),
2240         (gst_push_src_init), (gst_push_src_create):
2241         * gst/base/gstpushsrc.h:
2242         * gst/elements/gstelements.c:
2243         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
2244         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
2245         (gst_fake_sink_init), (gst_fake_sink_set_property),
2246         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
2247         (gst_fake_sink_event), (gst_fake_sink_preroll),
2248         (gst_fake_sink_render), (gst_fake_sink_change_state):
2249         * gst/elements/gstfakesink.h:
2250         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
2251         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
2252         (gst_fake_src_base_init), (gst_fake_src_class_init),
2253         (gst_fake_src_init), (gst_fake_src_event_handler),
2254         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
2255         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
2256         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
2257         (gst_fake_src_create_buffer), (gst_fake_src_create),
2258         (gst_fake_src_start), (gst_fake_src_stop):
2259         * gst/elements/gstfakesrc.h:
2260         * gst/elements/gstfilesink.c: (_do_init),
2261         (gst_file_sink_base_init), (gst_file_sink_class_init),
2262         (gst_file_sink_init), (gst_file_sink_dispose),
2263         (gst_file_sink_set_location), (gst_file_sink_set_property),
2264         (gst_file_sink_get_property), (gst_file_sink_open_file),
2265         (gst_file_sink_close_file), (gst_file_sink_query),
2266         (gst_file_sink_event), (gst_file_sink_render),
2267         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
2268         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
2269         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
2270         * gst/elements/gstfilesink.h:
2271         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
2272         (gst_file_src_class_init), (gst_file_src_init),
2273         (gst_file_src_finalize), (gst_file_src_set_location),
2274         (gst_file_src_set_property), (gst_file_src_get_property),
2275         (gst_file_src_map_region), (gst_file_src_map_small_region),
2276         (gst_file_src_create_mmap), (gst_file_src_create_read),
2277         (gst_file_src_create), (gst_file_src_is_seekable),
2278         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
2279         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
2280         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
2281         (gst_file_src_uri_handler_init):
2282         * gst/elements/gstfilesrc.h:
2283           more autistic cleanliness in functions/names/defines
2284
2285 2005-07-13  Andy Wingo  <wingo@pobox.com>
2286
2287         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
2288         source couldn't negotiate.
2289
2290         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
2291         connections again.
2292
2293         * gst/gstutils.h:
2294         * gst/gstutils.c (gst_element_link_pads_filtered): New old
2295         function. I am channeling Hades. Put your boots on suckers!!!
2296
2297 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
2298
2299         * testsuite/caps/Makefile.am:
2300         * testsuite/caps/value_compare.c:
2301         * testsuite/caps/value_intersect.c:
2302         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
2303           move two testsuite apps over to the check dir
2304
2305 2005-07-12  Wim Taymans  <wim@fluendo.com>
2306
2307         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
2308         Added more debug info in the negotiate process.
2309
2310         * gst/gstmessage.h:
2311         Prepare for segment playback.
2312
2313         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
2314         Better debugging.
2315
2316         * gst/gstutils.c:
2317         Some more docs.
2318
2319         * tools/gst-launch.c: (main):
2320         NULL pipeline on errors.
2321
2322 2005-07-12  Andy Wingo  <wingo@pobox.com>
2323
2324         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
2325         not it comes from a malloc region. Make sure our copy gets freed.
2326
2327 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2328
2329         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
2330         * check/gst/gstmessage.c: (GST_START_TEST):
2331         * check/gst/gststructure.c: (GST_START_TEST),
2332         (gst_structure_suite), (main):
2333           more testing
2334         * gst/gstelement.c: (gst_element_message_full):
2335           clean up GError and debug string now that they get copied
2336         * gst/gstmessage.c: (gst_message_new_error),
2337         (gst_message_new_warning), (gst_message_parse_error),
2338         (gst_message_parse_warning):
2339           use GST_TYPE_G_ERROR for structure_new, and take copies of
2340           arguments, so that we don't mess up refcounting
2341
2342 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2343
2344         * check/Makefile.am:
2345           add per-test valgrind targets
2346         * check/gst-libs/gdp.c: (GST_START_TEST),
2347         (gst_data_protocol_suite), (main):
2348           clean up
2349
2350 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2351
2352         * check/Makefile.am:
2353           instate more valgrindable tests
2354         * check/elements/gstfakesrc.c: (chain_func), (event_func),
2355         (GST_START_TEST), (fakesrc_suite):
2356         * check/gst/gstpad.c: (GST_START_TEST):
2357         * check/gst/gststructure.c: (GST_START_TEST):
2358           fix test leaks
2359         * docs/gst/tmpl/gstminiobject.sgml:
2360         * gst/gstpad.c: (gst_pad_finalize):
2361           fix the static mutex leak
2362
2363 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2364
2365         * check/Makefile.am:
2366           add two more tests for valgrinding
2367         * check/gst/gstvalue.c: (GST_START_TEST):
2368           test refcount of deserialized buffer, found a leak
2369         * docs/gst/gstreamer-docs.sgml:
2370         * docs/gst/gstreamer-sections.txt:
2371         * docs/gst/gstreamer.types:
2372         * docs/gst/tmpl/gstminiobject.sgml:
2373           add miniobject to docs
2374         * gst/gstminiobject.c:
2375           add some docs
2376         * gst/gstvalue.c: (gst_value_deserialize_buffer),
2377         (gst_string_unwrap):
2378           fix a hard-to-find invalid write for one of the tests
2379           fix a leak for deserialized buffers
2380
2381 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2382
2383         * docs/pwg/advanced-events.xml:
2384         * docs/pwg/advanced-request.xml:
2385         * docs/pwg/advanced-scheduling.xml:
2386         * docs/pwg/appendix-porting.xml:
2387         * docs/pwg/building-boiler.xml:
2388         * docs/pwg/intro-preface.xml:
2389         * docs/pwg/other-ntoone.xml:
2390           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
2391           of example code and explanation for pad activation, loop() and
2392           getrange() functions and a bit more. Remove old comments pointing
2393           to loop-functions.
2394         * examples/pwg/Makefile.am:
2395           Add loop/getrange examples.
2396
2397 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2398
2399         * configure.ac:
2400           check for valgrind binary + some fixes
2401         * check/gst.supp:
2402           valgrind suppressions for the tests
2403         * check/Makefile.am:
2404           add a valgrind: target that valgrinds the unit tests
2405         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
2406         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
2407         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
2408         * check/gst/gstghostpad.c:
2409           added some cleanup
2410         * check/gst/gstdata.c:
2411           removed
2412         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
2413         (thread_unref), (gst_mini_object_suite), (main):
2414           added
2415         * gst/gst.c: (gst_deinit):
2416         * gst/gst.h:
2417           add a method to clean up.
2418         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2419         (gst_system_clock_obtain):
2420           allow for disposing the system clock.
2421         * tools/gst-launch.c: (main):
2422           deinit
2423
2424 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2425
2426         * docs/gst/tmpl/gstbasesrc.sgml:
2427         * docs/gst/tmpl/gstfakesrc.sgml:
2428         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
2429         (gst_base_src_init), (gst_base_src_set_property),
2430         (gst_base_src_get_property), (gst_base_src_get_range),
2431         (gst_base_src_start):
2432         * gst/base/gstbasesrc.h:
2433           add num-buffers property
2434         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2435         (gst_fakesrc_init), (gst_fakesrc_set_property),
2436         (gst_fakesrc_get_property), (gst_fakesrc_create),
2437         (gst_fakesrc_start):
2438           remove num-buffers property
2439
2440 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2441
2442         * docs/gst/gstreamer-sections.txt:
2443         * docs/gst/tmpl/gstbasesink.sgml:
2444         * docs/gst/tmpl/gstbasesrc.sgml:
2445         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
2446         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
2447         (gst_base_sink_finalize), (gst_base_sink_set_clock),
2448         (gst_base_sink_set_property), (gst_base_sink_get_property),
2449         (gst_base_sink_handle_object), (gst_base_sink_event),
2450         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
2451         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
2452         (gst_base_sink_loop), (gst_base_sink_deactivate),
2453         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
2454         (gst_base_sink_change_state):
2455         * gst/base/gstbasesink.h:
2456         * gst/base/gstbasesrc.h:
2457         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
2458         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
2459         (gst_filesink_init):
2460           more macro splitting
2461
2462 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2463
2464         * gst/gstelement.c: (gst_element_get_bus):
2465           add debug
2466         * tools/gst-launch.c: (check_intr), (event_loop):
2467           fix bus leaks
2468
2469 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2470
2471         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
2472           fix a caps leak
2473
2474 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2475
2476         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
2477         (gst_base_src_finalize):
2478           add finalize method and clean up properly
2479         * gst/gstpipeline.c: (gst_pipeline_dispose):
2480           add debug
2481
2482 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2483
2484         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
2485         (gst_bin_suite):
2486           add more things to check
2487         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
2488         * gst/gstelement.c:
2489           more debug
2490
2491 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2492
2493         * check/elements/gstfakesrc.c: (chain_func), (event_func),
2494         (GST_START_TEST), (fakesrc_suite):
2495         * check/gst-libs/gdp.c: (GST_START_TEST):
2496         * check/gst/gst.c: (GST_START_TEST):
2497         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
2498         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
2499         * check/gst/gstbus.c: (GST_START_TEST):
2500         * check/gst/gstcaps.c: (GST_START_TEST):
2501         * check/gst/gstdata.c: (GST_START_TEST):
2502         * check/gst/gstelement.c: (GST_START_TEST):
2503         * check/gst/gstghostpad.c: (GST_START_TEST):
2504         * check/gst/gstiterator.c: (GST_START_TEST):
2505         * check/gst/gstmessage.c: (GST_START_TEST):
2506         * check/gst/gstobject.c: (GST_START_TEST):
2507         * check/gst/gstpad.c: (GST_START_TEST):
2508         * check/gst/gststructure.c: (GST_START_TEST):
2509         * check/gst/gstsystemclock.c: (GST_START_TEST),
2510         (gst_systemclock_suite):
2511         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
2512         * check/gst/gstvalue.c: (GST_START_TEST):
2513         * check/pipelines/cleanup.c: (GST_START_TEST):
2514         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
2515         * check/states/sinks.c: (GST_START_TEST):
2516         * check/gstcheck.c: (gst_check_init):
2517         * check/gstcheck.h:
2518           add debugging category
2519           use GST_START_TEST now, so we add a debug line
2520
2521 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2522
2523         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
2524           add test for state change message on a bin
2525         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
2526           add another test
2527         * gst/gstbin.c: (gst_bin_init):
2528         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
2529         * gst/gstelement.c: (gst_element_post_message),
2530         (gst_element_set_state):
2531         * gst/gstelementfactory.c: (gst_element_factory_create):
2532         * gst/gstmessage.c: (gst_message_new):
2533         * gst/gstscheduler.c:
2534           various debugging additions and cleanups
2535
2536 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2537
2538         * check/Makefile.am:
2539         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
2540         (main):
2541           adding tests for elements
2542         * gst/gstelement.c: (gst_element_dispose):
2543
2544 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2545
2546         * gst/registries/gstlibxmlregistry.c: (load_feature):
2547           plug more leaks.  A simple gst_init() now is leakfree, yay.
2548
2549 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2550
2551         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
2552         (gst_xml_registry_load):
2553           plug another memleak
2554
2555 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2556
2557         * configure.ac:
2558           use GST_SET_ERROR_CFLAGS
2559         * docs/faq/cvs.xml:
2560           change to ERROR_CFLAGS
2561
2562 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2563
2564         * configure.ac:
2565           make GST_ERROR_CFLAGS overridable and re-enable Werror
2566         * docs/faq/cvs.xml:
2567           add a note about error CFLAGS
2568         * docs/gst/tmpl/gstfakesrc.sgml:
2569         * gst/elements/gstfakesrc.c:
2570           comment out some unused code
2571         * gst/gst.c: (split_and_iterate):
2572         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
2573         (load_feature):
2574           plug some memleaks
2575
2576 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
2577
2578         * common/Makefile.am:
2579         * common/gtk-doc.mak:
2580         * docs/gst/Makefile.am:
2581           factor out gtk-doc.mak
2582
2583 2005-07-07  Wim Taymans  <wim@fluendo.com>
2584
2585         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
2586         (gst_thread_scheduler_dispose):
2587         Unlock the STREAM_LOCK completely.
2588
2589 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
2590
2591         * check/Makefile.am:
2592         * check/elements/.cvsignore:
2593         * check/elements/gstfakesrc.c: (chain_func), (event_func),
2594         (START_TEST), (fakesrc_suite), (main):
2595         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2596         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
2597         (gst_fakesrc_create), (gst_fakesrc_start):
2598         * gst/elements/gstfakesrc.h:
2599           adding a first element test
2600
2601 2005-07-07  Andy Wingo  <wingo@pobox.com>
2602
2603         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
2604         debug message.
2605
2606 2005-07-07  Wim Taymans  <wim@fluendo.com>
2607
2608         * gst/gstquery.c:
2609         * gst/gstquery.h:
2610         Remove old types
2611
2612 2005-07-07  Wim Taymans  <wim@fluendo.com>
2613
2614         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
2615         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
2616         Allow subclasses to implement their own negotiation.
2617
2618 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
2619
2620         * docs/design/part-gstbin.txt:
2621         * docs/design/part-gstpipeline.txt:
2622           Update design notes to reflect the movement of
2623           responsibility for bus handling from GstPipeline to
2624           GstBin
2625
2626 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
2627
2628         * configure.ac:
2629           Remove unnecessary queue2/3/4 examples.
2630
2631 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
2632
2633         * examples/Makefile.am:
2634         * examples/helloworld/helloworld.c: (event_loop), (main):
2635         * examples/queue/queue.c: (event_loop), (main):
2636         * examples/queue2/queue2.c: (main):
2637           Update a couple of the examples to work again.
2638
2639         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2640         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
2641          Spelling corrections and extra debug.
2642         
2643         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
2644         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
2645         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
2646         * gst/gstbin.h:
2647         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
2648         (gst_pipeline_change_state):
2649         * gst/gstpipeline.h:
2650           Move the bus handler for children to the GstBin, and create a
2651           separate bus for receiving messages from children to the one the
2652           bus sends 'upwards' on.
2653
2654 2005-07-06  Wim Taymans  <wim@fluendo.com>
2655
2656         * gst/base/README:
2657         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2658         (gst_base_sink_handle_object), (gst_base_sink_loop),
2659         (gst_base_sink_change_state):
2660         * gst/base/gstbasesink.h:
2661         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
2662         (gst_base_src_init), (gst_base_src_setcaps),
2663         (gst_base_src_getcaps), (gst_base_src_loop),
2664         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
2665         (gst_base_src_start), (gst_base_src_change_state):
2666         * gst/base/gstbasesrc.h:
2667         Make basesrc negotiate.
2668         Handle the case where preroll fails in basesink.
2669         Update README.
2670
2671 2005-07-06  Wim Taymans  <wim@fluendo.com>
2672
2673         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
2674         Implement the fixate function.
2675         Clean up acceptcaps.
2676
2677 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2678
2679         * docs/pwg/building-filterfactory.xml:
2680         * docs/pwg/pwg.xml:
2681           Remove never-written filter-factory chapter; I'll add the various
2682           base classes to part 4 ("other element types") later on.
2683
2684 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2685
2686         * docs/pwg/advanced-negotiation.xml:
2687         * docs/pwg/building-boiler.xml:
2688         * docs/pwg/building-pads.xml:
2689         * docs/pwg/pwg.xml:
2690         * examples/pwg/Makefile.am:
2691           Add a chapter on caps negotiation, simplify the original code
2692           samples a bit w.r.t. caps negotiation, add link to the advanced
2693           section. Add a bunch of examples showing different use cases of
2694           different types of caps negotiation. Upstream renegotiation isn't
2695           fully documented yet since nobody knows how that works.
2696
2697 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
2698
2699         * check/gst/gstpad.c:
2700         * check/gstcheck.c:
2701         * gst/gstpad.c: (gst_pad_get_internal_links_default):
2702           if pad has no parent, return NULL as list of internal links
2703
2704 2005-07-05  Andy Wingo  <wingo@pobox.com>
2705
2706         * gst/elements/gstfilesrc.c:
2707         * gst/elements/gstfakesrc.c: 
2708         * gst/base/gstpushsrc.c:
2709         * gst/base/gstbasesrc.h: 
2710         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
2711         
2712 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
2713
2714         * Makefile.am:
2715           better report generation target (lcov needs a patch)
2716
2717 2005-07-05  Andy Wingo  <wingo@pobox.com>
2718
2719         * gst/elements, testsuite: Null if we got it...
2720
2721 2005-07-05  Wim Taymans  <wim@fluendo.com>
2722
2723         * configure.ac:
2724         * libs/gst/dataprotocol/Makefile.am:
2725         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
2726         * libs/gst/dataprotocol/dataprotocol.h:
2727         * pkgconfig/Makefile.am:
2728         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
2729         * pkgconfig/gstreamer-dataprotocol.pc.in:
2730         Ported dataprotol to 0.9. 
2731         Added pkgconfig files.
2732
2733 2005-07-05  Andy Wingo  <wingo@pobox.com>
2734
2735         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
2736         Default to returning TRUE for the case when tranform_caps returns
2737         a fixed caps, like for identity or volume.
2738
2739         * check/gst/gstbus.c (pound_bus_with_messages): 
2740         * check/gst/gstmessage.c (START_TEST): 
2741         * check/pipelines/simple_launch_lines.c (got_handoff): Application
2742         message API change.
2743
2744         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
2745         logic weaks here: always run transform_caps, trying passthrough
2746         operation only if the original caps intersects with the transform.
2747
2748         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
2749         source and sink caps.
2750
2751         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
2752         Intersect the peer caps with the pad template before going into
2753         transform_caps.
2754         (gst_base_transform_transform_caps): More debugging.
2755
2756         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
2757         src argument.
2758
2759 2005-07-04  Edward Hervey  <edward@fluendo.com>
2760
2761         * gst/gstutils.c:
2762         * gst/gstutils.h:
2763         (gst_pad_add_*_probe): now returns the signal id for better wrapping
2764         in bindings.
2765
2766 2005-07-04  Andy Wingo  <wingo@pobox.com>
2767
2768         * check/gst/gstpad.c: Only set explicit caps on pads.
2769
2770 2005-07-01  Andy Wingo  <wingo@pobox.com>
2771
2772         * tests/network-clock.scm: Commentary update.
2773
2774         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
2775         Didn't really make sense, not implementable with basetransform,
2776         etc.
2777         (gst_identity_transform): Unref inbuf via make_writable. Feeble
2778         attempt at implementing the sync property, needs an unlock method.
2779
2780         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
2781         New func, by default returns the same caps (the identity
2782         transformation).
2783         (gst_base_transform_getcaps): Uses transform_caps to return
2784         something sensible.
2785         (gst_base_transform_setcaps): Complicated logic to get caps on
2786         both pads, even if they are different, and to call set_caps once
2787         for every time both pads get their caps set.
2788         (gst_base_transform_handle_buffer): Give the ref to the transform
2789         function. Allows in-place modification of the buffer.
2790
2791         * gst/base/gstbasetransform.h (transform_caps): New class method.
2792         Given caps on one side, what can I do on the other.
2793         (set_caps): Take two caps, one for each side of the element.
2794
2795         * gst/gstpad.h:
2796         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
2797         caps in place. This is safe because we can check the mutability of
2798         the caps, and a good idea because fixate functions are just called
2799         as a matter of last resort. (Not actually implemented.)
2800         (gst_pad_set_caps): If the caps we're setting is actually the same
2801         as the existing pad caps, just update the pointer without calling
2802         setcaps. Assert that caps is either NULL or fixed, as per the
2803         docs.
2804
2805         * gst/gstghostpad.c: Update for fixate changes.
2806
2807 2005-07-02  Andy Wingo  <wingo@pobox.com>
2808
2809         * gst/gstcaps.c:
2810         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
2811         two refcounts makes it immutable, which is enough. Doc more.
2812
2813 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
2814
2815         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
2816           Put the mini_object into GValue as a mini_object,
2817           not a gpointer, since that's how we declared
2818           the signal.
2819
2820 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2821
2822         * examples/pwg/Makefile.am:
2823           Fix buildbot again.
2824
2825 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2826
2827         * docs/pwg/building-testapp.xml:
2828           Add extra check.
2829         * examples/pwg/Makefile.am:
2830           Fix buildbot.
2831
2832 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2833
2834         * configure.ac:
2835         * examples/Makefile.am:
2836         * examples/pwg/Makefile.am:
2837         * examples/pwg/extract.pl:
2838           Enable building the PWG examples.
2839         * docs/pwg/advanced-interfaces.xml:
2840           Add URI interface stub.
2841         * docs/pwg/advanced-types.xml:
2842         * docs/pwg/other-autoplugger.xml:
2843         * docs/pwg/appendix-porting.xml:
2844         * docs/pwg/pwg.xml:
2845           Add porting guide (mostly stubs), remove autoplugging (see ADM).
2846         * docs/pwg/building-boiler.xml:
2847         * docs/pwg/building-chainfn.xml:
2848         * docs/pwg/building-pads.xml:
2849         * docs/pwg/building-props.xml:
2850         * docs/pwg/building-state.xml:
2851         * docs/pwg/building-testapp.xml:
2852           Update the building-*.xml parts for 0.9 changes. All examples
2853           code blocks compile in examples/pwg/*.
2854
2855 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2856
2857         * docs/manual/advanced-autoplugging.xml:
2858         * docs/manual/appendix-checklist.xml:
2859         * docs/manual/appendix-integration.xml:
2860         * docs/manual/highlevel-components.xml:
2861           Fix playbin/decodebin examples, update docs a bit, mention bus
2862           instead of signals in various places, mention kmplayer and
2863           kaffeine since they have a working GStreamer backend in the KDE
2864           section.
2865
2866 2005-06-30  Wim Taymans  <wim@fluendo.com>
2867
2868         * CHANGES-0.9:
2869         * docs/design/draft-ghostpads.txt:
2870         * docs/design/draft-push-pull.txt:
2871         * docs/design/draft-query.txt:
2872         * docs/design/part-TODO.txt:
2873         * docs/design/part-query.txt:
2874         Added CHANGES-0.9 doc, updated status of other docs.
2875         
2876         * gst/gstquery.h:
2877         Remove "hmm" macro
2878
2879 2005-06-30  Wim Taymans  <wim@fluendo.com>
2880
2881         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2882         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
2883         (gst_base_sink_change_state):
2884         * gst/base/gstbasesink.h:
2885         Some tweaks, only EOS and a buffer complete a preroll.
2886
2887 2005-06-30  Andy Wingo  <wingo@pobox.com>
2888
2889         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
2890         activate_push down to the internal pad as well.
2891
2892 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
2893
2894         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2895
2896         * gst/gsttaginterface.c:
2897           Some documentation fixes (#307394 and #307397).
2898
2899 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
2900
2901         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2902
2903         * gst/gstvalue.c: (gst_value_intersect_list):
2904           Fix memleak (#309125).
2905
2906 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2907
2908         * docs/manual/advanced-dataaccess.xml:
2909           Fix fakesrc example to compile; doesn't work, bug somewhere...?
2910         * docs/manual/basics-pads.xml:
2911           Add reference for filtered caps to above chapter.
2912
2913 2005-06-30  Wim Taymans  <wim@fluendo.com>
2914
2915         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
2916         (gst_bin_change_state):
2917         Probes are gone.
2918         Lame attempt at making the state change function a bit
2919         more readable.
2920
2921 2005-06-30  Wim Taymans  <wim@fluendo.com>
2922
2923         * docs/design/part-clocks.txt:
2924         * docs/design/part-element-sink.txt:
2925         * docs/design/part-events.txt:
2926         * docs/design/part-preroll.txt:
2927         * docs/design/part-states.txt:
2928         Some more tweeks and additions to the docs.
2929
2930 2005-06-30  Wim Taymans  <wim@fluendo.com>
2931
2932         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2933         (default_have_data), (gst_pad_class_init), (gst_pad_init),
2934         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2935         (gst_pad_check_pull_range), (gst_pad_get_range),
2936         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
2937         * gst/gstpad.h:
2938         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
2939         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2940         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2941         (gst_pad_remove_buffer_probe):
2942         Removed atomic operations, use existing LOCK.
2943         Move exception handling out of main code path.
2944
2945 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2946
2947         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2948         (silly_return_true_function), (gst_pad_class_init),
2949         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2950         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
2951         (gst_pad_send_event):
2952           Fix accumulator, add default value by using _emitv() instead
2953           of _emit() for signal emission.
2954
2955 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2956
2957         * docs/manual/advanced-dataaccess.xml:
2958         * examples/manual/Makefile.am:
2959           Add probe example.
2960         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
2961           Make work (??).
2962
2963 2005-06-29  Tim-Philipp M??ller  <tim at centricular dot net>
2964
2965         * gst/elements/gstfilesink.c: (gst_filesink_render):
2966           Simplify code so that we don't have to handle short
2967           writes and return GST_FLOW_ERROR if an error occured.
2968
2969 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2970
2971         * docs/gst/gstreamer-docs.sgml:
2972           Remove probes more.
2973
2974 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2975
2976         * docs/gst/gstreamer-sections.txt:
2977         * docs/gst/tmpl/gstpad.sgml:
2978         * docs/gst/tmpl/gstprobe.sgml:
2979         * gst/Makefile.am:
2980         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2981         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
2982         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2983         (gst_pad_push_event), (gst_pad_send_event):
2984         * gst/gstpad.h:
2985         * gst/gstutils.c: (gst_pad_add_data_probe),
2986         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2987         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2988         (gst_pad_remove_buffer_probe):
2989         * gst/gstutils.h:
2990           Remove old probes, add new g-signal-based probes and some utility
2991           functions.
2992
2993 2005-06-29  Edward Hervey  <edward@fluendo.com>
2994
2995         * gst/gstelementfactory.c:
2996         * gst/gstutils.h:
2997         * gst/gstutils.c:
2998         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
2999         the definition to the header file.
3000
3001 2005-06-29  Andy Wingo  <wingo@pobox.com>
3002
3003         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
3004         plugins from the source directory.
3005
3006 2005-06-29  Wim Taymans  <wim@fluendo.com>
3007
3008         * docs/gst/tmpl/gstbuffer.sgml:
3009         * docs/gst/tmpl/gstclock.sgml:
3010         Some fixings for blantently wrong text.
3011
3012 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
3013
3014         * check/Makefile.am:
3015         * gst/gst.c: (add_path_func), (init_pre):
3016         * gst/gstregistry.c: (gst_registry_add_path):
3017           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
3018           only scan the GST_PLUGIN_PATH locations, and not add
3019           system locations
3020
3021 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
3022
3023         * docs/gst/gstreamer-sections.txt:
3024         * docs/gst/tmpl/gstbasesrc.sgml:
3025         * gst/gstelement.c:
3026         * gst/gstelement.h:
3027         * gst/gstevent.c:
3028         * gst/gstutils.c:
3029           doc fixes
3030
3031 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3032
3033         * docs/manual/advanced-autoplugging.xml:
3034           Fix autoplugging example.
3035
3036 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3037
3038         * docs/manual/advanced-autoplugging.xml:
3039         * docs/manual/mime-world.fig:
3040           Try to get autoplugging working, fix type detection. Fix text
3041           in hello-world image.
3042
3043 2005-06-29  Wim Taymans  <wim@fluendo.com>
3044
3045         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3046         (gst_base_sink_change_state):
3047         Small debug line.
3048
3049         * gst/gstclock.h:
3050         map SIGNAL and BROADCAST to the right function.
3051
3052         * gst/gstobject.h:
3053         Remove redundant braces.
3054
3055         * gst/gstpad.c: (gst_pad_set_caps):
3056         Don't call setcaps function when reseting caps to NULL.
3057
3058         * gst/gstsystemclock.c: (gst_system_clock_dispose),
3059         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
3060         (gst_system_clock_id_unschedule):
3061         Use BROADCAST as this is what we do.
3062
3063 2005-06-29  Wim Taymans  <wim@fluendo.com>
3064
3065         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
3066         We are actually prerolling before commiting the state
3067         change. 
3068
3069 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3070
3071         * docs/manual/advanced-clocks.xml:
3072         * docs/manual/advanced-interfaces.xml:
3073         * docs/manual/advanced-metadata.xml:
3074         * docs/manual/advanced-position.xml:
3075         * docs/manual/advanced-schedulers.xml:
3076         * docs/manual/advanced-threads.xml:
3077         * docs/manual/appendix-porting.xml:
3078         * docs/manual/basics-bins.xml:
3079         * docs/manual/basics-bus.xml:
3080         * docs/manual/basics-elements.xml:
3081         * docs/manual/basics-helloworld.xml:
3082         * docs/manual/basics-pads.xml:
3083         * docs/manual/highlevel-components.xml:
3084         * docs/manual/manual.xml:
3085         * docs/manual/thread.fig:
3086           Update (until threads/scheduling) Application Development Manual;
3087           remove GstThread, add GstBus, add simple porting checklist, add
3088           documentation for tag writing, clocks, make all examples until this
3089           part compile and run.
3090         * examples/manual/Makefile.am:
3091           Update from changes to Application Development Manual; add bus
3092           example, remove thread example.
3093
3094 2005-06-28  Wim Taymans  <wim@fluendo.com>
3095
3096         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
3097         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
3098         (gst_bus_source_dispatch):
3099         Add debugging messages.
3100         Make internal methods static.
3101         Handle the case where the bus is flushed in the handler.
3102         
3103         * gst/gstelement.c: (gst_element_get_bus):
3104         Fix refcount in _get_bus();
3105
3106         * gst/gstpipeline.c: (gst_pipeline_change_state),
3107         (gst_pipeline_get_clock_func):
3108         Clock refcounting fixes.
3109         Handle the case where preroll timed out more gracefully.
3110         
3111         * gst/gstsystemclock.c: (gst_system_clock_dispose):
3112         Clean up the internal thread in dispose. This is needed
3113         for subclasses that actually get disposed.
3114         
3115         * gst/schedulers/threadscheduler.c:
3116         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
3117         (gst_thread_scheduler_dispose):
3118         Free thread pool in dispose.
3119
3120 2005-06-28  Andy Wingo  <wingo@pobox.com>
3121
3122         * tests/network-clock-utils.scm (debug, print-event): New utils.
3123
3124         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
3125         (*packet-loss*): Unified loss probability.
3126         (network-time): Report out-of-band events.
3127
3128         * tests/plot-data: Add support for out-of-band events. Hack it
3129         into this script instead of passing it down the pipe; should fix
3130         this later.
3131
3132 2005-06-28  Wim Taymans  <wim@fluendo.com>
3133
3134         * docs/gst/gstreamer.types:
3135         * docs/gst/tmpl/gstbasesrc.sgml:
3136         * docs/gst/tmpl/gstpad.sgml:
3137         Docs fixes.
3138
3139 2005-06-28  Wim Taymans  <wim@fluendo.com>
3140
3141         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
3142         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
3143         (gst_proxy_pad_do_fixatecaps):
3144         Correctly proxy the check_pull_range function.
3145
3146 2005-06-28  Andy Wingo  <wingo@pobox.com>
3147
3148         * tests/network-clock.scm: Removed need for slib.
3149         
3150 2005-06-28  Wim Taymans  <wim@fluendo.com>
3151
3152         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
3153         (gst_basesink_preroll_queue_flush):
3154         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
3155         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
3156         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
3157         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
3158         (gst_proxy_pad_set_property):
3159         * gst/gstpad.c:
3160         * gst/gstpad.h:
3161         * gst/gstqueue.c: (gst_queue_init):
3162         The deprecated pad loop function is removed now.
3163
3164 2005-06-28  Andy Wingo  <wingo@pobox.com>
3165
3166         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
3167         New parameters, simulate network packet loss.
3168
3169         * tests/network-clock-utils.scm: Initialize the RNG.
3170
3171 2005-06-28  Wim Taymans  <wim@fluendo.com>
3172
3173         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
3174         (gst_basesink_event), (gst_basesink_deactivate):
3175         Flushing the preroll queue always needs to unlock the waiters.
3176
3177 2005-06-28  Edward Hervey  <edward@fluendo.com>
3178
3179         * gst/gstpipeline.c: (gst_pipeline_send_event): 
3180         Wheen a seek was successful on a pipeline, set the stream_time to the
3181         seek offset in order to have a synchronized stream_time.
3182
3183 2005-06-28  Wim Taymans  <wim@fluendo.com>
3184
3185         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
3186         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
3187         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
3188         (gst_proxy_pad_do_fixatecaps):
3189         Call wrapper function instead of just calling the function
3190         pointers. This takes care of any locking and whatmore.
3191
3192 2005-06-28  Wim Taymans  <wim@fluendo.com>
3193
3194         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
3195         (gst_pad_pull_range):
3196         * gst/gstpad.h:
3197         CONNECTED -> LINKED.
3198
3199 2005-06-28  Andy Wingo  <wingo@pobox.com>
3200
3201         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
3202         source-munging commit!!!
3203
3204         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
3205         (gst_object_sink): Take gpointer arguments, not GstObject --
3206         avoids casts. Like GLib.
3207
3208         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
3209         activate.
3210
3211 2005-06-27  Andy Wingo  <wingo@pobox.com>
3212
3213         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
3214         remaining buffer.
3215
3216         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
3217         returns a sorted copy of the trace list.
3218         (gst_alloc_trace_print_live): New API, only prints traces with
3219         live objects. Sort the list.
3220         (gst_alloc_trace_print_all): Sort the list.
3221         (gst_alloc_trace_print): Align columns.
3222
3223         * gst/elements/gstttypefindelement.c:
3224         * gst/elements/gsttee.c:
3225         * gst/base/gstbasesrc.c:
3226         * gst/base/gstbasesink.c:
3227         * gst/base/gstbasetransform.c:
3228         * gst/gstqueue.c: Adapt for pad activation changes.
3229
3230         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
3231         sched.
3232         (gst_pipeline_dispose): Drop ref on sched.
3233
3234         * gst/gstpad.c (gst_pad_init): Set the default activate func.
3235         (gst_pad_activate_default): Push mode by default.
3236         (pre_activate_switch, post_activate_switch): New stubs, things to
3237         do before and after switching activation modes on pads.
3238         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
3239         the pad's activate function to choose which mode to activate.
3240         Shortcut on deactivation and call the right function directly.
3241         (gst_pad_activate_pull): New API, (de)activates a pad in pull
3242         mode.
3243         (gst_pad_activate_push): New API, same for push mode.
3244         (gst_pad_set_activate_function) 
3245         (gst_pad_set_activatepull_function) 
3246         (gst_pad_set_activatepush_function): Setters for new API.
3247
3248         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
3249         Trace all miniobjects.
3250         (gst_mini_object_make_writable): Unref the arg if we copy, like
3251         gst_caps_make_writable.
3252
3253         * gst/gstmessage.c (_gst_message_initialize): No trace init.
3254
3255         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
3256         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
3257         Adapt for new pad API.
3258
3259         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
3260
3261         * gst/gstelement.h:
3262         * gst/gstelement.c (gst_element_iterate_src_pads) 
3263         (gst_element_iterate_sink_pads): New API functions.
3264         
3265         * gst/gstelement.c (iterator_fold_with_resync): New utility,
3266         should fold into gstiterator.c in some form.
3267         (gst_element_pads_activate): Simplified via use of fold and
3268         delegation of decisions to gstpad->activate.
3269
3270         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
3271         help in debugging.
3272
3273         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
3274         class once in init, like gstmessage. Didn't run into this issue
3275         but it seems correct. Don't initialize a trace, gstminiobject does
3276         that.
3277
3278         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
3279         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
3280         to the bus.
3281         (assert_live_count): New util function, uses alloc traces to check
3282         cleanup.
3283
3284         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
3285         To be modified when unlink drops the internal pad.
3286
3287 2005-06-27  Wim Taymans  <wim@fluendo.com>
3288
3289         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
3290         (gst_bin_change_state):
3291         Cleanup the get_state() function a little, make sure it
3292         iterates the same set of elements.
3293         Added stub iterate_state_order().
3294
3295 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
3296
3297         * docs/gst/gstreamer-docs.sgml:
3298         * docs/gst/gstreamer-sections.txt:
3299         * docs/gst/gstreamer.types:
3300         * docs/gst/tmpl/gstbasesink.sgml:
3301         * docs/gst/tmpl/gstbasesrc.sgml:
3302         * docs/gst/tmpl/gstbasetransform.sgml:
3303         * docs/gst/tmpl/gstelement.sgml:
3304         * docs/gst/tmpl/gstiterator.sgml:
3305         * gst/base/gstbasesrc.c:
3306         * gst/base/gstbasesrc.h:
3307         * gst/base/gstbasetransform.h:
3308         * gst/gstelement.c:
3309         * gst/gstiterator.h:
3310           adding basetransform and iterator docs
3311
3312 2005-06-27  Andy Wingo  <wingo@pobox.com>
3313
3314         * docs/design/part-activation.txt: Notes on how activation should
3315         work -- not quite implemented yet.
3316
3317 2005-06-25  Wim Taymans  <wim@fluendo.com>
3318
3319         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
3320         At least get the chain function correct, needs more
3321         fixing.
3322
3323 2005-06-25  Wim Taymans  <wim@fluendo.com>
3324
3325         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3326         (gst_basesink_handle_object), (gst_basesink_event),
3327         (gst_basesink_do_sync), (gst_basesink_handle_event),
3328         (gst_basesink_change_state):
3329         * gst/gsttask.h:
3330         Right, two problems here: ghostpads don't take locks and
3331         glib _rec_mutex_lock_full() with depth==0 still locks.
3332         Catch illegal locking and g_warn them.
3333
3334 2005-06-25  Wim Taymans  <wim@fluendo.com>
3335
3336         * check/states/sinks.c: (START_TEST), (gst_object_suite):
3337         Have to check for completion now...
3338
3339 2005-06-25  Wim Taymans  <wim@fluendo.com>
3340
3341         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3342         (gst_basesink_handle_object), (gst_basesink_event),
3343         (gst_basesink_do_sync), (gst_basesink_handle_event),
3344         (gst_basesink_change_state):
3345         * gst/gstpad.h:
3346         Unlock STREAM_LOCK whatever the recursion was.
3347
3348 2005-06-25  Wim Taymans  <wim@fluendo.com>
3349
3350         * gst/base/gstbasesink.c: (gst_basesink_set_property),
3351         (gst_basesink_preroll_queue_empty),
3352         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
3353         (gst_basesink_event), (gst_basesink_do_sync),
3354         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
3355         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
3356         (gst_basesink_change_state):
3357         Reworked the base sink, handle event and buffer serialisation
3358         correctly and removed possible deadlock.
3359         Handle EOS correctly.
3360
3361 2005-06-25  Wim Taymans  <wim@fluendo.com>
3362
3363         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
3364         (gst_pipeline_change_state):
3365         * tools/gst-launch.c: (check_intr), (event_loop), (main):
3366         Allow elements to post EOS in the state change function.
3367         Fix up -launch, make it exit the poll loop when the
3368         pipeline actually changed state.
3369         Fix up warning parsing in -launch.
3370
3371 2005-06-25  Wim Taymans  <wim@fluendo.com>
3372
3373         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
3374         (gst_tee_sink_activate):
3375         Core takes STREAM_LOCK for us now.
3376
3377 2005-06-25  Wim Taymans  <wim@fluendo.com>
3378
3379         * gst/gstelement.c: (gst_element_get_state_func),
3380         (gst_element_set_state):
3381         * gst/gstelement.h:
3382         * gst/gstmessage.c: (gst_message_parse_error),
3383         (gst_message_parse_warning):
3384         Keep track of current target state while performing a state
3385         change so that subclasses can do something interesting.
3386         Fix parsing of warning/error messages when GError is NULL.
3387
3388 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3389
3390         * docs/gst/Makefile.am:
3391         * docs/gst/gstreamer-docs.sgml:
3392         * docs/gst/gstreamer-sections.txt:
3393         * docs/gst/gstreamer.types:
3394         * docs/gst/tmpl/gstbasesink.sgml:
3395         * docs/gst/tmpl/gstbasesrc.sgml:
3396         * docs/gst/tmpl/gstbin.sgml:
3397         * docs/gst/tmpl/gstcompat.sgml:
3398         * docs/gst/tmpl/gstfakesink.sgml:
3399         * docs/gst/tmpl/gstfakesrc.sgml:
3400         * docs/gst/tmpl/gstfilesink.sgml:
3401         * docs/gst/tmpl/gstfilesrc.sgml:
3402         * docs/gst/tmpl/gstindex.sgml:
3403         * docs/manual/appendix-quotes.xml:
3404         * gst/base/gstbasesrc.h:
3405         * gst/elements/gstfakesrc.h:
3406         * gst/gstmessage.h:
3407           start pulling in base classes and elements in our docs
3408
3409 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
3410
3411         * docs/gst/Makefile.am:
3412         * docs/libs/Makefile.am:
3413           fixed make distcheck with gtk-doc 1.3
3414
3415 2005-06-23  Wim Taymans  <wim@fluendo.com>
3416
3417         * gst/gstelement.c: (gst_element_get_state_func),
3418         (gst_element_set_state), (gst_element_change_state):
3419         When the state did not change, also report NO_PREROLL
3420         when it matters.
3421
3422 2005-06-23  Wim Taymans  <wim@fluendo.com>
3423
3424         * gst/gstpad.c: (gst_pad_event_default):
3425         * gst/gstqueue.c: (gst_queue_loop):
3426         No unsafe task pausing please.
3427
3428 2005-06-23  Wim Taymans  <wim@fluendo.com>
3429
3430         * gst/schedulers/threadscheduler.c:
3431         (gst_thread_scheduler_task_start),
3432         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
3433         Ref the task before pushing it on the threadpool. This
3434         makes sure that we have a ref when the threadfunction is
3435         actually called.
3436
3437 2005-06-23  Andy Wingo  <wingo@pobox.com>
3438
3439         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
3440         offset is greater than the file's size.
3441
3442         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
3443         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
3444         * gst/gstobject.c (gst_object_class_init): Make the class lock
3445         recursive. Wim won't let me drop deep_notify. Decodebin works
3446         again, whoopdy doo.
3447
3448         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
3449         internal pad, and hacks accordingly. Doesn't do it on the target
3450         pad because we change its caps. Probably catches all cases of
3451         interest tho.
3452         (gst_ghost_pad_set_property): Connect to notify::caps as
3453         appropritate.
3454
3455         * tests/network-clock.scm (plot-simulation): Pipe data to the
3456         elite python skript.
3457
3458         * tests/network-clock-utils.scm (define-parameter): New macro,
3459         defines a parameter that can be set via the command line.
3460         (set-parameter!, parse-parameter-arguments): Command line args
3461         parser.
3462
3463         * tests/plot-data: Simple matplotlib-based plotter, takes input on
3464         stdin.
3465
3466 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
3467
3468         * gst/elements/gsttypefindelement.c:
3469         (gst_type_find_element_handle_event):
3470           Don't restart typefinding on a discont.
3471         * gst/gstelement.c: (gst_element_set_state):
3472           Debug spelling fix.
3473         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
3474           Allow changing mode of an active pad.
3475           Debug output fixes.
3476         * gst/registries/gstlibxmlregistry.c: (load_feature):
3477           Don't cast a static pad template to a normal pad template.
3478
3479 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3480
3481         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
3482         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
3483           remove gst_strtoll completely, since it didn't actually do
3484           anything more than what g_ascii_strtoull already does.
3485           check for range errors when deserializing
3486           do a cast for the unsigned cases; but further fixing needs
3487           a decision on what the interpretation of "(int)" and
3488           deserialization should be for values that fall outside the
3489           type's boundaries (ie, refuse, or interpret as casting)
3490
3491 2005-06-23  Wim Taymans  <wim@fluendo.com>
3492
3493         * check/Makefile.am:
3494         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
3495         * docs/design/part-live-source.txt:
3496         * docs/design/part-states.txt:
3497         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3498         (gst_basesrc_set_live), (gst_basesrc_is_live),
3499         (gst_basesrc_get_range), (gst_basesrc_activate),
3500         (gst_basesrc_change_state):
3501         * gst/base/gstbasesrc.h:
3502         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3503         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3504         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
3505         * gst/gstelement.c: (gst_element_get_state_func),
3506         (gst_element_set_state):
3507         * gst/gstelement.h:
3508         * gst/gsttypes.h:
3509         * tools/gst-launch.c: (event_loop), (main):
3510         Added support for live sources and other elements that
3511         cannot do preroll.
3512         Updated design docs, added live-source design doc.
3513         Implemented live source functionality in basesrc
3514         Fix error condition in _bin_get_state()
3515         Implement live source handling in -launch.
3516         Added check for live sources.
3517         Fixed case in GstBin where elements were changed state
3518         multiple times.
3519
3520
3521 2005-06-23  Andy Wingo  <wingo@pobox.com>
3522
3523         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
3524         borken refcounting.
3525
3526         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
3527         gst_caps_replace takes care of this for us.
3528
3529         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
3530         gst_pad_set_caps on the target, not just its setcaps() function.
3531
3532         * tests/network-clock.scm: 
3533         * tests/network-clock-utils.scm: A network clock simulator.
3534         Something of an algorithmic testbed before doing something in C.
3535
3536 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3537
3538         * check/Makefile.am:
3539         * check/gst/capslist.h:
3540           copy over from 0.8, and add two with bitmasks specified with
3541           (int) 0xFF...
3542         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
3543           add test to parse everything from capslist.h
3544         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
3545         (main):
3546           add test for structure deserialization
3547         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
3548           add tests for deserialization of strings to int types
3549         * gst/gststructure.c: (gst_structure_nth_field_name):
3550         * gst/gststructure.h:
3551           add a way to get the name of a field referenced by index
3552         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
3553           instead of checking if the resulting long long lies between
3554           min and max, we check if the long long would fit into
3555           a number of bytes for the final type.
3556           This fixes cases where a string represents 2^32 - 1, which
3557           when cast to int would be the (valid) -1, but is bigger than
3558           G_MAXINT
3559
3560 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3561
3562         * gst/parse/grammar.y:
3563           add a log line for type deserialization
3564
3565 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3566
3567         * check/gst/gstvalue.c: (START_TEST):
3568         * gst/gstvalue.c: (gst_value_deserialize):
3569           return long long, not int, so gint64 deserialization actually
3570           works.  Is there any flag that makes the compiler check this ?
3571           Fixes #308559
3572
3573 2005-06-22  Wim Taymans  <wim@fluendo.com>
3574
3575         * gst/gstbuffer.h:
3576         Added convenience macros for setting buffers in GValue.
3577
3578 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3579
3580         * check/gst/.cvsignore:
3581         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
3582           add a test deserializing int64, and comment part out because
3583           it fails, yay !
3584
3585 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3586
3587         * check/Makefile.am:
3588         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
3589         * testsuite/Makefile.am:
3590         * testsuite/caps/Makefile.am:
3591         * testsuite/caps/value_serialize.c:
3592         * testsuite/test_gst_init.c:
3593           move a value_serialize test over
3594
3595 2005-06-20  Wim Taymans  <wim@fluendo.com>
3596
3597         * gst/gstpad.c:
3598         Small doc updates.
3599         
3600         * gst/gstvalue.c: (gst_value_compare_buffer),
3601         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
3602         (gst_value_compare_flags), (gst_value_serialize_flags),
3603         (gst_value_deserialize_flags), (_gst_value_initialize):
3604         Fix serialisation of buffers, they are not boxed types anymore
3605
3606 2005-06-20  Wim Taymans  <wim@fluendo.com>
3607
3608         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
3609         Testcase to show error in buffer-on-caps serialisation.
3610
3611 2005-06-20  Andy Wingo  <wingo@pobox.com>
3612
3613         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
3614         will be adding to later.
3615
3616         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
3617         if its socks fill with rocks.
3618         (gst_system_clock_obtain): Set the name on object construction.
3619         Avoid double-checked locking.
3620
3621 2005-06-20  Tim-Philipp M??ller  <tim at centricular dot net>
3622
3623         * gst/gsturi.c: (gst_element_make_from_uri):
3624           Fix potential endless loop.
3625
3626 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3627
3628         * check/Makefile.am:
3629           add gsttag
3630         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
3631         (main):
3632           move over from testsuite dir and clean up
3633         * configure.ac:
3634         * gst/gsttag.c:
3635         * testsuite/Makefile.am:
3636         * testsuite/tags/.cvsignore:
3637         * testsuite/tags/Makefile.am:
3638         * testsuite/tags/merge.c:
3639           remove testsuite/tags
3640
3641 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3642
3643         * docs/gst/gstreamer-sections.txt:
3644         * docs/gst/tmpl/gstenumtypes.sgml:
3645         * win32/gstenumtypes.c:
3646           clean up documentation build a little
3647
3648 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3649
3650         * check/gstcheck.h:
3651           add macros for checking refcounts on objects and caps
3652         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
3653           add some more unit tests
3654         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
3655         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
3656           fix leaked refcounts (I hope :)) so unittest works
3657         * gst/gstpad.h:
3658           whitespace removal
3659
3660 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3661
3662         * configure.ac: back to HEAD
3663
3664 === release 0.9.1 ===
3665
3666 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3667
3668         * NEWS:
3669         * RELEASE:
3670           updated
3671
3672 2005-06-17  Andy Wingo  <wingo@pobox.com>
3673
3674         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
3675         assert; it's always possible that the pad gets deactivated in
3676         between the checks in gstpad.c and the implementation. Rely on
3677         finish_preroll() to return a FLUSHING or similar instead of on the
3678         assert.
3679         
3680         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
3681         clock and post an EOS message if we come out of finish_preroll in
3682         the playing state.
3683
3684 2005-06-16  David Schleef  <ds@schleef.org>
3685
3686         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
3687         (gst_capsfilter_set_property): Allow NULL as possible value
3688         for filter_caps property, indicating GST_CAPS_ANY.
3689
3690 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
3691
3692         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
3693           fix debug output
3694         * gst/schedulers/Makefile.am:
3695           use libgst prefix
3696         * gstreamer.spec.in:
3697           fix spec for it
3698
3699 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
3700
3701         * gstreamer.spec.in:
3702           clean up
3703
3704 2005-06-08  Andy Wingo  <wingo@pobox.com>
3705
3706         * gst/gstutils.c: RPAD fixes all around.
3707         (gst_element_link_pads): Refcounting fixes.
3708
3709         * tools/gst-inspect.c:
3710         * tools/gst-xmlinspect.c:
3711         * parse/grammar.y:
3712         * gst/base/gsttypefindhelper.c:
3713         * gst/base/gstbasesink.c:
3714         * gst/gstqueue.c: RPAD fixes.
3715
3716         * gst/gstghostpad.h:
3717         * gst/gstghostpad.c: New ghost pad implementation as full proxy
3718         pads. The tricky thing is they provide both source and sink
3719         interfaces, since they proxy the internal pad for the external
3720         pad, and vice versa. Implement with lower-level ProxyPad objects,
3721         with the interior proxy pad as a child of the exterior ghost pad.
3722         Should write a doc on this.
3723         
3724         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
3725         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
3726         gst_object API.
3727         
3728         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
3729         pads are real pads. No ghost pads in this file. Not documenting
3730         the myriad s/RPAD/PAD/ and REALIZE fixes.
3731         (gst_pad_class_init): Add properties for "direction" and
3732         "template". Both are construct-only, so they can't change during
3733         the life of the pad. Fixes properly deriving from GstPad.
3734         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
3735         derived objects, just set properties when creating the objects via
3736         g_object_new.
3737         (gst_pad_get_parent): Implement as a function, return NULL if the
3738         parent is not an element.
3739         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
3740         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
3741         
3742         * gst/gstobject.c (gst_object_class_init): Make name a construct
3743         property. Don't set it in the object init.
3744
3745         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
3746         with UNKNOWN direction.
3747         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
3748         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
3749         (gst_element_remove_pad): Remove ghost-pad special cases.
3750         (gst_element_pads_activate): Remove rpad cruft.
3751
3752         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
3753         catch the pad's-parent-not-an-element case.
3754
3755         * gst/gst.h: Include gstghostpad.h.
3756
3757         * gst/gst.c (init_post): No more real, ghost pads.
3758
3759         * gst/Makefile.am: Add gstghostpad.[ch].
3760
3761         * check/Makefile.am:
3762         * check/gst/gstbin.c:
3763         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
3764         into a bin creates ghost pads, and that the refcounts are right.
3765         Partly moved from gstbin.c.
3766
3767 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3768
3769         * check/gst-libs/.cvsignore:
3770         * check/gst/.cvsignore:
3771         * check/pipelines/.cvsignore:
3772           ignore more
3773         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
3774         (START_TEST), (cleanup_suite), (main):
3775           add some tests related to cleanup after running pipelines
3776
3777 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3778
3779         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
3780           add a testsuite for GstBuffer
3781
3782 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3783
3784         * gst/gstminiobject.h:
3785           add defines for accessing the refcount
3786
3787 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
3788
3789         * Makefile.am: added support for html unit test coverage reports
3790
3791 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
3792
3793         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
3794           Free existing caps if the capsfilter changes. Add a FIXME about
3795           setting those caps on the pads.
3796
3797         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
3798           Before adding a ghost pad to a parent bin, check that there isn't
3799           already one for the element on the bin. Prevents infinite recursion
3800           when using decodebin in parse pipelines. Andy says he'll rewrite the
3801           way this works anyway, so ignore the hack.
3802
3803 2005-06-02  Andy Wingo  <wingo@pobox.com>
3804
3805         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
3806         file size, pass it on to the type find helper.
3807
3808         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
3809         segment_start and segment_end properly according to the seek
3810         method. Segment_end is still a bit flaky because offset can be
3811         negative for CUR and END cases, but it takes -1 as an "unset"
3812         value.
3813
3814 2005-06-02  Wim Taymans  <wim@fluendo.com>
3815
3816         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
3817         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
3818         (gst_basesink_activate):
3819         * gst/base/gstbasesink.h:
3820         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3821         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3822         (gst_pad_query), (gst_pad_start_task):
3823         * gst/gstpad.h:
3824         * gst/gstqueue.c: (gst_queue_bufferalloc),
3825         (gst_queue_handle_sink_event), (gst_queue_chain):
3826         Bufferalloc: return GstFlowReturn to more accuratly report
3827         why allocation failed.
3828
3829 2005-06-02  Wim Taymans  <wim@fluendo.com>
3830
3831         * gst/gstpipeline.c: (gst_pipeline_send_event):
3832         Take snapshot of state without blocking.
3833
3834 2005-06-02  Wim Taymans  <wim@fluendo.com>
3835
3836         * docs/design/part-TODO.txt:
3837         * docs/design/part-caps.txt:
3838         * docs/design/part-clocks.txt:
3839         * docs/design/part-negotiation.txt:
3840         * docs/design/part-preroll.txt:
3841         Small doc updates 
3842
3843 2005-05-30  Wim Taymans  <wim@fluendo.com>
3844
3845         * gst/elements/gstidentity.c: (gst_identity_event),
3846         (gst_identity_transform), (gst_identity_get_property):
3847         Protect last_message property as it is accessed from
3848         multiple threads.
3849
3850 2005-05-30  Wim Taymans  <wim@fluendo.com>
3851
3852         * gst/gstelement.c: (gst_element_init),
3853         (gst_element_pads_activate), (gst_element_change_state):
3854         Slicker pad activation code.
3855
3856 2005-05-30  Wim Taymans  <wim@fluendo.com>
3857
3858         * gst/Makefile.am:
3859         * gst/gstelement.h:
3860         * gst/gstelementfactory.h:
3861         * gst/gsttypes.h:
3862         Move elementfactory methods to separate .h file.
3863
3864 2005-05-30  Wim Taymans  <wim@fluendo.com>
3865
3866         * docs/design/part-overview.txt:
3867         * gst/gstsystemclock.h:
3868         Small typo fixes, doc updates.
3869
3870 2005-05-30  Wim Taymans  <wim@fluendo.com>
3871
3872         * gst/gst.c: (gst_init_get_popt_table), (init_post),
3873         (init_popt_callback):
3874         Remove cpu-opt flag.
3875
3876 2005-05-30  Wim Taymans  <wim@fluendo.com>
3877
3878         * gst/gstbuffer.c: (gst_subbuffer_finalize),
3879         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
3880         * gst/gstbuffer.h:
3881         Avoid typechecking in places where not needed.
3882         Added accessor for malloc_data.
3883
3884 2005-05-30  Wim Taymans  <wim@fluendo.com>
3885
3886         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
3887         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
3888         (gst_pad_configure_sink), (gst_pad_configure_src),
3889         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
3890         (gst_pad_start_task):
3891         Propagate errors from _set_caps() in configure_src/sink
3892         functions instead of returning TRUE.
3893         FLUSH events can travel up and downstream
3894
3895
3896 2005-05-30  Wim Taymans  <wim@fluendo.com>
3897
3898         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3899         (gst_basesink_activate):
3900         Handle EOS in preroll.
3901
3902 2005-05-30  Wim Taymans  <wim@fluendo.com>
3903
3904         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3905         (gst_queue_loop), (gst_queue_handle_src_event):
3906         Remove old pieces of code
3907         Flushing the queue in an upstream event is a very bad idea.
3908
3909 2005-05-26  Andy Wingo  <wingo@pobox.com>
3910
3911         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
3912         gst_value_set_mini_object so as to add a ref on the object (which
3913         will be removed when the value is unset).
3914
3915         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
3916         arg type in ::handoff.
3917
3918         * gst/gstelement.c (gst_element_change_state): Also deactivate
3919         pads in READY->NULL, just in case the element didn't make it to
3920         PAUSED. Wingo tested, Wim approved.
3921
3922 2005-05-26  Wim Taymans  <wim@fluendo.com>
3923
3924         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3925         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3926         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
3927         A flushing pad cannot be used to alloc_buffer from.
3928
3929 2005-05-26  Wim Taymans  <wim@fluendo.com>
3930
3931         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
3932         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
3933         (gst_bus_source_dispatch), (gst_bus_source_finalize),
3934         (gst_bus_create_watch), (gst_bus_add_watch_full):
3935         * gst/gstbus.h:
3936         Implement a real GSource and use g_main_context_wakeup() to
3937         signal new messages instead of the socketpair.
3938
3939 2005-05-25  Wim Taymans  <wim@fluendo.com>
3940
3941         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
3942         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
3943         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3944         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3945         (gst_pad_send_event), (gst_pad_start_task):
3946         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
3947         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
3948         (gst_queue_sink_activate), (gst_queue_src_activate),
3949         (gst_queue_change_state):
3950         * gst/gstqueue.h:
3951         Fix state changes for non sinks. We now change sinks, then elements
3952         with unconnected srcpads, then the rest.
3953         More efficient queue unlocking in flush and state changes.
3954         Set the pad activate mode even if it does not have an activate
3955         function.
3956
3957 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3958
3959         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
3960           Don't go in pull mode for non-seekable sources.
3961         * gst/elements/gsttypefindelement.h:
3962         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3963         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
3964         (free_entry), (stop_typefinding),
3965         (gst_type_find_element_handle_event), (find_peek),
3966         (gst_type_find_element_chain), (do_pull_typefind),
3967         (gst_type_find_element_change_state):
3968           Allow typefinding (w/o seeking) in push-mode, simplified version
3969           of what was in 0.8.
3970         * gst/gstutils.c: (gst_buffer_join):
3971         * gst/gstutils.h:
3972           gst_buffer_join() from 0.8.
3973
3974 2005-05-25  Wim Taymans  <wim@fluendo.com>
3975
3976         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3977         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3978         (gst_pad_send_event), (gst_pad_start_task):
3979         Disable attempt at mode switching until it is figured out.
3980
3981 2005-05-25  Wim Taymans  <wim@fluendo.com>
3982
3983         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
3984         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3985         (gst_basesink_finish_preroll), (gst_basesink_chain),
3986         (gst_basesink_loop), (gst_basesink_activate),
3987         (gst_basesink_change_state):
3988         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
3989         (gst_basesrc_get_range), (gst_basesrc_loop),
3990         (gst_basesrc_activate):
3991         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3992         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3993         (gst_real_pad_init), (gst_real_pad_set_property),
3994         (gst_real_pad_get_property), (gst_pad_set_active),
3995         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
3996         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
3997         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
3998         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
3999         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4000         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
4001         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
4002         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
4003         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
4004         (gst_pad_stop_task):
4005         * gst/gstpad.h:
4006         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
4007         (gst_queue_loop), (gst_queue_src_activate):
4008         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
4009         (gst_task_get_state):
4010         * gst/gsttask.h:
4011         * gst/schedulers/threadscheduler.c:
4012         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
4013         Implement gst_pad_pause/start/stop_task(), take STREAM lock
4014         in task function.
4015         Remove ACTIVE pad flag, use FLUSHING everywhere
4016         Added _pad_chain(), _pad_get_range() to call chain/getrange 
4017         functions.
4018         Add locks around IS_FLUSHING when reading.
4019         Take STREAM lock in chain(), get_range() functions so plugins
4020         don't need to take it anymore.
4021         
4022
4023
4024 2005-05-25  Wim Taymans  <wim@fluendo.com>
4025
4026         * tools/gst-launch.c: (event_loop):
4027         Unref message after using its contents instead of
4028         before.
4029
4030 2005-05-24  Wim Taymans  <wim@fluendo.com>
4031
4032         * docs/design/draft-ghostpads.txt:
4033         * docs/design/draft-push-pull.txt:
4034         * docs/design/draft-query.txt:
4035         * docs/design/part-overview.txt:
4036         Docs updates, added general overview doc.
4037
4038 2005-05-21  David Schleef  <ds@schleef.org>
4039
4040         * docs/gst/tmpl/old/GstBin.sgml:
4041         * docs/gst/tmpl/old/GstBuffer.sgml:
4042         * docs/gst/tmpl/old/GstCaps.sgml:
4043         * docs/gst/tmpl/old/GstClock.sgml:
4044         * docs/gst/tmpl/old/GstCompat.sgml:
4045         * docs/gst/tmpl/old/GstData.sgml:
4046         * docs/gst/tmpl/old/GstElement.sgml:
4047         * docs/gst/tmpl/old/GstEvent.sgml:
4048         * docs/gst/tmpl/old/GstIndex.sgml:
4049         * docs/gst/tmpl/old/GstStructure.sgml:
4050         * docs/gst/tmpl/old/GstTag.sgml:
4051         * docs/gst/tmpl/old/cothreads.sgml:
4052         * docs/gst/tmpl/old/cothreads_compat.sgml:
4053         * docs/gst/tmpl/old/gettext.sgml:
4054         * docs/gst/tmpl/old/gobject2gtk.sgml:
4055         * docs/gst/tmpl/old/grammar.tab.sgml:
4056         * docs/gst/tmpl/old/gst-i18n-app.sgml:
4057         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
4058         * docs/gst/tmpl/old/gst_private.sgml:
4059         * docs/gst/tmpl/old/gstaggregator.sgml:
4060         * docs/gst/tmpl/old/gstarch.sgml:
4061         * docs/gst/tmpl/old/gstatomic_impl.sgml:
4062         * docs/gst/tmpl/old/gstbufferstore.sgml:
4063         * docs/gst/tmpl/old/gstdata_private.sgml:
4064         * docs/gst/tmpl/old/gstdisksink.sgml:
4065         * docs/gst/tmpl/old/gstdisksrc.sgml:
4066         * docs/gst/tmpl/old/gstelementfactory.sgml:
4067         * docs/gst/tmpl/old/gstextratypes.sgml:
4068         * docs/gst/tmpl/old/gstfakesink.sgml:
4069         * docs/gst/tmpl/old/gstfakesrc.sgml:
4070         * docs/gst/tmpl/old/gstfdsink.sgml:
4071         * docs/gst/tmpl/old/gstfdsrc.sgml:
4072         * docs/gst/tmpl/old/gstfilesink.sgml:
4073         * docs/gst/tmpl/old/gstfilesrc.sgml:
4074         * docs/gst/tmpl/old/gsthttpsrc.sgml:
4075         * docs/gst/tmpl/old/gstidentity.sgml:
4076         * docs/gst/tmpl/old/gstindexfactory.sgml:
4077         * docs/gst/tmpl/old/gstmarshal.sgml:
4078         * docs/gst/tmpl/old/gstmd5sink.sgml:
4079         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
4080         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
4081         * docs/gst/tmpl/old/gstpadtemplate.sgml:
4082         * docs/gst/tmpl/old/gstpipefilter.sgml:
4083         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
4084         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
4085         * docs/gst/tmpl/old/gstshaper.sgml:
4086         * docs/gst/tmpl/old/gstspider.sgml:
4087         * docs/gst/tmpl/old/gstspideridentity.sgml:
4088         * docs/gst/tmpl/old/gststatistics.sgml:
4089         * docs/gst/tmpl/old/gsttee.sgml:
4090         * docs/gst/tmpl/old/gsttimecache.sgml:
4091         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
4092         * docs/gst/tmpl/old/gstxmlregistry.sgml:
4093         * docs/gst/tmpl/old/gthread-cothreads.sgml:
4094         * docs/gst/tmpl/old/types.sgml:
4095           I didn't intend to add these or check them in.
4096
4097 2005-05-19  David Schleef  <ds@schleef.org>
4098
4099         * configure.ac: Use -no-common everywhere.  In a sane world, it
4100           would be the default in libtool, because without it, you can't
4101           build DLLs on Windows.
4102         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
4103         * docs/gst/gstreamer-sections.txt:
4104         * docs/gst/tmpl/gstcpu.sgml:
4105         * docs/gst/tmpl/gstdata.sgml:
4106         * docs/gst/tmpl/gstthread.sgml:
4107
4108 2005-05-19  David Schleef  <ds@schleef.org>
4109
4110         * gst/gstminiobject.c: (gst_value_set_mini_object),
4111         (gst_value_take_mini_object), (gst_value_get_mini_object):
4112         * gst/gstminiobject.h: Add GValue set/get functions.
4113
4114 2005-05-19  Wim Taymans  <wim@fluendo.com>
4115
4116         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
4117         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
4118         (gst_subbuffer_init), (gst_buffer_is_span_fast):
4119         * gst/gstbuffer.h:
4120         * gst/gstbus.c: (gst_bus_post):
4121         * gst/gstelement.c: (gst_element_get_random_pad):
4122         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
4123         Make subbufer unref the parent in finalize.
4124         some more debugging info.
4125
4126
4127 2005-05-19  Wim Taymans  <wim@fluendo.com>
4128
4129         * gst/base/gstbasesink.c: (gst_basesink_class_init),
4130         (gst_basesink_init), (gst_basesink_finalize),
4131         (gst_basesink_activate), (gst_basesink_change_state):
4132         Don't free preroll queue too early.
4133
4134 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4135
4136         * gst/Makefile.am:
4137         * gst/ROADMAP:
4138           Hi, I'm outdated. Please shoot me.
4139
4140 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4141
4142         * gst/gstpipeline.c: (gst_pipeline_send_event):
4143           Do not access variables after they have been deleted.
4144
4145 2005-05-19  Wim Taymans  <wim@fluendo.com>
4146
4147         * tools/gst-inspect.c: (print_plugin_features):
4148         A plugin feature does unfortunatly not use the
4149         object name yet...
4150
4151 2005-05-18  Wim Taymans  <wim@fluendo.com>
4152
4153         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
4154         Port _span() functions to new subbuffers.
4155
4156 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4157
4158         * gst/gstbin.c: (gst_bin_add_func):
4159           Fix clock settery in bins when adding kids after the clock has
4160           been selected.
4161
4162 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4163
4164         * gst/elements/gstidentity.c: (gst_identity_class_init):
4165           Workaround until signals support GstMiniObject.
4166
4167 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
4168
4169         * gst/gstbuffer.c:
4170         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
4171
4172 2005-05-18  Wim Taymans  <wim@fluendo.com>
4173
4174         * gst/base/Makefile.am:
4175         * gst/base/gstadapter.c: (gst_adapter_base_init),
4176         (gst_adapter_class_init), (gst_adapter_init),
4177         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
4178         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
4179         (gst_adapter_flush), (gst_adapter_available),
4180         (gst_adapter_available_fast):
4181         * gst/base/gstadapter.h:
4182         Ported and added adapter to the base classes.
4183
4184 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4185
4186         * gst/gst.c:
4187         * gst/gstmessage.c:
4188           Make sure the class is reffed/unreffed once before threads can be
4189           used.  Fixes #304551.
4190
4191 2005-05-17  Wim Taymans  <wim@fluendo.com>
4192
4193         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
4194         (gst_basesink_chain_unlocked), (gst_basesink_activate):
4195         * gst/gstminiobject.c: (gst_mini_object_get_type),
4196         (gst_mini_object_free):
4197         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
4198         (gst_pad_push), (gst_pad_push_event):
4199         * gst/gstqueue.c: (gst_queue_change_state):
4200         Don't queue buffers in basesink when we are flushing.
4201         Unref buffer when flushing in basesink.
4202         Flush queue when going to READY
4203         Unref buffer when _push() returns an error.
4204         Don't free MiniObject instance when refcount is incremented
4205         in _finalize() so that we can recover objects.
4206
4207 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4208
4209         * docs/manual/advanced-schedulers.xml:
4210         * docs/manual/appendix-checklist.xml:
4211         * docs/pwg/advanced-clock.xml:
4212         * docs/pwg/advanced-interfaces.xml:
4213         * docs/pwg/advanced-request.xml:
4214         * docs/pwg/advanced-types.xml:
4215         * docs/pwg/intro-preface.xml:
4216         * examples/plugins/example.c: (gst_example_get_type),
4217         (gst_example_class_init), (gst_example_chain),
4218         (gst_example_set_property), (gst_example_get_property),
4219         (gst_example_change_state), (plugin_init):
4220         * examples/plugins/example.h:
4221           small doc fixes
4222
4223 2005-05-17  Wim Taymans  <wim@fluendo.com>
4224
4225         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
4226         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
4227         * gst/gstqueue.c: (gst_queue_change_state):
4228         Clear queue when going to READY.
4229         Remove IN_SETCAPS flag too.
4230
4231 2005-05-17  Tim-Philipp M??ller  <tim at centricular dot net>
4232
4233         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
4234           Remove implicit cast from gboolean to GstElementStateReturn;
4235           make sure we still return failure in paused => ready case if
4236           the parent class fails to change state and our own stop 
4237           vfunc succeeds.
4238
4239 2005-05-17  Wim Taymans  <wim@fluendo.com>
4240
4241         * tools/gst-launch.c: (event_loop):
4242         Message was unreffed too soon.
4243
4244 2005-05-16  Andy Wingo  <wingo@pobox.com>
4245
4246         * gst/gstbin.c (sink_iterator_filter): Err... um...
4247
4248         * check/gst/gstbin.c (test_ghost_pads): New test for the
4249         ghosting-if-elements-not-in-same-bin behavior.
4250
4251 2005-05-16  David Schleef  <ds@schleef.org>
4252
4253         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
4254         accessing refcount directly.
4255
4256 2005-05-15  David Schleef  <ds@schleef.org>
4257
4258         * check/Makefile.am: remove GstData checks
4259         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
4260         * gst/Makefile.am: add miniobject, remove data
4261         * gst/gst.h: add miniobject, remove data
4262         * gst/gstdata.c: remove
4263         * gst/gstdata.h: remove
4264         * gst/gstdata_private.h: remove
4265         * gst/gsttypes.h: remove GstEvent and GstMessage
4266         * gst/gstelement.c: (gst_element_post_message): fix for API changes
4267         * gst/gstmarshal.list: change BOXED -> OBJECT
4268
4269         Implement GstMiniObject.
4270         * gst/gstminiobject.c:
4271         * gst/gstminiobject.h:
4272
4273         Modify to be subclasses of GstMiniObject.
4274         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
4275         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
4276         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
4277         (gst_subbuffer_get_type), (gst_subbuffer_init),
4278         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
4279         (gst_buffer_span):
4280         * gst/gstbuffer.h:
4281         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
4282         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
4283         (_gst_event_copy), (gst_event_new):
4284         * gst/gstevent.h:
4285         * gst/gstmessage.c: (_gst_message_initialize),
4286         (gst_message_get_type), (gst_message_class_init),
4287         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
4288         (gst_message_new), (gst_message_new_error),
4289         (gst_message_new_warning), (gst_message_new_tag),
4290         (gst_message_new_state_changed), (gst_message_new_application):
4291         * gst/gstmessage.h:
4292         * gst/gstprobe.c: (gst_probe_perform),
4293         (gst_probe_dispatcher_dispatch):
4294         * gst/gstprobe.h:
4295         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
4296         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
4297         (_gst_query_copy), (gst_query_new):
4298
4299         Update elements for GstData -> GstMiniObject changes
4300         * gst/gstquery.h:
4301         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
4302         (gst_queue_chain), (gst_queue_loop):
4303         * gst/elements/gstbufferstore.c:
4304         (gst_buffer_store_add_buffer_func),
4305         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
4306         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4307         (gst_fakesink_render):
4308         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4309         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
4310         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
4311         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
4312         (gst_filesrc_create_read):
4313         * gst/elements/gstidentity.c: (gst_identity_class_init):
4314         * gst/elements/gsttypefindelement.c:
4315         (gst_type_find_element_src_event), (free_entry_buffers),
4316         (gst_type_find_element_handle_event):
4317         * libs/gst/dataprotocol/dataprotocol.c:
4318         (gst_dp_header_from_buffer):
4319         * libs/gst/dataprotocol/dataprotocol.h:
4320         * libs/gst/dataprotocol/dp-private.h:
4321
4322 2005-05-15  David Schleef  <ds@schleef.org>
4323
4324         * gst/elements/gstelements.c: Don't include headers that were
4325         just removed.
4326
4327 2005-05-15  David Schleef  <ds@schleef.org>
4328
4329         * gst/elements/Makefile.am: Remove some elements that don't
4330         need to be in the core (or even exist at all).
4331         * gst/elements/gstaggregator.c:
4332         * gst/elements/gstaggregator.h:
4333         * gst/elements/gstmd5sink.c:
4334         * gst/elements/gstmd5sink.h:
4335         * gst/elements/gstmultifilesrc.c:
4336         * gst/elements/gstmultifilesrc.h:
4337         * gst/elements/gstpipefilter.c:
4338         * gst/elements/gstpipefilter.h:
4339         * gst/elements/gstshaper.c:
4340         * gst/elements/gstshaper.h:
4341         * gst/elements/gststatistics.c:
4342         * gst/elements/gststatistics.h:
4343         * po/POTFILES.in: Remove above files.
4344
4345 2005-05-14  Andy Wingo  <wingo@pobox.com>
4346
4347         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
4348         so as to get the refs right.
4349         (sink_iterator_filter): New function, wraps bin_element_is_sink,
4350         unreffing objects that don't pass the filter.
4351
4352         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
4353         gst_element_set_bus.
4354         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
4355         normal cases, this will destroy the bus.
4356
4357         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
4358         object.
4359
4360         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
4361         has no sinks.
4362
4363 2005-05-13  Andy Wingo  <wingo@pobox.com>
4364
4365         * gst/gstutils.c (gst_element_link_pads): Instead of calling
4366         gst_pad_link, call pad_link_maybe_ghosting,
4367         (pad_link_maybe_ghosting): Links pads, making sure that the
4368         elements being linked are in the same bin.
4369         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
4370         Helpers for pad_link_maybe_ghosting.
4371
4372 2005-05-13  Tim-Philipp M??ller  <tim at centricular dot net>
4373
4374         * configure.ac:
4375           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
4376
4377 2005-05-13  Tim-Philipp M??ller  <tim at centricular dot net>
4378
4379         * docs/design/part-element-source.txt:
4380           Mention GstPushSrc
4381
4382 2005-05-12  Wim Taymans  <wim@fluendo.com>
4383
4384         * gst/base/gstbasesink.c: (gst_basesink_init),
4385         (gst_basesink_activate):
4386         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
4387         (gst_basesrc_is_seekable):
4388         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4389         (bin_element_is_sink), (gst_bin_change_state):
4390         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
4391         * gst/gstelement.h:
4392         Identify sinks by their flag to avoid overly complicated
4393         checks (fow now).
4394         Do state changes even for elements not reachable from the
4395         sinks.
4396         BaseSink is a sink now :)
4397         Some more debugging info in the basesrc.
4398
4399
4400 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4401
4402         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
4403           Implement _query on a bin, similar to _send_event.
4404
4405 2005-05-12  Tim-Philipp M??ller  <tim at centricular dot net>
4406
4407         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
4408           Discont event offset format should be GST_FORMAT_BYTES,
4409           not GST_FORMAT_TIME.
4410
4411 2005-05-12  Wim Taymans  <wim@fluendo.com>
4412
4413         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
4414         Same fix as Ronald's but without the signal. 
4415
4416 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4417
4418         * gst/gstutils.c: (gst_element_query_position):
4419           No, an element is not a pad.
4420
4421 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4422
4423         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
4424         (gst_bin_get_state):
4425           If a child is removed from a bin while we remove the child from
4426           the bin and while we're retrieving its state, signal this to the
4427           get_state function so we abort the wait (instead of waiting for
4428           a timeout) and can immediately re-iterate over all other elements.
4429
4430 2005-05-12  Wim Taymans  <wim@fluendo.com>
4431
4432         * gst/base/Makefile.am:
4433         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
4434         (gst_basesrc_start):
4435         * gst/base/gstbasesrc.h:
4436         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
4437         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
4438         (gst_pushsrc_init), (gst_pushsrc_create):
4439         * gst/base/gstpushsrc.h:
4440         Added is_seekable to BaseSrc
4441         Added simple PushSrc.
4442
4443 2005-05-11  Wim Taymans  <wim@fluendo.com>
4444
4445         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
4446         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4447         (gst_element_link_pads), (gst_element_query_position),
4448         (gst_element_query_convert), (intersect_caps_func),
4449         (gst_pad_query_position), (gst_pad_query_convert):
4450         Fix refcounting in utils function.
4451         No point in trying to activate a pad when it's added, it could
4452         be added from the state change function and then we deadlock, the
4453         element has to decide what to do.
4454
4455 2005-05-10  Andy Wingo  <wingo@pobox.com>
4456
4457         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
4458         *all* the arguments.
4459
4460         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
4461         stream lock if it's a FLUSH_DONE; normal flushes don't get the
4462         lock (according to the docs -- if this is wrong change the docs).
4463
4464         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
4465         flush messages in the NULL state.
4466
4467         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
4468         message immediately and return.
4469         (gst_bus_set_flushing): New function. If a bus is flushing, it
4470         flushes out any queued messages and immediately unrefs new
4471         messages. This is so when an element goes to NULL, all of the
4472         unhandled messages coming from it can be freed, and their
4473         references to the element dropped. In other words: message source
4474         ref considered harmful :P
4475
4476         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
4477         we're finished with it.
4478
4479         * gst/gstmessage.c (gst_message_new_state_changed): 
4480
4481 2005-05-10  Wim Taymans  <wim@fluendo.com>
4482
4483         * gst/gstvalue.c: (gst_value_compare_flags),
4484         (gst_value_serialize_flags), (gst_value_deserialize_flags),
4485         (_gst_value_initialize):
4486         Added flags serialize/deserialize/compare code.
4487
4488 2005-05-09  Andy Wingo  <wingo@pobox.com>
4489
4490         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
4491         Intersect the peer's caps with our caps.
4492
4493 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4494
4495         * gst/base/gsttypefindhelper.c: (helper_find_peek):
4496         * gst/elements/gsttypefindelement.c: (find_peek):
4497           Handle negative offsets better. Fixes decodebin.
4498
4499 2005-05-09  Wim Taymans  <wim@fluendo.com>
4500
4501         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
4502         (gst_base_transform_event):
4503         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
4504         Implement accept_caps.
4505         Fix silly lock/unlock mismatch in base class.
4506
4507 2005-05-09  Wim Taymans  <wim@fluendo.com>
4508
4509         * docs/design/draft-push-pull.txt:
4510         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
4511         * gst/elements/gstfilesink.c: (gst_filesink_init),
4512         (gst_filesink_query):
4513         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
4514         (gst_type_find_handle_src_query), (find_element_get_length):
4515         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
4516         * gst/gstelement.h:
4517         * gst/gstmessage.c:
4518         * gst/gstmessage.h:
4519         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
4520         (gst_real_pad_get_caps_unlocked),
4521         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
4522         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4523         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
4524         (gst_real_pad_dispose), (gst_real_pad_finalize),
4525         (gst_pad_load_and_link), (gst_pad_save_thyself),
4526         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
4527         (gst_pad_check_pull_range), (gst_pad_pull_range),
4528         (gst_pad_template_get_type), (gst_pad_template_class_init),
4529         (gst_pad_template_init), (gst_pad_template_dispose),
4530         (name_is_valid), (gst_static_pad_template_get),
4531         (gst_pad_template_new), (gst_static_pad_template_get_caps),
4532         (gst_pad_template_get_caps), (gst_pad_set_element_private),
4533         (gst_pad_get_element_private), (gst_pad_start_task),
4534         (gst_pad_pause_task), (gst_pad_stop_task),
4535         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
4536         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
4537         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
4538         (gst_ghost_pad_new):
4539         * gst/gstpad.h:
4540         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
4541         (gst_query_new_position), (gst_query_set_position),
4542         (gst_query_parse_position), (gst_query_new_convert),
4543         (gst_query_set_convert), (gst_query_parse_convert):
4544         * gst/gstquery.h:
4545         * gst/gstqueryutils.c:
4546         * gst/gstqueryutils.h:
4547         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4548         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
4549         (gst_queue_handle_src_query):
4550         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4551         (gst_element_query_position), (gst_element_query_convert),
4552         (intersect_caps_func), (gst_pad_query_position),
4553         (gst_pad_query_convert):
4554         * gst/gstutils.h:
4555         * tools/gst-inspect.c: (print_pad_info):
4556         * tools/gst-xmlinspect.c: (print_element_info):
4557         Remove old query functions. Ported old code.
4558         Added position/convert helper functions to gstutils.
4559         Reordered gstpad.c code, grouping relevant things.
4560         Remove gst_message_new(), always need to speficy a specific
4561         message.
4562
4563
4564 2005-05-09  Andy Wingo  <wingo@pobox.com>
4565
4566         * gst/gstiterator.h: Add some includes.
4567
4568         * gst/gstqueryutils.h: Include more headers.
4569
4570         * gst/gstpad.h:
4571         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
4572         some uses of gst_pad_query.
4573
4574         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
4575         NULL out parameters.
4576         (gst_query_new_position): New proc, allocates a new position
4577         query.
4578
4579         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
4580         gstqueryutils.c to the build.
4581
4582         * gst/gststructure.c (gst_structure_set_valist): Implement with
4583         the generic G_VALUE_COLLECT.
4584         
4585 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
4586
4587         * gst/Makefile.am: (gst_headers):
4588         Added gstqueryutils.h to the list of headers to install, that was
4589         a 'nachty' move wingo :)
4590
4591 2005-05-06  Andy Wingo  <wingo@pobox.com>
4592
4593         * gst/gstquery.h
4594         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
4595         GstData, init a memchunk.
4596         (standard_definitions): Add a few query types, deprecate a few.
4597         (gst_query_get_type): New proc.
4598         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
4599         implementation.
4600         (gst_query_new_application, gst_query_get_structure): New public
4601         procs.
4602
4603         * docs/design/draft-query.txt: Removed LINKS from the query types,
4604         because all the rest can be dispatched to other pads -- seemed
4605         ugly to have a query that couldn't be dispatched. internal_links
4606         is fine as a pad method.
4607
4608         * gst/gstpad.h: Add query2 as a pad method, add the new functions
4609         in gstpad.c, but maintain binary compatibility for the moment.
4610         Will fix before 0.9 is out.
4611
4612         * gst/gstqueryutils.c: 
4613         * gst/gstqueryutils.h: New files, implement 3 methods for each
4614         query type: parse_query, parse_response, and set. Probably need an
4615         allocator as well.
4616
4617         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
4618
4619         * gst/elements/gstfilesink.c (gst_filesink_query2):
4620         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
4621         query_types, and formats methods.
4622
4623         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
4624         (gst_pad_set_query2_function): New functions.
4625         (gst_real_pad_init): Set query2_default as the default query2
4626         function. Basically just dispatches to internally linked pads.
4627
4628         Needs review!
4629         
4630         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
4631         without using the atomic operations. Only one thread can possibly
4632         be accessing the data at this point. Changed so as to avoid
4633         gst_atomic operations.
4634
4635 2005-05-06  Wim Taymans  <wim@fluendo.com>
4636
4637         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
4638         Also set caps if we use the fallback buffer alloc.
4639
4640 2005-05-06  Tim-Philipp M??ller  <tim at centricular dot net>
4641
4642         * docs/gst/Makefile.am:
4643         * docs/gst/gstreamer-docs.sgml:
4644         * docs/gst/gstreamer-sections.txt:
4645         * docs/gst/tmpl/gstatomic.sgml:
4646         * docs/gst/tmpl/gstmemchunk.sgml:
4647         * testsuite/elements/struct_i386.h:
4648         * win32/GStreamer.vcproj:
4649         * win32/Makefile:
4650           Purge GstAtomic stuff from docs and win32 makefiles as well
4651
4652 2005-05-06  Wim Taymans  <wim@fluendo.com>
4653
4654         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
4655         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
4656         * gst/gstpad.c: (gst_pad_peer_get_caps):
4657         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4658         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
4659         (gst_queue_src_activate), (gst_queue_change_state):
4660         * gst/gstqueue.h:
4661         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4662         (intersect_caps_func):
4663         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
4664         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
4665         Some fixes for the peer_get_caps() change.
4666
4667 2005-05-06  Wim Taymans  <wim@fluendo.com>
4668
4669         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
4670         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
4671         (gst_basesink_activate):
4672         Actually do something with error codes returned from the push
4673         functions.
4674
4675 2005-05-06  Wim Taymans  <wim@fluendo.com>
4676
4677         * docs/design/part-element-sink.txt:
4678         * docs/design/part-element-source.txt:
4679         * gst/base/gstbasesink.c: (gst_basesink_class_init),
4680         (gst_basesink_event), (gst_basesink_activate):
4681         * gst/base/gstbasesink.h:
4682         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
4683         (gst_basesrc_activate):
4684         * gst/base/gstbasesrc.h:
4685         * gst/gstelement.c: (gst_element_pads_activate):
4686         Some more documentation.
4687         Fixed scheduling decision in _pads_activate().
4688
4689 2005-05-05  Andy Wingo  <wingo@pobox.com>
4690
4691         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
4692         the test suite.
4693
4694 2005-05-05  Wim Taymans  <wim@fluendo.com>
4695
4696         * gst/base/Makefile.am:
4697         * gst/base/gstbasesink.h:
4698         * gst/base/gstbasesrc.c: (gst_basesrc_init),
4699         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
4700         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
4701         (gst_collectpads_class_init), (gst_collectpads_init),
4702         (gst_collectpads_finalize), (gst_collectpads_new),
4703         (gst_collectpads_set_function), (gst_collectpads_add_pad),
4704         (find_pad), (gst_collectpads_remove_pad),
4705         (gst_collectpads_is_active), (gst_collectpads_collect),
4706         (gst_collectpads_collect_range), (gst_collectpads_start),
4707         (gst_collectpads_stop), (gst_collectpads_peek),
4708         (gst_collectpads_pop), (gst_collectpads_available),
4709         (gst_collectpads_read), (gst_collectpads_flush),
4710         (gst_collectpads_chain):
4711         * gst/base/gstcollectpads.h:
4712         * gst/elements/Makefile.am:
4713         * gst/elements/gstelements.c:
4714         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4715         (gst_fakesink_get_times), (gst_fakesink_event),
4716         (gst_fakesink_preroll), (gst_fakesink_render):
4717         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
4718         (gst_filesink_init), (gst_filesink_set_location),
4719         (gst_filesink_open_file), (gst_filesink_close_file),
4720         (gst_filesink_pad_query), (gst_filesink_event),
4721         (gst_filesink_render), (gst_filesink_change_state):
4722         * gst/elements/gstfilesink.h:
4723         Added object to help in making collect pad based elements.
4724         Ported filesink.
4725         Make event function in sink baseclass return gboolean.
4726
4727 2005-05-05  Wim Taymans  <wim@fluendo.com>
4728
4729         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
4730         (gst_bin_get_by_name):
4731         * gst/gstbuffer.h:
4732         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
4733         (gst_clock_finalize):
4734         * gst/gstdata.c: (gst_data_replace):
4735         * gst/gstdata.h:
4736         * gst/gstelement.c: (gst_element_request_pad),
4737         (gst_element_pads_activate):
4738         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
4739         (gst_object_unref):
4740         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4741         (gst_pad_set_checkgetrange_function),
4742         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
4743         (gst_pad_check_pull_range), (gst_pad_pull_range),
4744         (gst_static_pad_template_get_caps), (gst_pad_start_task),
4745         (gst_pad_pause_task), (gst_pad_stop_task):
4746         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4747         (gst_element_request_pad), (gst_pad_proxy_getcaps):
4748         Fix name lookup in GstBin.
4749         Added _data_replace() function and _buffer_replace()
4750         Use finalize method to clean up clock.
4751         Fix refcounting on request pads.
4752         Fix pad schedule mode error.
4753         Some more object refcounting debug info,
4754
4755
4756 2005-05-04  Andy Wingo <wingo@pobox.com>
4757
4758         * check/Makefile.am:
4759         * docs/gst/tmpl/gstatomic.sgml:
4760         * docs/gst/tmpl/gstplugin.sgml:
4761         * gst/base/gstbasesink.c: (gst_basesink_activate):
4762         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
4763         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
4764         (gst_basesrc_query), (gst_basesrc_set_property),
4765         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
4766         (gst_basesrc_activate):
4767         * gst/base/gstbasesrc.h:
4768         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
4769         (gst_base_transform_src_activate):
4770         * gst/elements/gstelements.c:
4771         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4772         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
4773         * gst/elements/gsttee.c: (gst_tee_sink_activate):
4774         * gst/elements/gsttypefindelement.c: (find_element_get_length),
4775         (gst_type_find_element_checkgetrange),
4776         (gst_type_find_element_activate):
4777         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
4778         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
4779         (gst_caps_load_thyself):
4780         * gst/gstelement.c: (gst_element_pads_activate),
4781         (gst_element_save_thyself), (gst_element_restore_thyself):
4782         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
4783         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
4784         * gst/gstpad.h:
4785         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
4786         (gst_xml_parse_file), (gst_xml_parse_memory),
4787         (gst_xml_get_element), (gst_xml_make_element):
4788         * gst/indexers/gstfileindex.c: (gst_file_index_load),
4789         (_file_index_id_save_xml), (gst_file_index_commit):
4790         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
4791         (read_enum), (load_pad_template), (load_feature), (load_plugin),
4792         (load_paths):
4793         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
4794         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
4795         * tools/gst-complete.c: (main):
4796         * tools/gst-compprep.c: (main):
4797         * tools/gst-inspect.c: (print_element_properties_info):
4798         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
4799         * tools/gst-xmlinspect.c: (print_element_properties):
4800         GCC 4 fixen.
4801         
4802 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
4803
4804         * gst/gstplugin.c: (gst_plugin_check_module),
4805         (gst_plugin_check_file), (gst_plugin_load_file):
4806             apply patch from #172526 to make register work on MacOSX
4807
4808 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4809
4810         * docs/gst/tmpl/gstconfig.sgml:
4811         * gst/gstconfig.h.in:
4812           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
4813         * testsuite/debug/printf_extension.c: (main):
4814           Do not use GST_PTR_FORMAT on pointers to types with
4815           sizeof < sizeof(gpointer).  Fixes test on 64-bit
4816         * testsuite/elements/property.h:
4817           use correct printf format
4818
4819 2005-05-02  Wim Taymans  <wim@fluendo.com>
4820
4821         * docs/design/draft-push-pull.txt:
4822         * docs/design/draft-query.txt:
4823         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
4824         (gst_basesrc_start):
4825         Added draft for new query API.
4826         Added draft for better selecting scheduling methods.
4827         Make basesrc ignore length if the subclass does not support
4828         it.
4829
4830 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4831
4832         * gst/Makefile.am:
4833           possible fixes for automake-1.5 - _LIBADD is reserved
4834
4835 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4836
4837         * docs/faq/Makefile.am:
4838         * docs/manual/Makefile.am:
4839         * docs/manuals.mak:
4840         * docs/pwg/Makefile.am:
4841         * gst/Makefile.am:
4842           possible fixes for automake-1.5
4843
4844 2005-04-28  Wim Taymans  <wim@fluendo.com>
4845
4846         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4847         (gst_basesink_pad_getcaps), (gst_basesink_init),
4848         (gst_basesink_do_sync):
4849         * gst/gstclock.c: (gst_clock_entry_new):
4850         * gst/gstevent.c: (gst_event_discont_get_value):
4851         * gst/gstpipeline.c: (pipeline_bus_handler),
4852         (gst_pipeline_change_state):
4853         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
4854         Better debugging of clocking info.
4855         Allow NULL values when getting discont values.
4856
4857 2005-04-27  Wim Taymans  <wim@fluendo.com>
4858
4859         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4860         * check/gst/gstpad.c: (gst_pad_suite):
4861         Increase timeout for checks.
4862
4863 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4864
4865         * check/Makefile.am:
4866           fix the broken rule for cleanup.  Apparently this rule is
4867           only needed on FC2, so maybe this warrants further autotool
4868           inspection.
4869
4870 2005-04-26  Wim Taymans  <wim@fluendo.com>
4871
4872         * gst/gsttrashstack.h:
4873         Ooohh. a nasty one! After having a failed pop() from the stack,
4874         it's possible that the stack is empty. In that case, don't
4875         follow the NULL pointer.
4876
4877 2005-04-25  Wim Taymans  <wim@fluendo.com>
4878
4879         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4880         (gst_pad_set_checkgetrange_function),
4881         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
4882         (gst_pad_check_pull_range), (gst_pad_pull_range),
4883         (gst_static_pad_template_get_caps), (gst_pad_start_task),
4884         (gst_pad_pause_task), (gst_pad_stop_task):
4885         * gst/gstplugin.c: (gst_plugin_load):
4886         * gst/gstplugin.h:
4887         Remove gst_library_load as it does more harm than good with
4888         the new g_module flags.
4889         Revert bogus caps template check in pad linking, pad caps
4890         are important when linking not the template, which is more
4891         general than the current caps.
4892
4893 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4894
4895         * gst/autoplug/.cvsignore:
4896         * gst/autoplug/Makefile.am:
4897         * gst/autoplug/gstsearchfuncs.c:
4898         * gst/autoplug/gstsearchfuncs.h:
4899         * gst/autoplug/gstspider.c:
4900         * gst/autoplug/gstspider.h:
4901         * gst/autoplug/gstspideridentity.c:
4902         * gst/autoplug/gstspideridentity.h:
4903         * gst/autoplug/spidertest.c:
4904           Die, spider, die.
4905
4906 2005-04-25  Wim Taymans  <wim@fluendo.com>
4907
4908         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4909         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4910         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
4911         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
4912         * gst/gstpad.h:
4913         Added stubs for unimplemented functions. 
4914
4915 2005-04-24  David Schleef  <ds@schleef.org>
4916
4917         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
4918         please fix.
4919
4920 2005-04-24  David Schleef  <ds@schleef.org>
4921
4922         Convert everything from GstAtomicInt to g_atomic_int_*, and
4923         remove gstatomic.
4924         * gst/Makefile.am:
4925         * gst/gstatomic.c:
4926         * gst/gstatomic.h:
4927         * gst/gstatomic_impl.h:
4928         * gst/gstbuffer.c:
4929         * gst/gstcaps.c:
4930         * gst/gstcaps.h:
4931         * gst/gstclock.c:
4932         * gst/gstclock.h:
4933         * gst/gstdata.c:
4934         * gst/gstdata.h:
4935         * gst/gstdata_private.h:
4936         * gst/gstevent.c:
4937         * gst/gstinfo.c:
4938         * gst/gstinfo.h:
4939         * gst/gstmessage.c:
4940         * gst/gstobject.c:
4941         * gst/gstobject.h:
4942         * gst/gststructure.c:
4943         * gst/gststructure.h:
4944         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
4945         * gst/gstutils.h:
4946
4947 2005-04-24  David Schleef  <ds@schleef.org>
4948
4949         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
4950         make the regressions tests work.  Remove some code that is no
4951         longer true.
4952         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
4953         Disable warning for pads without templates.
4954
4955 2005-04-24  David Schleef  <ds@schleef.org>
4956
4957         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
4958         functions that handle filtered links.
4959         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
4960         removed functions.
4961         * gst/gstutils.c: Fix/remove utility functions that handle
4962         filtered caps.
4963         * gst/gstutils.h:
4964         * gst/gstvalue.c: Add serialization/deserialization of caps
4965         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
4966         requires fixing so that the filter caps notation creates
4967         a capsfilter element and sets the filter_caps property.  I
4968         think everyone probably wants to keep the shorthand notation.
4969         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
4970         * docs/gst/tmpl/gstpad.sgml:
4971
4972         * gst/elements/gstelements.c: Register capsfilter element.
4973         * gst/Makefile.am: fix spacing
4974         * docs/random/ds/0.9-suggested-changes: random
4975
4976 2005-04-23  David Schleef  <ds@schleef.org>
4977
4978         * gst/elements/Makefile.am:
4979         * gst/elements/gstcapsfilter.c: New element that acts like an
4980         identity, but filters caps.  Will eventually replace filtered
4981         caps in pad linking.
4982         * gst/gstutils.c: (gst_element_create_all_pads): New function
4983         to create all the ALWAYS pads that are registered with an
4984         element class.  This functionality should eventually be
4985         merged in with GstElement initialization.
4986         * gst/gstutils.h:
4987         * testsuite/trigger/README: part of trigger test code that should
4988         have been checked in a long time ago.
4989
4990 2005-04-23  David Schleef  <ds@schleef.org>
4991
4992         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
4993         needed with new versions of libtool (nobody will confirm this),
4994         and hard to carry around.
4995         * gst/autoplug/Makefile.am:
4996         * gst/base/Makefile.am:
4997         * gst/elements/Makefile.am:
4998         * gst/indexers/Makefile.am:
4999         * gst/schedulers/Makefile.am:
5000         * libs/gst/bytestream/Makefile.am:
5001         * libs/gst/control/Makefile.am:
5002         * libs/gst/dataprotocol/Makefile.am:
5003         * libs/gst/getbits/Makefile.am:
5004
5005 2005-04-21  Wim Taymans  <wim@fluendo.com>
5006
5007         * docs/design/draft-push-pull.txt:
5008         * docs/design/part-MT-refcounting.txt:
5009         * docs/design/part-TODO.txt:
5010         * docs/design/part-caps.txt:
5011         * docs/design/part-events.txt:
5012         * docs/design/part-gstbus.txt:
5013         * docs/design/part-gstpipeline.txt:
5014         * docs/design/part-messages.txt:
5015         * docs/design/part-push-pull.txt:
5016         * docs/design/part-query.txt:
5017         Some more docs.
5018
5019 2005-04-21  Wim Taymans  <wim@fluendo.com>
5020
5021         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
5022         (gst_message_new), (gst_message_new_error),
5023         (gst_message_new_warning), (gst_message_new_tag),
5024         (gst_message_new_state_changed), (gst_message_new_application),
5025         (gst_message_get_structure):
5026         * gst/gstmessage.h:
5027         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5028         (gst_structure_copy_conditional):
5029         Use parent refcount in GstMessage to ensure GstStructure
5030         consistency.
5031         Cleaned up headers a bit.
5032         
5033
5034 2005-04-20  Wim Taymans  <wim@fluendo.com>
5035
5036         * gst/base/gstbasesink.c: (gst_basesink_base_init),
5037         (gst_basesink_pad_getcaps), (gst_basesink_init),
5038         (gst_basesink_chain_unlocked):
5039         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
5040         (gst_type_find_helper):
5041         * gst/elements/gsttypefindelement.c:
5042         (gst_type_find_element_have_type), (gst_type_find_element_init),
5043         (stop_typefinding), (gst_type_find_element_handle_event),
5044         (find_suggest), (gst_type_find_element_chain),
5045         (gst_type_find_element_checkgetrange),
5046         (gst_type_find_element_getrange), (do_typefind),
5047         (gst_type_find_element_activate):
5048         * gst/gstbuffer.c: (_gst_buffer_sub_free),
5049         (gst_buffer_default_free), (gst_buffer_default_copy),
5050         (gst_buffer_set_caps):
5051         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
5052         (gst_caps_replace):
5053         * gst/gstmessage.c: (gst_message_new),
5054         (gst_message_new_state_changed):
5055         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
5056         (gst_pad_set_checkgetrange_function),
5057         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
5058         (gst_pad_set_caps), (gst_pad_check_pull_range),
5059         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
5060         * gst/gstpad.h:
5061         * gst/gsttypefind.c: (gst_type_find_register):
5062         Make gst_caps_replace() work like other _replace() functions.
5063         Use _caps_replace() where possible.
5064         Make sure _message_new() initialises its field.
5065         Add gst_static_pad_template_get_caps()
5066
5067
5068 2005-04-18  Andy Wingo  <wingo@pobox.com>
5069
5070         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
5071         on the peer, not the pad. I think that was a typo. Pass an extra
5072         arg to see if random access is possible. Activate the pads as
5073         PULL_RANGE if possible.
5074
5075         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
5076
5077         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
5078         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
5079         to PROP_....
5080
5081 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5082
5083         * docs/faq/using.xml:
5084           Add note on gstreamer-properties (#154996).
5085
5086 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5087
5088         * docs/random/bbb/optional-properties:
5089           Some analysis on optional properties.
5090
5091 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5092
5093         * docs/gst/tmpl/gstelementfactory.sgml:
5094         * gst/gstelement.h:
5095         * gst/gstelementfactory.c: (gst_element_factory_init),
5096         (gst_element_factory_cleanup), (gst_element_register),
5097         (__gst_element_factory_add_static_pad_template),
5098         (gst_element_factory_get_static_pad_templates),
5099         (gst_element_factory_can_src_caps),
5100         (gst_element_factory_can_sink_caps):
5101         * gst/registries/Makefile.am:
5102         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
5103         (gst_xml_registry_class_init), (gst_xml_registry_init),
5104         (gst_xml_registry_new), (gst_xml_registry_set_property),
5105         (gst_xml_registry_get_property), (get_time), (make_dir),
5106         (gst_xml_registry_get_perms_func),
5107         (plugin_times_older_than_recurse), (plugin_times_older_than),
5108         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
5109         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
5110         (add_to_char_array), (read_string), (read_uint), (read_enum),
5111         (load_pad_template), (load_feature), (load_plugin), (load_paths),
5112         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
5113         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
5114         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
5115         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
5116         (gst_xml_registry_rebuild):
5117         * gst/registries/gstlibxmlregistry.h:
5118         * tools/gst-compprep.c: (main):
5119         * tools/gst-inspect.c: (print_pad_templates_info):
5120         * tools/gst-xmlinspect.c: (print_element_info):
5121           Use libxml2 for registry parsing, use staticpadtemplates in
5122           elementfactories. Makes gst_init() +/- 10x faster.
5123
5124 2005-04-12  Wim Taymans  <wim@fluendo.com>
5125
5126         * gst/base/Makefile.am:
5127         * gst/base/gstbasesink.c: (gst_basesink_base_init),
5128         (gst_basesink_pad_getcaps), (gst_basesink_init),
5129         (gst_basesink_event), (gst_basesink_change_state):
5130         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
5131         (gst_basesrc_init), (gst_basesrc_query),
5132         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
5133         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
5134         (gst_basesrc_check_get_range), (gst_basesrc_loop),
5135         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
5136         (gst_basesrc_stop), (gst_basesrc_activate),
5137         (gst_basesrc_change_state):
5138         * gst/base/gsttypefindhelper.c: (helper_find_peek),
5139         (helper_find_suggest), (gst_type_find_helper):
5140         * gst/base/gsttypefindhelper.h:
5141         * gst/elements/Makefile.am:
5142         * gst/elements/gstelements.c:
5143         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
5144         (gst_fakesink_get_times), (gst_fakesink_event),
5145         (gst_fakesink_preroll), (gst_fakesink_render):
5146         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5147         (gst_fakesrc_init), (gst_fakesrc_event_handler),
5148         (gst_fakesrc_get_property), (gst_fakesrc_create),
5149         (gst_fakesrc_start), (gst_fakesrc_stop):
5150         * gst/elements/gstfakesrc.h:
5151         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
5152         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
5153         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
5154         (gst_filesrc_create_read), (gst_filesrc_create),
5155         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
5156         (gst_filesrc_start):
5157         * gst/elements/gsttypefindelement.c:
5158         (gst_type_find_element_have_type), (gst_type_find_element_init),
5159         (start_typefinding), (stop_typefinding), (push_buffer_store),
5160         (gst_type_find_element_handle_event),
5161         (gst_type_find_element_chain),
5162         (gst_type_find_element_checkgetrange),
5163         (gst_type_find_element_getrange), (do_typefind),
5164         (gst_type_find_element_activate),
5165         (gst_type_find_element_change_state):
5166         * gst/elements/gsttypefindelement.h:
5167         * gst/gstpipeline.c: (pipeline_bus_handler):
5168         Added typefind helper.
5169         Small preroll fix in the base sink.
5170         Disable typefind code in basesrc.
5171         Crude port of typefindelement.
5172         Fakesrc cleanups.
5173
5174
5175 2005-04-11  Wim Taymans  <wim@fluendo.com>
5176
5177         * check/gst/gstbus.c: (gstbus_suite):
5178         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
5179         * check/gstcheck.h:
5180           Fix up the timeout so that the test does not fail.
5181
5182 2005-04-06  Wim Taymans  <wim@fluendo.com>
5183
5184         * gst/base/README:
5185         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
5186         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
5187         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
5188         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
5189         (gst_basesrc_check_get_range), (gst_basesrc_loop),
5190         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
5191         (gst_basesrc_stop), (gst_basesrc_activate),
5192         (gst_basesrc_change_state), (basesrc_find_peek),
5193         (basesrc_find_suggest), (gst_basesrc_type_find):
5194         * gst/base/gstbasesrc.h:
5195         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
5196         (gst_filesrc_class_init), (gst_filesrc_init),
5197         (gst_filesrc_finalize), (gst_filesrc_set_location),
5198         (gst_filesrc_set_property), (gst_filesrc_get_property),
5199         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
5200         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
5201         (gst_filesrc_create_read), (gst_filesrc_create),
5202         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
5203         * gst/elements/gstfilesrc.h:
5204         * gst/gstelement.c: (gst_element_get_state_func),
5205         (gst_element_lost_state), (gst_element_pads_activate):
5206         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
5207         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
5208         (gst_pad_pull_range):
5209         * gst/gstpad.h:
5210         More work on the generic source base class, implement seeking,
5211         query.
5212         Make filesrc extend the base source class.
5213         Added gst_pad_set_checkgetrange_function to GstPad.
5214
5215 2005-04-06  Andy Wingo  <wingo@pobox.com>
5216
5217         * pkgconfig/gstreamer-base.pc.in:
5218         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
5219
5220         * pkgconfig/Makefile.am:
5221         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
5222
5223 2005-04-04  Wim Taymans  <wim@fluendo.com>
5224
5225         * gst/base/Makefile.am:
5226         * gst/base/README:
5227         * gst/base/gstbasesink.c: (gst_basesink_base_init),
5228         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
5229         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
5230         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
5231         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
5232         (gst_basesrc_base_init), (gst_basesrc_class_init),
5233         (gst_basesrc_init), (gst_basesrc_get_formats),
5234         (gst_basesrc_get_query_types), (gst_basesrc_query),
5235         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
5236         (gst_basesrc_set_property), (gst_basesrc_get_property),
5237         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
5238         (gst_basesrc_loop), (gst_basesrc_activate),
5239         (gst_basesrc_change_state):
5240         * gst/base/gstbasesrc.h:
5241         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
5242         (gst_fakesrc_class_init), (gst_fakesrc_init),
5243         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
5244         (gst_fakesrc_get_property), (gst_fakesrc_create):
5245         * gst/elements/gstfakesrc.h:
5246         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
5247         (gst_filesrc_open_file), (gst_filesrc_loop),
5248         (gst_filesrc_activate), (filesrc_find_peek),
5249         (gst_filesrc_type_find):
5250         Made base source class, make fakesrc extend it.
5251         Add comments to basesink class.
5252         Some filesrc cleanup.
5253
5254 2005-03-31  David Schleef  <ds@schleef.org>
5255
5256         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
5257         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
5258         expected to link against libgstreamer.
5259         * gst/base/Makefile.am: link against libgstreamer
5260         * gst/elements/Makefile.am: same
5261
5262 2005-03-31  Andy Wingo  <wingo@pobox.com>
5263
5264         * tests/instantiate/Makefile.am:
5265         * tests/instantiate/caps.c: Add test to test speed of caps copy
5266         and free.
5267
5268         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
5269         GMemChunk to be fair.
5270
5271         * gst/gsttrashstack.h: Remove warning about using the fallback
5272         trash stack implementation, it's still faster than malloc.
5273
5274 2005-03-30  Andy Wingo  <wingo@pobox.com>
5275
5276         * tests/complexity.c: Add a copyright.
5277
5278 2005-03-31  Wim Taymans  <wim@fluendo.com>
5279
5280         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
5281         (gst_base_transform_class_init), (gst_base_transform_init),
5282         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
5283         (gst_base_transform_get_property),
5284         (gst_base_transform_sink_activate),
5285         (gst_base_transform_src_activate),
5286         (gst_base_transform_change_state):
5287         * gst/base/gstbasetransform.h:
5288         * gst/elements/gstidentity.c: (gst_identity_class_init),
5289         (gst_identity_event), (gst_identity_check_perfect),
5290         (gst_identity_transform), (gst_identity_start),
5291         (gst_identity_stop):
5292         Added start/stop methods to transform base class so subclasses 
5293         don't need to deal with state changes even.
5294
5295 2005-03-31  Wim Taymans  <wim@fluendo.com>
5296
5297         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
5298         (gst_event_new_discontinuous), (gst_event_discont_get_value):
5299         * gst/gstevent.h:
5300         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
5301         (gst_pad_pull_range):
5302         Added rate to the discont event to prepare for variable speed
5303         and reverse playback.
5304
5305 2005-03-29  David Schleef  <ds@schleef.org>
5306
5307         * configure.ac:
5308         * testsuite/trigger/Makefile.am:
5309         * testsuite/trigger/trigger.c: A little example program to show
5310         how trigger-based elements can work.
5311
5312 2005-03-29  Wim Taymans  <wim@fluendo.com>
5313
5314         * gst/base/Makefile.am:
5315         * gst/base/README:
5316         * gst/base/gstbasesink.c: (gst_basesink_get_type),
5317         (gst_basesink_base_init), (gst_basesink_class_init),
5318         (gst_basesink_pad_getcaps), (gst_basesink_init),
5319         (gst_basesink_activate), (gst_basesink_change_state):
5320         * gst/base/gstbasesink.h:
5321         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
5322         (gst_base_transform_base_init), (gst_base_transform_finalize),
5323         (gst_base_transform_class_init), (gst_base_transform_init),
5324         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
5325         (gst_base_transform_event), (gst_base_transform_getrange),
5326         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
5327         (gst_base_transform_set_property),
5328         (gst_base_transform_get_property),
5329         (gst_base_transform_sink_activate),
5330         (gst_base_transform_src_activate),
5331         (gst_base_transform_change_state):
5332         * gst/base/gstbasetransform.h:
5333         * gst/elements/gstidentity.c: (gst_identity_finalize),
5334         (gst_identity_class_init), (gst_identity_init),
5335         (gst_identity_event), (gst_identity_check_perfect),
5336         (gst_identity_transform), (gst_identity_set_property),
5337         (gst_identity_get_property), (gst_identity_change_state):
5338         * gst/elements/gstidentity.h:
5339         * gst/gstelement.c: (gst_element_get_state_func),
5340         (gst_element_lost_state), (gst_element_pads_activate):
5341         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
5342         (gst_pad_check_pull_range), (gst_pad_pull_range):
5343         * gst/gstpad.h:
5344         Simplify pad activation.
5345         Added function to check if pull_range can be performed.
5346         Error out when pulling inactive or flushing pads.
5347         Removed const from refcounted types as it does not make sense.
5348         Simplify pad templates in basesink
5349         Added base class for simple 1-to-1 transforms.
5350         Make identity subclass the base transform.
5351
5352 2005-03-29  Andy Wingo  <wingo@pobox.com>
5353
5354         * docs/libs/gstreamer-libs-overrides.txt: 
5355         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
5356         really don't understand what's going on, but like whatever. I want
5357         green buildbot!
5358
5359         * docs/gst/Makefile.am:
5360         * docs/libs/Makefile.am: Dist the overrides files.
5361
5362         * check/Makefile.am (clean-local): Remove .libs directories.
5363
5364         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
5365         elements to EXTRA_DIST, so po/ files are happy.
5366
5367         * po/POTFILES.in: Er, remove it here.
5368
5369         * po/POTFILES: Remove gstspider.c.
5370
5371         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
5372
5373         * docs/libs/gstreamer-libs-docs.sgml: 
5374         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
5375         bytestream.
5376
5377         * tests/complexity.c (main): Set the length of the preroll queue
5378         on the sinks to prevent a lockup.
5379
5380         * libs/gst/dataprotocol/Makefile.am: 
5381         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
5382         the same as the one in check/gst-libs/gdp.c.
5383
5384         * po/, docs/gst/: Commit automatic changes to docs and po files.
5385
5386         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
5387         the versioned libgstbase.
5388
5389         * check/Makefile.am: Depend on an unversioned gst-register, seems
5390         to make autoconf happier.
5391
5392         * gst/base/Makefile.am: Make libgstbase a versioned lib.
5393
5394 2005-03-28  Wim Taymans  <wim@fluendo.com>
5395
5396         * configure.ac:
5397         * docs/design/part-gstelement.txt:
5398         * docs/design/part-negotiation.txt:
5399         * docs/design/part-preroll.txt:
5400         * docs/design/part-scheduling.txt:
5401         * docs/design/part-states.txt:
5402         * gst/Makefile.am:
5403         * gst/base/Makefile.am:
5404         * gst/base/README:
5405         * gst/base/gstbasesink.c: (gst_basesink_get_template),
5406         (gst_basesink_base_init), (gst_basesink_class_init),
5407         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
5408         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
5409         (gst_basesink_set_pad_functions),
5410         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
5411         (gst_basesink_set_property), (gst_basesink_get_property),
5412         (gst_base_sink_get_template), (gst_base_sink_get_caps),
5413         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
5414         (gst_basesink_preroll_queue_push),
5415         (gst_basesink_preroll_queue_empty),
5416         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
5417         (gst_basesink_event), (gst_basesink_get_times),
5418         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
5419         (gst_basesink_chain_unlocked), (gst_basesink_chain),
5420         (gst_basesink_loop), (gst_basesink_activate),
5421         (gst_basesink_change_state):
5422         * gst/base/gstbasesink.h:
5423         * gst/elements/Makefile.am:
5424         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
5425         (gst_fakesink_class_init), (gst_fakesink_init),
5426         (gst_fakesink_set_property), (gst_fakesink_get_property),
5427         (gst_fakesink_get_times), (gst_fakesink_event),
5428         (gst_fakesink_preroll), (gst_fakesink_render),
5429         (gst_fakesink_change_state):
5430         * gst/elements/gstfakesink.h:
5431         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
5432         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
5433         * gst/gstelement.c: (gst_element_add_pad),
5434         (gst_element_get_state_func), (gst_element_abort_state),
5435         (gst_element_commit_state), (gst_element_lost_state),
5436         (gst_element_set_state), (gst_element_pads_activate):
5437         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
5438         * gst/gstpipeline.c: (gst_pipeline_send_event),
5439         (gst_pipeline_change_state):
5440         Added state change code.
5441         Added/updated docs.
5442         Added sink base class, make fakesink extend the base class.
5443         Small cleanups in GstPipeline.
5444
5445 2005-03-26  David Schleef  <ds@schleef.org>
5446
5447         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
5448         is broken and should be implemented in a different library.
5449         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
5450         * gst/gst.h: remove gstcpu.h
5451         * gst/gstcpu.c: remove
5452         * gst/gstcpu.h: remove
5453         * gst/Makefile.am.future: Remove this file.  It's ancient.
5454
5455 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5456
5457         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
5458         (gst_bin_send_event):
5459           Add default event/set_manager handlers. The set_manager handler
5460           takes care that the manager is distributed over kids that were
5461           already in the bin before the manager was set. The event handler
5462           is a utility virtual function that sends the event over all sinks,
5463           so that gst_element_send_event (bin, event); has the expected
5464           behaviour.
5465         * gst/gstpad.c: (gst_pad_event_default):
5466           Re-install default event handling for discontinuities, so that
5467           seeking works without requiring hacks in applications or extra
5468           code in sinks.
5469         * gst/gstpipeline.c: (gst_pipeline_class_init),
5470         (gst_pipeline_send_event):
5471           Half hack, half utility: set a pipeline to PAUSED for seek events,
5472           since that is the only way we can guarantee a/v sync. Means that
5473           you can do gst_element_seek (pipeline, method, pos); on a pipeline
5474           and it "just works".
5475
5476 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5477
5478         * gst/gstpipeline.c: (gst_pipeline_use_clock):
5479           Lock/unlock mismatch.
5480
5481 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5482
5483         * docs/faq/gst-uninstalled:
5484           add gst-plugins-base
5485         * docs/gst/Makefile.am:
5486           don't error out until docs are fixed
5487         * docs/gst/gstreamer.types:
5488           remove thread
5489
5490 2005-03-22  Wim Taymans  <wim@fluendo.com>
5491
5492         * check/Makefile.am:
5493         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
5494         * gst/gststructure.c: (gst_structure_set_valist),
5495         (gst_structure_copy_conditional):
5496         Activated more tests.
5497         Added message test.
5498         Added G_TYPE_POINTER to GstStructure.
5499         
5500
5501 2005-03-22  Wim Taymans  <wim@fluendo.com>
5502
5503         * docs/design/part-TODO.txt:
5504         * docs/design/part-events.txt:
5505         * docs/design/part-gstbin.txt:
5506         * docs/design/part-gstbus.txt:
5507         * docs/design/part-gstpipeline.txt:
5508         * docs/design/part-messages.txt:
5509         * gst/gstbus.c:
5510         * gst/gstmessage.c:
5511         Docs updates
5512
5513 2005-03-21  Wim Taymans  <wim@fluendo.com>
5514
5515         * gst/gstbus.c: (gst_bus_post):
5516         Fix copy-and-paste error.
5517
5518 2005-03-21  Wim Taymans  <wim@fluendo.com>
5519
5520         * check/Makefile.am:
5521         * gst/Makefile.am:
5522         * gst/elements/Makefile.am:
5523         * gst/elements/gstelements.c:
5524         * gst/elements/gstfakesink.c: (gst_fakesink_init),
5525         (gst_fakesink_event), (gst_fakesink_chain):
5526         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5527         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
5528         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
5529         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
5530         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
5531         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
5532         (gst_fakesrc_loop), (gst_fakesrc_activate),
5533         (gst_fakesrc_change_state):
5534         * gst/elements/gstfakesrc.h:
5535         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
5536         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
5537         (gst_filesrc_open_file), (gst_filesrc_loop),
5538         (gst_filesrc_activate), (gst_filesrc_change_state),
5539         (filesrc_find_peek), (filesrc_find_suggest),
5540         (gst_filesrc_type_find):
5541         * gst/elements/gstidentity.c: (gst_identity_finalize),
5542         (gst_identity_class_init), (gst_identity_init),
5543         (gst_identity_proxy_getcaps), (identity_queue_push),
5544         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
5545         (gst_identity_getrange), (gst_identity_chain),
5546         (gst_identity_sink_loop), (gst_identity_src_loop),
5547         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
5548         (gst_identity_set_property), (gst_identity_get_property),
5549         (gst_identity_change_state):
5550         * gst/elements/gstidentity.h:
5551         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
5552         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
5553         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
5554         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
5555         (gst_tee_sink_activate):
5556         * gst/elements/gsttee.h:
5557         * gst/gst.c: (gst_register_core_elements), (init_post):
5558         * gst/gst.h:
5559         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
5560         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
5561         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
5562         (gst_bin_change_state):
5563         * gst/gstbin.h:
5564         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
5565         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
5566         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
5567         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
5568         (gst_bus_set_sync_handler), (gst_bus_create_watch),
5569         (bus_watch_callback), (bus_watch_destroy),
5570         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
5571         (poll_timeout), (gst_bus_poll):
5572         * gst/gstbus.h:
5573         * gst/gstcaps.h:
5574         * gst/gstdata.h:
5575         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
5576         (gst_element_post_message), (gst_element_message_full),
5577         (gst_element_get_state_func), (gst_element_get_state),
5578         (gst_element_abort_state), (gst_element_commit_state),
5579         (gst_element_lost_state), (gst_element_set_state),
5580         (gst_element_pads_activate), (gst_element_change_state),
5581         (gst_element_dispose), (gst_element_set_manager_func),
5582         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
5583         (gst_element_set_manager), (gst_element_get_manager),
5584         (gst_element_set_bus), (gst_element_get_bus),
5585         (gst_element_set_scheduler), (gst_element_get_scheduler):
5586         * gst/gstelement.h:
5587         * gst/gstevent.c: (gst_event_new_segment_seek),
5588         (gst_event_new_flush):
5589         * gst/gstevent.h:
5590         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
5591         (_gst_message_free), (gst_message_get_type), (gst_message_new),
5592         (gst_message_new_eos), (gst_message_new_error),
5593         (gst_message_new_warning), (gst_message_new_tag),
5594         (gst_message_new_state_changed), (gst_message_new_application),
5595         (gst_message_get_structure), (gst_message_parse_tag),
5596         (gst_message_parse_state_changed), (gst_message_parse_error),
5597         (gst_message_parse_warning):
5598         * gst/gstmessage.h:
5599         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
5600         (gst_real_pad_set_property), (gst_pad_set_active),
5601         (gst_pad_is_active), (gst_pad_set_blocked_async),
5602         (gst_pad_set_blocked), (gst_pad_is_blocked),
5603         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
5604         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
5605         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
5606         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
5607         (gst_pad_link_filtered), (gst_pad_relink_filtered),
5608         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
5609         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
5610         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
5611         (gst_pad_set_caps), (gst_pad_configure_sink),
5612         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
5613         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
5614         (gst_real_pad_dispose), (gst_real_pad_finalize),
5615         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
5616         (gst_pad_event_default_dispatch), (gst_pad_event_default),
5617         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
5618         * gst/gstpad.h:
5619         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
5620         (pipeline_bus_handler), (gst_pipeline_change_state),
5621         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
5622         * gst/gstpipeline.h:
5623         * gst/gstprobe.h:
5624         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
5625         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
5626         (gst_queue_link_src), (gst_queue_bufferalloc),
5627         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
5628         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
5629         (gst_queue_loop), (gst_queue_handle_src_event),
5630         (gst_queue_handle_src_query), (gst_queue_src_activate),
5631         (gst_queue_change_state):
5632         * gst/gstqueue.h:
5633         * gst/gstscheduler.c: (gst_scheduler_init),
5634         (gst_scheduler_dispose), (gst_scheduler_create_task),
5635         (gst_scheduler_factory_create):
5636         * gst/gstscheduler.h:
5637         * gst/gststructure.c: (gst_structure_get_type),
5638         (gst_structure_copy_conditional):
5639         * gst/gststructure.h:
5640         * gst/gsttaginterface.h:
5641         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
5642         (gst_task_init), (gst_task_dispose), (gst_task_create),
5643         (gst_task_get_state), (gst_task_start), (gst_task_stop),
5644         (gst_task_pause):
5645         * gst/gsttask.h:
5646         * gst/gstthread.c:
5647         * gst/gstthread.h:
5648         * gst/gsttypes.h:
5649         * gst/schedulers/Makefile.am:
5650         * gst/schedulers/cothreads_compat.h:
5651         * gst/schedulers/entryscheduler.c:
5652         * gst/schedulers/faircothreads.c:
5653         * gst/schedulers/faircothreads.h:
5654         * gst/schedulers/fairscheduler.c:
5655         * gst/schedulers/gstbasicscheduler.c:
5656         * gst/schedulers/gstoptimalscheduler.c:
5657         * gst/schedulers/gthread-cothreads.h:
5658         * gst/schedulers/threadscheduler.c:
5659         (gst_thread_scheduler_task_get_type),
5660         (gst_thread_scheduler_task_class_init),
5661         (gst_thread_scheduler_task_init),
5662         (gst_thread_scheduler_task_start),
5663         (gst_thread_scheduler_task_stop),
5664         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
5665         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
5666         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
5667         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
5668         (plugin_init):
5669         * libs/gst/Makefile.am:
5670         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
5671         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
5672         (gst_file_pad_parent_set):
5673         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
5674         (gst_dp_event_from_packet):
5675         * tests/complexity.c: (main):
5676         * tests/mass_elements.c: (main):
5677         * testsuite/states/locked.c: (message_received), (main):
5678         * testsuite/states/parent.c: (main):
5679         * tools/gst-inspect.c: (print_element_flag_info),
5680         (print_implementation_info), (print_pad_info):
5681         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
5682         (main):
5683         * tools/gst-md5sum.c: (event_loop), (main):
5684         * tools/gst-typefind.c: (main):
5685         * tools/gst-xmlinspect.c: (print_element_info):
5686         Next big merge.
5687         Added GstBus for mainloop integration.
5688         Added GstMessage for sending notifications on the bus.
5689         Added GstTask as an abstraction for pipeline entry points.
5690         Removed GstThread.
5691         Removed Schedulers.
5692         Simplified GstQueue for multithreaded core.
5693         Made _link threadsafe, removed old capsnego.
5694         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
5695         Added pad blocking functions.
5696         Reworked scheduling functions in GstPad to prepare for
5697         scheduling updates soon.
5698         Moved events out of data stream.
5699         Simplified GstEvent types.
5700         Added return values to push/pull.
5701         Removed clocking from GstElement.
5702         Added prototypes for state change function for next merge.
5703         Removed iterate from bins and state change management.
5704         Fixed some elements, disabled others for now.
5705         Fixed -inspect and -launch.
5706         Added check for GstBus.
5707
5708 2005-03-10  Wim Taymans  <wim@fluendo.com>
5709
5710         * docs/design/part-MT-refcounting.txt:
5711         * docs/design/part-clocks.txt:
5712         * docs/design/part-gstelement.txt:
5713         * docs/design/part-gstobject.txt:
5714         * docs/design/part-standards.txt:
5715         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5716         (gst_bin_remove_func), (gst_bin_remove):
5717         * gst/gstbin.h:
5718         * gst/gstbuffer.c:
5719         * gst/gstcaps.h:
5720         * testsuite/clock/clock1.c: (main):
5721         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
5722         (main):
5723         * testsuite/dlopen/loadgst.c: (do_test):
5724         * testsuite/refcounting/bin.c: (add_remove_test1),
5725         (add_remove_test2), (main):
5726         * testsuite/refcounting/element.c: (main):
5727         * testsuite/refcounting/element_pad.c: (main):
5728         * testsuite/refcounting/pad.c: (main):
5729         * tools/gst-launch.c: (sigint_handler_sighandler):
5730         * tools/gst-typefind.c: (main):
5731         Doc updates.
5732         Added doc about clock.
5733         removed gst_bin_iterate_recurse_up(), marked methods
5734         for removal.
5735         Fix more testsuites.
5736
5737 2005-03-09  Wim Taymans  <wim@fluendo.com>
5738
5739         * gst/gstpad.c: (gst_pad_get_direction),
5740         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
5741         (gst_pad_collect_valist):
5742         * testsuite/bins/interface.c: (main):
5743         * testsuite/caps/audioscale.c: (test_caps):
5744         * testsuite/caps/caps.c: (test1), (test2), (test3):
5745         * testsuite/caps/deserialize.c: (main):
5746         * testsuite/caps/enumcaps.c: (main):
5747         * testsuite/caps/filtercaps.c: (main):
5748         * testsuite/caps/intersect2.c: (main):
5749         * testsuite/caps/random.c: (main):
5750         * testsuite/caps/renegotiate.c: (my_fixate), (main):
5751         * testsuite/caps/sets.c: (check_caps):
5752         * testsuite/caps/simplify.c: (check_caps), (main):
5753         * testsuite/caps/subtract.c: (check_caps):
5754         Fix _pad_get_direction wrt ghostpads.
5755         Fix caps testsuite.
5756
5757 2005-03-09  Wim Taymans  <wim@fluendo.com>
5758
5759         * check/Makefile.am:
5760         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
5761         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
5762         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
5763         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
5764         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
5765         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
5766         (gst_bin_remove), (gst_bin_iterate_recurse_up),
5767         (bin_element_is_sink), (gst_bin_iterate_sinks),
5768         (gst_bin_iterate_all_by_interface):
5769         * gst/gstbin.h:
5770         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
5771         (gst_element_change_state), (gst_element_dispose),
5772         (gst_element_finalize), (gst_element_set_loop_function):
5773         * gst/gstelement.h:
5774         * gst/gstiterator.c: (find_custom_fold_func):
5775         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
5776         (gst_pad_collectv), (gst_pad_collect_valist),
5777         (gst_pad_template_new):
5778         * gst/gstpipeline.c: (gst_pipeline_class_init),
5779         (gst_pipeline_dispose), (gst_pipeline_set_property),
5780         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
5781         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
5782         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
5783         * gst/gstutils.h:
5784         * gst/schedulers/entryscheduler.c:
5785         * gst/schedulers/gstbasicscheduler.c:
5786         (gst_basic_scheduler_cothreaded_chain),
5787         (gst_basic_scheduler_chain_add_element):
5788         * testsuite/bins/interface.c: (main):
5789         Added GstBin test.
5790         Added GstSystemClock test.
5791         Implemented clock distribution code in GstBin.
5792         Implemented iterate sinks method for future use.
5793         Rearranged gstelement.h
5794         Fix GstIterator comparison bug.
5795         Moved some code to GstPipeline, mostly clocking related.
5796
5797 2005-03-09  Wim Taymans  <wim@fluendo.com>
5798
5799         * configure.ac:
5800         * gst/gst_private.h:
5801         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5802         (gst_bin_remove_func), (gst_bin_remove),
5803         (gst_bin_get_by_name_recurse_up):
5804         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
5805         (gst_clock_id_compare_func), (gst_clock_id_wait),
5806         (gst_clock_id_wait_async), (gst_clock_init),
5807         (gst_clock_adjust_unlocked), (gst_clock_get_time):
5808         * gst/gstelement.h:
5809         * gst/gstinfo.c: (_gst_debug_init):
5810         * gst/gstobject.h:
5811         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
5812         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
5813         * gst/gstpad.h:
5814         Bump version number, we're now 0.9.0
5815         Add future debugging category.
5816         Fix NULL _unref() in _get_by_name_recurse_up
5817         Rearrange gstpad.h.
5818         Update some docs.
5819
5820 2005-03-08  Wim Taymans  <wim@fluendo.com>
5821
5822         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
5823         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5824         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
5825         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
5826         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
5827         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
5828         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
5829         * gst/elements/gstidentity.c: (gst_identity_class_init):
5830         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
5831         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
5832         * gst/elements/gstshaper.c: (gst_shaper_class_init):
5833         * gst/elements/gststatistics.c: (gst_statistics_class_init):
5834         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
5835         (gst_tee_link):
5836         * gst/gstelement.c: (gst_element_class_init),
5837         (gst_element_base_class_init), (gst_element_init),
5838         (gst_element_get_random_pad), (gst_element_wait_state_change),
5839         (gst_element_change_state), (gst_element_dispose),
5840         (gst_element_finalize), (gst_element_set_loop_function):
5841         * gst/gstelement.h:
5842         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
5843         * gst/gstthread.c: (gst_thread_class_init),
5844         (gst_thread_release_children_locks), (gst_thread_change_state):
5845         * gst/schedulers/gstbasicscheduler.c:
5846         (gst_basic_scheduler_loopfunc_wrapper),
5847         (gst_basic_scheduler_chain_wrapper),
5848         (gst_basic_scheduler_src_wrapper),
5849         (gst_basic_scheduler_remove_element):
5850         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5851         Remove threadsafe properties. Fix elements because GObject
5852         complains when installing a property before declaring a
5853         set/get_property handler.
5854         Rearrange gstelement.h file, use STATE macros for state locks.
5855         Free mutexes in the finalize method instead of dispose.
5856
5857 2005-03-08  Wim Taymans  <wim@fluendo.com>
5858
5859         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
5860         * gst/gstthread.c: (gst_thread_release_children_locks):
5861         Added parentage check.
5862         Fix build og GstThread again.
5863
5864 2005-03-08  Wim Taymans  <wim@fluendo.com>
5865
5866         * docs/design/part-MT-refcounting.txt:
5867         * docs/design/part-conventions.txt:
5868         * docs/design/part-gstobject.txt:
5869         * docs/design/part-relations.txt:
5870         * docs/design/part-standards.txt:
5871         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5872         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
5873         (gst_bin_get_by_name), (gst_bin_get_by_interface),
5874         (gst_bin_iterate_all_by_interface):
5875         * gst/gstbuffer.h:
5876         * gst/gstclock.h:
5877         * gst/gstelement.c: (gst_element_class_init),
5878         (gst_element_change_state), (gst_element_set_loop_function):
5879         * gst/gstelement.h:
5880         * gst/gstiterator.c:
5881         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
5882         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
5883         (gst_object_dispatch_properties_changed), (gst_object_set_name),
5884         (gst_object_set_parent), (gst_object_unparent),
5885         (gst_object_check_uniqueness):
5886         * gst/gstobject.h:
5887         Docs updates, clean up some headers.
5888
5889 2005-03-07  Wim Taymans  <wim@fluendo.com>
5890
5891         * check/.cvsignore:
5892         * check/Makefile.am:
5893         * check/gst-libs/.cvsignore:
5894         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
5895         * check/gst/.cvsignore:
5896         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
5897         (START_TEST), (gstbus_suite), (main):
5898         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
5899         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
5900         (gst_data_suite), (main):
5901         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
5902         (add_fold_func), (gstiterator_suite), (main):
5903         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
5904         (thread_name_object), (thread_name_object_default),
5905         (gst_object_name_compare), (gst_object_suite), (main):
5906         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
5907         (gst_pad_suite), (main):
5908         * check/gstcheck.c: (gst_check_log_message_func),
5909         (gst_check_log_critical_func), (gst_check_init):
5910         * check/gstcheck.h:
5911         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
5912         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
5913         Added checks.
5914
5915 2005-03-07  Wim Taymans  <wim@fluendo.com>
5916
5917         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
5918         (gst_list_iterator_next), (gst_list_iterator_resync),
5919         (gst_list_iterator_free), (gst_iterator_new_list),
5920         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
5921         (gst_iterator_free), (gst_iterator_push), (filter_next),
5922         (filter_resync), (filter_uninit), (filter_free),
5923         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
5924         (gst_iterator_foreach), (find_custom_fold_func),
5925         (gst_iterator_find_custom):
5926         * gst/gstiterator.h:
5927         Added missing files.
5928
5929 2005-03-07  Wim Taymans  <wim@fluendo.com>
5930
5931         * Makefile.am:
5932         * configure.ac:
5933         * docs/design/part-MT-refcounting.txt:
5934         * docs/design/part-conventions.txt:
5935         * docs/design/part-gstobject.txt:
5936         * docs/design/part-relations.txt:
5937         * examples/mixer/mixer.c: (main):
5938         * examples/thread/thread.c: (eos), (main):
5939         * gst/Makefile.am:
5940         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
5941         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
5942         (gst_spider_plug_from_srcpad):
5943         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
5944         (gst_spider_identity_change_state),
5945         (gst_spider_identity_sink_loop_type_finding):
5946         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
5947         * gst/elements/gstidentity.c: (gst_identity_init):
5948         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
5949         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
5950         * gst/elements/gsttypefindelement.c: (free_entry):
5951         * gst/gst.c:
5952         * gst/gst.h:
5953         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
5954         (gst_bin_set_clock_func), (gst_bin_auto_clock),
5955         (gst_bin_set_index), (gst_bin_set_element_sched),
5956         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
5957         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
5958         (gst_bin_iterate_elements), (iterate_child_recurse),
5959         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
5960         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
5961         (compare_interface), (gst_bin_get_by_interface),
5962         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
5963         * gst/gstbin.h:
5964         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
5965         (gst_buffer_default_free), (gst_buffer_default_copy),
5966         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
5967         (gst_buffer_create_sub):
5968         * gst/gstbuffer.h:
5969         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
5970         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
5971         (gst_caps_unref), (gst_static_caps_get),
5972         (gst_caps_remove_and_get_structure), (gst_caps_append),
5973         (gst_caps_append_structure), (gst_caps_remove_structure),
5974         (gst_caps_copy_nth), (gst_caps_set_simple),
5975         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
5976         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
5977         (gst_caps_structure_intersect_field), (gst_caps_intersect),
5978         (gst_caps_structure_subtract_field), (gst_caps_subtract),
5979         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
5980         (gst_caps_structure_figure_out_union),
5981         (gst_caps_switch_structures), (gst_caps_do_simplify),
5982         (gst_caps_replace), (gst_caps_from_string),
5983         (gst_caps_copy_conditional):
5984         * gst/gstcaps.h:
5985         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
5986         (_gst_clock_id_free), (gst_clock_id_unref),
5987         (gst_clock_id_compare_func), (gst_clock_id_wait),
5988         (gst_clock_id_wait_async), (gst_clock_class_init),
5989         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
5990         (gst_clock_get_time), (gst_clock_set_time_adjust),
5991         (gst_clock_set_property), (gst_clock_get_property):
5992         * gst/gstclock.h:
5993         * gst/gstcompat.h:
5994         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
5995         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
5996         * gst/gstdata.h:
5997         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
5998         (gst_element_requires_clock), (gst_element_provides_clock),
5999         (gst_element_set_clock), (gst_element_clock_wait),
6000         (gst_element_wait), (gst_element_set_time_delay),
6001         (gst_element_is_indexable), (gst_element_add_pad),
6002         (gst_element_add_ghost_pad), (gst_element_remove_pad),
6003         (pad_compare_name), (gst_element_get_static_pad),
6004         (gst_element_request_pad), (gst_element_get_request_pad),
6005         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
6006         (gst_element_class_get_pad_template_list),
6007         (gst_element_class_get_pad_template), (gst_element_error_func),
6008         (gst_element_get_random_pad), (gst_element_get_event_masks),
6009         (gst_element_send_event), (gst_element_seek),
6010         (gst_element_get_query_types), (gst_element_query),
6011         (gst_element_get_formats), (gst_element_convert),
6012         (gst_element_is_locked_state), (gst_element_set_locked_state),
6013         (gst_element_sync_state_with_parent), (gst_element_change_state),
6014         (gst_element_finalize), (gst_element_yield),
6015         (gst_element_interrupt), (gst_element_set_scheduler),
6016         (gst_element_get_scheduler), (gst_element_set_loop_function):
6017         * gst/gstelement.h:
6018         * gst/gstevent.h:
6019         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
6020         (gst_format_get_by_nick), (gst_format_get_details),
6021         (gst_format_iterate_definitions):
6022         * gst/gstformat.h:
6023         * gst/gstindex.c: (gst_index_gtype_resolver):
6024         * gst/gstinfo.c:
6025         * gst/gstinfo.h:
6026         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
6027         (gst_mem_chunk_free):
6028         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
6029         (gst_object_ref), (gst_object_unref), (gst_object_sink),
6030         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
6031         (gst_object_dispatch_properties_changed),
6032         (gst_object_set_name_default), (gst_object_set_name),
6033         (gst_object_get_name), (gst_object_set_name_prefix),
6034         (gst_object_get_name_prefix), (gst_object_set_parent),
6035         (gst_object_get_parent), (gst_object_unparent),
6036         (gst_object_check_uniqueness), (gst_object_save_thyself),
6037         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
6038         (gst_object_set_property), (gst_object_get_property),
6039         (gst_object_get_path_string):
6040         * gst/gstobject.h:
6041         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
6042         (gst_real_pad_init), (gst_real_pad_get_property),
6043         (gst_pad_custom_new), (gst_pad_get_direction),
6044         (gst_pad_set_active), (gst_pad_is_active),
6045         (gst_pad_set_event_function), (gst_pad_is_linked),
6046         (gst_pad_link_free), (gst_pad_link_intersect),
6047         (gst_pad_link_fixate), (gst_pad_set_caps),
6048         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
6049         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
6050         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
6051         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
6052         (gst_pad_get_caps), (gst_pad_peer_get_caps),
6053         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
6054         (gst_pad_realize), (gst_pad_get_allowed_caps),
6055         (gst_real_pad_dispose), (gst_real_pad_finalize),
6056         (gst_pad_collectv), (gst_pad_collect_valist),
6057         (gst_pad_template_dispose), (gst_pad_template_new),
6058         (gst_pad_get_internal_links):
6059         * gst/gstpad.h:
6060         * gst/gstpipeline.c: (gst_pipeline_dispose),
6061         (gst_pipeline_change_state):
6062         * gst/gstpipeline.h:
6063         * gst/gstplugin.c:
6064         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
6065         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
6066         * gst/gstpluginfeature.h:
6067         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
6068         * gst/gstquery.c: (_gst_query_type_initialize),
6069         (gst_query_type_register), (gst_query_type_get_by_nick),
6070         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
6071         * gst/gstquery.h:
6072         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
6073         * gst/gstscheduler.c: (gst_scheduler_add_element),
6074         (gst_scheduler_factory_create):
6075         * gst/gststructure.c: (gst_structure_set_parent_refcount),
6076         (gst_structure_free), (gst_structure_set_name),
6077         (gst_structure_id_set_value), (gst_structure_set_value),
6078         (gst_structure_set_valist), (gst_structure_remove_field),
6079         (gst_structure_remove_fields),
6080         (gst_structure_remove_fields_valist),
6081         (gst_structure_remove_all_fields), (gst_structure_foreach),
6082         (gst_structure_map_in_place),
6083         (gst_caps_structure_fixate_field_nearest_int),
6084         (gst_caps_structure_fixate_field_nearest_double):
6085         * gst/gststructure.h:
6086         * gst/gstsystemclock.c: (gst_system_clock_class_init),
6087         (gst_system_clock_init), (gst_system_clock_dispose),
6088         (gst_system_clock_async_thread),
6089         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
6090         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
6091         * gst/gstsystemclock.h:
6092         * gst/gsttag.c: (gst_tag_list_add_value_internal),
6093         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
6094         * gst/gsttaginterface.c:
6095         * gst/gstthread.c: (gst_thread_dispose),
6096         (gst_thread_release_children_locks), (gst_thread_change_state),
6097         (gst_thread_main_loop):
6098         * gst/gsttrashstack.h:
6099         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
6100         * gst/gsttypes.h:
6101         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
6102         (gst_element_request_pad), (gst_element_get_pad_from_template),
6103         (gst_element_request_compatible_pad),
6104         (gst_element_get_compatible_pad_filtered),
6105         (gst_element_get_compatible_pad), (gst_element_state_get_name),
6106         (gst_element_link_pads_filtered), (gst_element_link_filtered),
6107         (gst_element_link_many), (gst_element_link),
6108         (gst_element_link_pads), (gst_element_unlink_pads),
6109         (gst_element_unlink_many), (gst_element_unlink),
6110         (gst_pad_can_link_filtered), (gst_pad_can_link),
6111         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
6112         (gst_object_default_error), (gst_bin_add_many),
6113         (gst_bin_remove_many), (gst_element_populate_std_props),
6114         (gst_element_class_install_std_props), (gst_buffer_merge),
6115         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
6116         (link_fold_func), (gst_pad_proxy_setcaps):
6117         * gst/gstutils.h:
6118         * gst/gstvalue.c: (gst_value_deserialize_string):
6119         * gst/parse/grammar.y:
6120         * gst/schedulers/gstbasicscheduler.c:
6121         (gst_basic_scheduler_cothreaded_chain),
6122         (gst_basic_scheduler_chain_recursive_add),
6123         (gst_basic_scheduler_pad_link):
6124         * gst/schedulers/gstoptimalscheduler.c:
6125         (get_group_schedule_function),
6126         (gst_opt_scheduler_state_transition),
6127         (gst_opt_scheduler_add_element), (element_get_reachables_func):
6128         * libs/gst/bytestream/bytestream.c:
6129         * libs/gst/dataprotocol/dataprotocol.c:
6130         (gst_dp_header_from_buffer):
6131         * po/nb.po:
6132         * po/ru.po:
6133         * tests/threadstate/threadstate2.c: (eos):
6134         * tools/gst-compprep.c: (main):
6135         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
6136         (print_pad_info), (print_children_info):
6137         * tools/gst-launch.c: (idle_func), (main):
6138         * tools/gst-md5sum.c: (idle_func), (main):
6139         * tools/gst-xmlinspect.c: (print_element_info):
6140         First THREADED backport attempt, focusing on adding locks and
6141         making sure the API is threadsafe. Needs more work. More docs
6142         follow this week.
6143
6144 2005-02-24  Andy Wingo  <wingo@pobox.com>
6145
6146         * tests/bench-complexity.scm:
6147         * tests/complexity.gnuplot: New files, good for running complexity
6148         benchmarks.
6149
6150         * tests/Makefile.am:
6151         * tests/complexity.c: New test, sets up N elements, at each level
6152         teeing into M streams per element. Eeeenteresting.
6153
6154         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
6155         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
6156         running bench-mass_elements.scm.
6157
6158         * tests/bench-mass_elements.scm: New script, runs mass_elements
6159         for various numbers of identities, outputting the results to a
6160         file. Requires guile 1.6. Just for testing.
6161
6162 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6163
6164         * gst/schedulers/fairscheduler.c:
6165           compile with debug disabled
6166
6167 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6168
6169         * configure.ac:
6170           hunting season on 0.9 is now OPEN
6171
6172 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
6173
6174         * docs/libs/tmpl/gstcontrol.sgml:
6175         * docs/libs/tmpl/gstdparam.sgml:
6176         * docs/libs/tmpl/gstdplinint.sgml:
6177         * docs/libs/tmpl/gstdpman.sgml:
6178         * docs/libs/tmpl/gstdpsmooth.sgml:
6179         * docs/libs/tmpl/gstunitconvert.sgml:
6180           more docs for the state of dparams
6181
6182 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6183
6184         * gst/gstelementfactory.c: (gst_element_factory_create):
6185         * gst/gstobject.c: (gst_object_init),
6186         (gst_object_set_name_default), (gst_object_set_name):
6187           name objects by default, not in gst_element_factory_create. Allows
6188           using elements created with g_object_new. (fixes #167283)
6189
6190 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6191
6192         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
6193           make the time that debugging functions print relative to when
6194           gst_init was called
6195
6196 2005-02-18  Tim-Philipp M??ller  <tim at centricular dot net>
6197
6198         * gst/gsttaginterface.c:
6199           Fix inline docs: tag setter vararg functions are NULL-terminated,
6200           GST_TAG_INVALID doesn't exist any more.
6201
6202 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6203
6204         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
6205         Allocate the 1 byte more memory that was forgotten!!!!!
6206         fixes memory corruption on 64bit platforms
6207
6208 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
6209
6210         * docs/pwg/building-pads.xml:
6211         * docs/pwg/intro-basics.xml:
6212           fixed a few typos, relabeled introductionary list of types
6213         * docs/random/ensonic/dparams.txt:
6214           more notes abut dparam changes
6215         * libs/gst/control/dparam.c: (gst_dparam_attach):
6216         * libs/gst/control/dparammanager.c:
6217         * libs/gst/control/dparammanager.h:
6218           - many comments and notes on dparam implementation
6219           - new dparams are were not initialized to the default value
6220             from param spec
6221
6222 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
6223
6224         submitted by: Peter Astakhov
6225
6226         * po/LINGUAS:
6227         * po/ru.po:
6228           adding Russian translation
6229
6230 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6231
6232         * configure.ac:
6233         * docs/gst/Makefile.am:
6234         * docs/libs/Makefile.am:
6235           make sure popt is added to gtk-doc flags.  Fixes #147782.
6236
6237 2005-02-09  Tim-Philipp M??ller  <tim at centricular dot net>
6238
6239         * docs/faq/using.xml:
6240           Fix typo in FAQ (artssink => artsdsink)
6241
6242 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6243
6244         * tools/gst-launch.1.in:
6245           Fix typo (#166699).
6246
6247 2005-02-08  Tim-Philipp M??ller  <tim at centricular dot net>
6248
6249         * docs/faq/using.xml:
6250           Add -v argument to fakesrc/fakesink gst-launch line,
6251           so that the promised output will actually show up.
6252
6253 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6254
6255         * gst/gstthread.c: (gst_thread_change_state):
6256           Implement state-change error handling (#166073).
6257
6258 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6259
6260         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
6261           Release interrupt after handling (#166250).
6262
6263 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6264
6265         * configure.ac:
6266           back to HEAD
6267
6268 === release 0.8.9 ===
6269
6270 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6271
6272         * NEWS:
6273         * RELEASE:
6274         * configure.ac:
6275           releasing 0.8.9, "Like Eating Glass"
6276
6277 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6278
6279         submitted by: Clytie Siddall
6280
6281         * po/vi.po: Added Vietnamese translation
6282
6283 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6284
6285         patch by: Tim Philipp-M??ller
6286
6287         * configure.ac:
6288         * gst/gstpad.c:
6289           unref data when probe function returns FALSE.  Fixes #166362
6290
6291 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6292
6293         * gst/gst.c: (gst_init_get_popt_table):
6294           Fix typo (#166269).
6295
6296 2005-02-04  Andy Wingo  <wingo@pobox.com>
6297
6298         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
6299         the debugging on whether the caps are compatible.
6300
6301 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6302
6303         * docs/manual/basics-elements.xml:
6304           Fix two typos.
6305
6306 2005-02-02  Wim Taymans  <wim@fluendo.com>
6307
6308         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
6309         (schedule_chain), (get_invalid_call), (chain_invalid_call),
6310         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
6311         Remove some FIXMEs after analysing and commenting why they
6312         are not issues.
6313
6314 2005-02-02  Wim Taymans  <wim@fluendo.com>
6315
6316         * gst/schedulers/gstoptimalscheduler.c:
6317         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
6318         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
6319         (get_invalid_call), (chain_invalid_call),
6320         (get_group_schedule_function), (loop_group_schedule_function),
6321         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
6322         (gst_opt_scheduler_state_transition),
6323         (gst_opt_scheduler_add_element),
6324         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
6325         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
6326         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
6327         (gst_opt_scheduler_show):
6328         Added lock to protect scheduler data structures.
6329
6330 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6331
6332         * testsuite/threads/threadi.c: (cb_data):
6333           Fix buglet in test.
6334
6335 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6336
6337         * testsuite/threads/Makefile.am:
6338         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
6339           On Wim's request, split the test in three separately-compiled
6340           tests that each test a very specific bug. Two of them still fail,
6341           will create bugs for those. threadi.c indicates why they fail.
6342
6343 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6344
6345         * gst/schedulers/gstoptimalscheduler.c:
6346         (get_group_schedule_function):
6347           Try to work with the threading mess that queue_link is.
6348
6349 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6350
6351         * gst/gstbin.c: (gst_bin_remove_func):
6352           Explicitely make an element release locks in a group when being
6353           remove from a bin.
6354         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
6355           If there's no scheduler, always return immediately (similar to
6356           gst_element_interrupt).
6357
6358 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6359
6360         * gst/gstbin.c: (gst_bin_child_state_change_func):
6361           Remove a piece of code that could never be reached.
6362         * docs/gst/gstreamer-sections.txt:
6363         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
6364         (gst_pad_call_get_function):
6365         * gst/gstpad.h:
6366         * testsuite/pad/Makefile.am:
6367           Fix #150546, enable tests.
6368
6369 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6370
6371         * docs/pwg/advanced-types.xml:
6372           Fix description for buffer-frames=0.
6373         * docs/gst/tmpl/gstbin.sgml:
6374         * gst/gstbin.c: (gst_bin_child_state_change_func),
6375         (gst_bin_change_state), (gst_bin_change_state_norecurse):
6376         * gst/gstbin.h:
6377         * testsuite/threads/Makefile.am:
6378         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
6379         (cb_state), (cb_play), (main):
6380           Fix non-recursive state changes to *really* change the state
6381           of the object, and not just call parent_class->state_change.
6382           Fix a lot of lockups caused by this. Fixes #132775. Add test
6383           for the problem. Also enable test to show #142588 (fixed).
6384         * gst/gstthread.c: (gst_thread_change_state),
6385         (gst_thread_child_state_change):
6386           Don't exit the thread if we go to NULL and are inside thread
6387           context. Instead, return control to the main thread context
6388           and exit from there.
6389         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
6390           Don't unset virtual functions, since those may still be used.
6391           That's not necessarily correct, but suffices for now.
6392         * configure.ac:
6393         * testsuite/Makefile.am:
6394         * testsuite/pad/Makefile.am:
6395         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
6396         (gst_test_sink_base_init), (gst_test_sink_chain),
6397         (gst_test_sink_init), (main):
6398         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
6399         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
6400         (main):
6401         * testsuite/pad/link.c: (gst_test_element_class_init),
6402         (gst_test_element_base_init), (gst_test_src_get),
6403         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
6404         (gst_test_filter_loop), (gst_test_filter_init),
6405         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
6406         (cb_error), (main):
6407           Add tests to show #150546. Pass, but should fail (currently
6408           disabled from the testsuite).
6409         * gst/gstscheduler.c: (gst_scheduler_dispose):
6410           Dereference child schedulers on dispose (#94464).
6411         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
6412           Fix typo.
6413         * testsuite/threads/thread.c: (main):
6414           Add more debug.
6415
6416 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6417
6418         * gst/gstpad.c: (gst_pad_push):
6419           Oops, revert previous commit, broke testsuite...
6420
6421 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6422
6423         * gst/gstpad.c: (gst_pad_push):
6424           Add check that the pad on which the push is performed is not a
6425           get-based pad (#150546).
6426
6427 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6428
6429         * gst/elements/gsttypefindelement.c:
6430         (gst_type_find_element_handle_event):
6431           Fix buffer pushing if stream EOSes during typefinding.
6432
6433 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
6434
6435         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6436
6437         * gst/gstvalue.c: (gst_string_wrap):
6438           Allow NULL-strings as argument (#165365).
6439
6440 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
6441
6442         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6443
6444         * gst/schedulers/faircothreads.c:
6445         (gst_fair_scheduler_cothread_queue_show):
6446           Fix build without debug enabled.
6447
6448 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
6449
6450         * docs/gst/gstreamer-sections.txt:
6451         * docs/libs/gstreamer-libs-docs.sgml:
6452         * docs/libs/gstreamer-libs-sections.txt:
6453         * docs/libs/tmpl/gstcontrol.sgml:
6454         * docs/libs/tmpl/gstdparam.sgml:
6455         * docs/libs/tmpl/gstdplinint.sgml:
6456         * docs/libs/tmpl/gstdpman.sgml:
6457         * docs/libs/tmpl/gstdpsmooth.sgml:
6458         * docs/libs/tmpl/gstputbits.sgml:
6459         * docs/libs/tmpl/gstunitconvert.sgml:
6460         * libs/gst/control/dparam.c:
6461         * libs/gst/control/dparam.h:
6462         * libs/gst/control/dparammanager.c:
6463         (gst_dpman_add_required_dparam_callback),
6464         (gst_dpman_add_required_dparam_direct),
6465         (gst_dpman_add_required_dparam_array),
6466         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
6467         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
6468         (gst_dpman_get_manager)
6469           restructured DParam docs
6470
6471 2005-01-25  Tim-Philipp M??ller  <tim at centricular dot net>
6472
6473         * gst-element-check.m4:
6474           Only check for gst-inspect if we haven't already
6475           found it in previous element check runs
6476
6477 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
6478
6479         * docs/gst/Makefile.am:
6480         * docs/libs/Makefile.am:
6481           fixed install rules to treat style.css as optional
6482
6483 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
6484
6485         * docs/gst/Makefile.am:
6486         * docs/libs/Makefile.am:
6487           install style.css along with docs
6488         * docs/gst/tmpl/gstbin.sgml:
6489         * docs/gst/tmpl/gstclock.sgml:
6490         * docs/gst/tmpl/gstdata.sgml:
6491         * docs/gst/tmpl/gstelement.sgml:
6492         * gst/gstbin.h:
6493         * gst/gstelement.c: (gst_element_class_init):
6494         * gst/gstelement.h:
6495           fixing incomplete docs
6496
6497 2005-01-24  Tim-Philipp M??ller  <tim at centricular dot net>
6498
6499         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6500           Don't unref seek event twice when fflush() fails
6501           
6502 2005-01-22  David Schleef  <ds@schleef.org>
6503
6504         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
6505
6506 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
6507
6508         * docs/gst/Makefile.am:
6509         * docs/libs/Makefile.am:
6510           added params for deprecation guards
6511         * gst/gst.c:
6512         * gst/gst.h:
6513         * gst/gsterror.c: (_gst_resource_errors_init),
6514         (_gst_stream_errors_init):
6515         * gst/gsterror.h:
6516           documented some more enums
6517
6518 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
6519         * gst/autoplug/gstspideridentity.c:
6520         Cosmetic fix - spider_find_peek should be static
6521         * gst/parse/parse.l:
6522         Applying fix for #164261
6523
6524 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
6525
6526         * docs/gst/gstreamer-sections.txt:
6527         * docs/gst/tmpl/gstplugin.sgml:
6528         * docs/libs/gstreamer-libs-sections.txt:
6529         * docs/libs/tmpl/gstcontrol.sgml:
6530         * gst/gstbuffer.h:
6531         * gst/gsttag.h:
6532         * gst/gstvalue.c:
6533           added docs for the TAG defines
6534
6535 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6536
6537         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
6538           Only unref entry if there is an entry.
6539
6540 2005-01-17  Wim Taymans  <wim@fluendo.com>
6541
6542         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6543         (remove_from_group), (schedule_group), (normalize_group),
6544         (gst_opt_scheduler_iterate):
6545         Also ref/unref decoupled elements before iterating the
6546         group since they are not added to the list of elements.
6547
6548 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6549
6550         * docs/manual/highlevel-components.xml:
6551           Add subtitle/streamselection as new features to playbin.
6552
6553 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6554
6555         * docs/manual/manual.xml:
6556           Re-enable dataaccess docs (oops).
6557
6558 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6559
6560         * docs/pwg/advanced-types.xml:
6561         * docs/random/mimetypes:
6562           Add documentation on libsndfile types (#163309), by Steve Baker
6563           <steve@stevebaker.org>.
6564         * gst/gstelement.c: (gst_element_release_request_pad):
6565           If an element has no explicit function, just remove the pad.
6566
6567 2005-01-17  Luca Ognibene  <luogni@tin.it>
6568
6569         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6570
6571         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
6572           Fix memleak (#163801).
6573
6574 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6575
6576         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
6577           I think this is actually more correct...
6578
6579 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6580
6581         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
6582           Another workaround for memory access while destroyed in callback.
6583           Please, someone with refcount knowledge, have a look at this.
6584
6585 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6586
6587         * docs/faq/faq.xml:
6588         * docs/faq/legal.xml:
6589           move the legal Q&A here
6590
6591 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6592
6593         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
6594         (gst_tee_request_new_pad):
6595           Fix negotiation.
6596
6597 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
6598
6599         * docs/random/omega/caps2:
6600         * testsuite/caps/caps_strings:
6601           replace framerate aproximations by their real value
6602           (24000/1001, 30000/1001, 60000/1001)
6603           Partially fixes bug #164049
6604
6605 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6606
6607         * docs/gst/Makefile.am:
6608           don't fail on the stupid GstPoptOption
6609
6610 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6611
6612         * gst/gstpad.h:
6613         * gst/gstprobe.c:
6614           allow probes to work on ghost pads by realizing the pad
6615           probe debugging
6616
6617 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6618
6619         * docs/gst/gstreamer-sections.txt:
6620         * docs/gst/tmpl/gstpad.sgml:
6621         * gst/gstpad.c: (gst_pad_set_active_recursive):
6622         * gst/gstpad.h:
6623           Add gst_pad_set_active_recursive().
6624
6625 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6626
6627         * docs/random/release:
6628           updates
6629         * gst/gst_private.h:
6630         * gst/gstinfo.c:
6631         * gst/gstobject.c:
6632           move deep_notify logging to a new category
6633         * gst/gstprobe.c:
6634         * gst/gstprobe.h:
6635           add stuff so bindings can wrap probes
6636
6637 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
6638
6639         * gst/gstplugin.c: (gst_plugin_load):
6640           Fix plugin loading if plugin/lib was already loaded. Fixes
6641           #163383
6642
6643 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
6644
6645         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6646
6647         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
6648           Protect plugin loading by a mutex so it's threadsafe. Fixes
6649           #163234.
6650
6651 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6652
6653         * gst/gstevent.c: (_gst_event_copy):
6654           Reference source object when copying events, since it'll be
6655           dereferenced on event dereferencing as well.
6656
6657 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6658
6659         * docs/gst/gstreamer-sections.txt:
6660         * docs/gst/tmpl/gstevent.sgml:
6661         * gst/gstevent.c: (gst_event_new_filler_stamped),
6662         (gst_event_filler_get_duration):
6663         * gst/gstevent.h:
6664           Add two new functions for filler events (which are used to
6665           synchronize streams if one of them is not having any data
6666           for a while) without interrupting the actual data-stream.
6667           Basically a no-op.
6668         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6669         (gst_queue_link_sink), (gst_queue_link_src),
6670         (gst_queue_change_state):
6671           Allow for renegotiation while filled. Required for stream
6672           switching while playing.
6673
6674 2005-01-08  Benjamin Otte  <otte@gnome.org>
6675
6676         * gst/gstelement.c: (gst_element_link_many):
6677           fix up g_return_if_fail's
6678         * po/LINGUAS:
6679         * po/de.po:
6680           add German translation, that was somehow not included
6681
6682 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
6683
6684         * docs/random/mimetypes:
6685           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
6686           do not add them to riff-lib as they are not common
6687
6688 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6689
6690         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
6691           Check for existence of probe after performing the probe before
6692           re-accessing it to prevent segfaults caused by removal of the
6693           probe in the callback.
6694
6695 2005-01-05  David Schleef  <ds@schleef.org>
6696
6697         * testsuite/registry/Makefile.am:
6698         * testsuite/registry/gst-print-formats.c:
6699         (print_pad_templates_info), (print_element_list),
6700         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
6701         (g_list_uniqify), (get_pad_templates_info),
6702         (get_element_mime_list), (print_mime_list), (main): A little
6703         program that looks through the registry to find elements of
6704         a given type.  Not particularly interesting as a test, except
6705         that there's no other test covering the same area.
6706
6707 2005-01-05  David Schleef  <ds@schleef.org>
6708
6709         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
6710         (fault_handler_sigaction), (fault_spin),
6711         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
6712         in signal.h-type signal handlers by not calling forbidden functions,
6713         including gst_element_set_state().
6714
6715 2005-01-05  David Schleef  <ds@schleef.org>
6716
6717         * gst/gstvalue.h: Mark _gst_reserved[] as private
6718
6719 2005-01-05  David Schleef  <ds@schleef.org>
6720
6721         * gst/gstvalue.c: Fix doc build problem.
6722
6723 2005-01-05  David Schleef  <ds@schleef.org>
6724
6725         * gst/gstvalue.c: Add some documentation
6726
6727 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
6728
6729         * docs/README:
6730           another shell oneliner for empty return value docs
6731         * gst/gstcaps.c:
6732         * gst/gstvalue.c:
6733         * libs/gst/control/dparam.c:
6734           more doc fixes (parameters and return values)
6735
6736 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
6737
6738         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6739
6740         * gst/gstregistry.h:
6741         * gst/registries/gstxmlregistry.c:
6742           Fix macro's for Mingw (fixes #162276).
6743
6744 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
6745
6746         * docs/README:
6747           quick shell oneliner to find undocumented members
6748         * docs/gst/tmpl/gstplugin.sgml:
6749         * docs/gst/tmpl/gstscheduler.sgml:
6750         * docs/gst/tmpl/gstthread.sgml:
6751           more enumtypes cleanup
6752         * gst/gsterror.h:
6753           activated documentation comments, now someone needs to document
6754           the enums :(
6755
6756 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6757
6758         * docs/manual/manual.xml:
6759           Add dataaccess part (doh!).
6760
6761 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6762
6763         * docs/manual/advanced-autoplugging.xml:
6764           Fix typo (intiate -> initiate).
6765
6766 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6767
6768         * docs/random/bbb/streamselection:
6769           Add some notes on how to handle multi-subtitle/-audio streams.
6770
6771 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
6772
6773         * docs/gst/gstreamer-docs.sgml:
6774         * docs/gst/gstreamer-sections.txt:
6775         * docs/gst/tmpl/gstenumtypes.sgml:
6776         * docs/gst/tmpl/gsterror.sgml:
6777         * docs/gst/tmpl/gstevent.sgml:
6778         * docs/gst/tmpl/gstpad.sgml:
6779         * docs/gst/tmpl/gstpadtemplate.sgml:
6780         * docs/gst/tmpl/gstthread.sgml:
6781           removed gstenumtypes section from docs and put all the enums into
6782           their sections
6783
6784 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6785
6786         * gst/gstplugin.c:
6787           document gst_library_load a bit more (riff special case + return
6788           value if already loaded)
6789         * testsuite/bytestream/filepadsink.c:
6790           plugin name is 'gstbytestream', not 'bytestream'
6791
6792 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6793
6794         * docs/random/bbb/subtitles:
6795           Add some first mind rumblings on proper subtitle support.
6796
6797 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6798
6799         * po/ca.po:
6800         * po/sv.po:
6801           updated translations
6802
6803 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6804
6805         * docs/manual/advanced-dataaccess.xml:
6806           Add section on how to use fakesrc/fakesink/identity in your
6807           application, plus section on how to embed plugins. Also mention
6808           probes.
6809         * docs/manual/appendix-checklist.xml:
6810         * docs/manual/appendix-debugging.xml:
6811         * docs/manual/appendix-gnome.xml:
6812         * docs/manual/appendix-integration.xml:
6813           Debug -> checklist, GNOME -> integration, add sections on Linux,
6814           KDE integration and add other things useful for application
6815           development.
6816         * docs/manual/manual.xml:
6817           Remove some fixmes, update some file pointers.
6818         * docs/pwg/appendix-checklist.xml:
6819           Fix typo.
6820         * docs/pwg/building-boiler.xml:
6821           Remove ugly header and add commented fixme.
6822         * docs/pwg/pwg.xml:
6823           Add fixme.
6824         * examples/manual/Makefile.am:
6825           Add example for added docs.
6826
6827 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6828
6829         * configure.ac:
6830           back to HEAD
6831
6832 === release 0.8.8 ===
6833
6834 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6835
6836         * NEWS:
6837         * RELEASE:
6838         * configure.ac:
6839           Releasing 0.8.8, "I'll Take Care Of You"
6840
6841 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6842
6843         * configure.ac:
6844           second prerelease
6845
6846 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6847
6848         patch by: Wim Taymans
6849
6850         * gst/gstbin.c:
6851           Fix for #159852 - make iterate emission threadsafe
6852
6853 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6854
6855         * docs/faq/cvs.xml:
6856           notes about new fdo account request
6857
6858 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
6859
6860         * docs/gst/gstreamer-docs.sgml:
6861         * docs/gst/tmpl/gstenumtypes.sgml:
6862         * docs/gst/tmpl/gstplugin.sgml:
6863         * docs/libs/gstreamer-libs-docs.sgml:
6864           Added missing short docs. Added ids for navigation.
6865
6866 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6867
6868         * docs/manual/advanced-autoplugging.xml:
6869         * docs/manual/advanced-schedulers.xml:
6870         * docs/manual/advanced-threads.xml:
6871           Rewrites. Remove cothreads, go a bit into opt specifically,
6872           document threads and their gotchas, and do some technical stuff
6873           on autoplugging plus add some working examples. Fixes #157395.
6874         * examples/manual/Makefile.am:
6875           Add typefind/autoplugger example (one that actually works).
6876           Remove queue example since it's a duplicate of the thread one.
6877
6878 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6879
6880         * gst/gstvalue.c: (gst_value_deserialize_string):
6881           use deprecated g_value_set_string_take_ownership to keep compatible
6882           with glib 2.2
6883
6884 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6885
6886         * gst/gstvalue.c: (gst_value_deserialize_string):
6887           revert last patch, only dom a g_utf8_validate now before accepting
6888           the string - caps parsing strips " from strings so we can't rely on
6889           them
6890         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6891           disable a test that tested the above and comment it
6892
6893 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
6894
6895         Patch reviewed by David Schleef  <ds@schleef.org>
6896
6897         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
6898         bug #153882)
6899         * win32/gstenumtypes.h: same
6900
6901 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6902
6903         * gst/gstpad.c: (gst_pad_query):
6904           Do query on realized pad, similar to how convert/send_event handle
6905           this. Also makes sense, since this pad belongs to the function to
6906           which this query will be sent. Fixes #158163.
6907
6908 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
6909
6910         * docs/manual/appendix-programs.xml: fix pipeline to actually work
6911
6912 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6913
6914         * docs/faq/general.xml: fix pipeline to actually work
6915
6916 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6917
6918         * gst/gstvalue.c: (gst_value_deserialize_string):
6919           check that a simple string that gets deserialized does not contain
6920           invalid characters
6921         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6922           remove a test that tested a wring behaviour
6923
6924 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
6925
6926         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6927
6928         * docs/manual/intro-motivation.xml:
6929           Fix typos.
6930
6931 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
6932
6933         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6934
6935         * docs/gst/tmpl/gstprobe.sgml:
6936           Fix documentation of probe callback - it is supposed to return
6937           FALSE, not TRUE, to remove data from the stream (#159087).
6938
6939 2004-12-16  Daniel Gazard  <dany42@free.fr>
6940
6941         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6942
6943         * gst/gstelementfactory.c: (gst_element_factory_create):
6944           Fix compile failure if compiling without libxml2 support (#149936).
6945
6946 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6947
6948         * docs/manual/advanced-autoplugging.xml:
6949         * docs/manual/highlevel-components.xml:
6950           Move spider from autoplugging to components. Autoplugging is for
6951           internals, not for solutions. ;-).
6952
6953 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6954
6955         * docs/random/ds/0.9-suggested-changes:
6956           Make note on device/location/uri property names.
6957
6958 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6959
6960         * docs/manual/advanced-autoplugging.xml:
6961         * docs/manual/advanced-clocks.xml:
6962         * docs/manual/advanced-interfaces.xml:
6963         * docs/manual/advanced-metadata.xml:
6964         * docs/manual/advanced-position.xml:
6965         * docs/manual/advanced-schedulers.xml:
6966         * docs/manual/advanced-threads.xml:
6967         * docs/manual/appendix-gnome.xml:
6968         * docs/manual/appendix-programs.xml:
6969         * docs/manual/appendix-quotes.xml:
6970         * docs/manual/autoplugging.xml:
6971         * docs/manual/basics-bins.xml:
6972         * docs/manual/basics-data.xml:
6973         * docs/manual/basics-elements.xml:
6974         * docs/manual/basics-helloworld.xml:
6975         * docs/manual/basics-init.xml:
6976         * docs/manual/basics-pads.xml:
6977         * docs/manual/basics-plugins.xml:
6978         * docs/manual/bins-api.xml:
6979         * docs/manual/bins.xml:
6980         * docs/manual/buffers-api.xml:
6981         * docs/manual/buffers.xml:
6982         * docs/manual/clocks.xml:
6983         * docs/manual/components.xml:
6984         * docs/manual/cothreads.xml:
6985         * docs/manual/debugging.xml:
6986         * docs/manual/dparams-app.xml:
6987         * docs/manual/dynamic.xml:
6988         * docs/manual/elements-api.xml:
6989         * docs/manual/elements.xml:
6990         * docs/manual/factories.xml:
6991         * docs/manual/gnome.xml:
6992         * docs/manual/goals.xml:
6993         * docs/manual/helloworld.xml:
6994         * docs/manual/helloworld2.xml:
6995         * docs/manual/highlevel-components.xml:
6996         * docs/manual/highlevel-xml.xml:
6997         * docs/manual/init-api.xml:
6998         * docs/manual/intro-basics.xml:
6999         * docs/manual/intro-motivation.xml:
7000         * docs/manual/intro-preface.xml:
7001         * docs/manual/intro.xml:
7002         * docs/manual/links-api.xml:
7003         * docs/manual/links.xml:
7004         * docs/manual/manual.xml:
7005         * docs/manual/motivation.xml:
7006         * docs/manual/pads-api.xml:
7007         * docs/manual/pads.xml:
7008         * docs/manual/plugins-api.xml:
7009         * docs/manual/plugins.xml:
7010         * docs/manual/programs.xml:
7011         * docs/manual/queues.xml:
7012         * docs/manual/quotes.xml:
7013         * docs/manual/schedulers.xml:
7014         * docs/manual/states-api.xml:
7015         * docs/manual/states.xml:
7016         * docs/manual/threads.xml:
7017         * docs/manual/typedetection.xml:
7018         * docs/manual/win32.xml:
7019         * docs/manual/xml.xml:
7020           Try 2. This time, include a short preface as a "general
7021           introduction", also add code blocks around all code samples
7022           so they get compiled. We still need a way to tell readers
7023           the filename of the code sample. In some cases, don't show
7024           all code in the documentation, but do include it in the generated
7025           code. This allows for focussing on specific bits in the docs,
7026           while still having a full test application available.
7027         * examples/manual/Makefile.am:
7028           Fix up examples for new ADM. Add several of the new examples that
7029           were either added or were missing from the build system.
7030         * examples/manual/extract.pl:
7031           Allow nameless blocks.
7032
7033 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7034
7035         * docs/manual/elements-api.xml:
7036         * docs/manual/helloworld.xml:
7037         * examples/manual/extract.pl:
7038           fix last example.  Add example of adding code blocks that are not
7039           shown in docbook output.
7040
7041 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7042
7043         * docs/manual/dynamic.xml:
7044         * docs/manual/elements-api.xml:
7045         * docs/manual/gnome.xml:
7046         * docs/manual/helloworld2.xml:
7047         * docs/manual/init-api.xml:
7048         * docs/manual/queues.xml:
7049         * docs/manual/threads.xml:
7050         * docs/manual/xml.xml:
7051         * examples/manual/extract.pl:
7052           Make it possible to extract example code from separate blocks.
7053           Should make Ronald happy.
7054
7055 2004-12-15  Wim Taymans  <wim@fluendo.com>
7056
7057         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7058         (remove_from_group), (group_elements_set_visited),
7059         (normalize_group), (gst_opt_scheduler_iterate):
7060         Fix bug where a flag was not updated on a decoupled entry point 
7061         because we were just checking the group element list and decoupled
7062         elements are not in that list..
7063
7064 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7065
7066         * docs/manual/advanced-autoplugging.xml:
7067         * docs/manual/advanced-clocks.xml:
7068         * docs/manual/advanced-dparams.xml:
7069         * docs/manual/advanced-interfaces.xml:
7070         * docs/manual/advanced-metadata.xml:
7071         * docs/manual/advanced-position.xml:
7072         * docs/manual/advanced-schedulers.xml:
7073         * docs/manual/advanced-threads.xml:
7074         * docs/manual/appendix-debugging.xml:
7075         * docs/manual/appendix-gnome.xml:
7076         * docs/manual/appendix-programs.xml:
7077         * docs/manual/appendix-quotes.xml:
7078         * docs/manual/appendix-win32.xml:
7079         * docs/manual/autoplugging.xml:
7080         * docs/manual/basics-bins.xml:
7081         * docs/manual/basics-data.xml:
7082         * docs/manual/basics-elements.xml:
7083         * docs/manual/basics-helloworld.xml:
7084         * docs/manual/basics-init.xml:
7085         * docs/manual/basics-pads.xml:
7086         * docs/manual/basics-plugins.xml:
7087         * docs/manual/bins-api.xml:
7088         * docs/manual/bins.xml:
7089         * docs/manual/buffers-api.xml:
7090         * docs/manual/buffers.xml:
7091         * docs/manual/clocks.xml:
7092         * docs/manual/components.xml:
7093         * docs/manual/cothreads.xml:
7094         * docs/manual/debugging.xml:
7095         * docs/manual/dparams-app.xml:
7096         * docs/manual/dynamic.xml:
7097         * docs/manual/elements-api.xml:
7098         * docs/manual/elements.xml:
7099         * docs/manual/factories.xml:
7100         * docs/manual/gnome.xml:
7101         * docs/manual/goals.xml:
7102         * docs/manual/helloworld.xml:
7103         * docs/manual/helloworld2.xml:
7104         * docs/manual/highlevel-components.xml:
7105         * docs/manual/highlevel-xml.xml:
7106         * docs/manual/init-api.xml:
7107         * docs/manual/intro-motivation.xml:
7108         * docs/manual/intro-preface.xml:
7109         * docs/manual/intro.xml:
7110         * docs/manual/links-api.xml:
7111         * docs/manual/links.xml:
7112         * docs/manual/manual.xml:
7113         * docs/manual/motivation.xml:
7114         * docs/manual/pads-api.xml:
7115         * docs/manual/pads.xml:
7116         * docs/manual/plugins-api.xml:
7117         * docs/manual/plugins.xml:
7118         * docs/manual/programs.xml:
7119         * docs/manual/queues.xml:
7120         * docs/manual/quotes.xml:
7121         * docs/manual/schedulers.xml:
7122         * docs/manual/states-api.xml:
7123         * docs/manual/states.xml:
7124         * docs/manual/threads.xml:
7125         * docs/manual/typedetection.xml:
7126         * docs/manual/win32.xml:
7127         * docs/manual/xml.xml:
7128           First try at rewriting the ADM. Needs lotsamore work, but some
7129           parts might already be somewhat useful.
7130         * docs/pwg/advanced-interfaces.xml:
7131           Remove properties interface, it never actually existed (except for
7132           on my HD...).
7133
7134 2004-12-13  David Schleef  <ds@schleef.org>
7135
7136         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
7137         be NULL (bug #160220).
7138
7139 2004-12-13  David Schleef  <ds@schleef.org>
7140
7141         * configure.ac: remove all mmx stuff, because it's not used.
7142         * docs/random/ds/0.9-suggested-changes: additional notes
7143         * include/Makefile.am: we don't use these anymore
7144         * include/mmx.h: remove
7145         * include/sse.h: remove
7146
7147 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
7148
7149         * docs/random/mimetypes:
7150           Add FOURCC code for h264 codec (VSSH)
7151           Add alternate FOURCC codes for h263 related codecs
7152
7153 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
7154
7155         * docs/manual/programs.xml:
7156           Added more gst-launch examples.
7157
7158 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7159
7160         * gst/gstqueue.c: (gst_queue_handle_src_query):
7161           Check for availability again.
7162
7163 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7164
7165         * gst/gstcaps.c: (gst_caps_compare_structures):
7166           Simple caps go first. This has the nice side-effect of fixing an
7167           obscure warning.
7168
7169 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7170
7171         * gst/gstversion.h.in:
7172           Protect header.
7173
7174 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7175
7176         * gst/schedulers/gstoptimalscheduler.c:
7177         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
7178         (gst_opt_scheduler_get_wrapper):
7179           When we're recursing into a chain run, only run the directly
7180           related group, not all queued ones. This will fix a possible
7181           deadlock in chains with more than two groups.
7182
7183 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
7184
7185         * autogen.sh:
7186           remove patch if autopoint fails
7187
7188 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7189
7190         * docs/gst/gstreamer-sections.txt:
7191           Document Thomas' addition, fix build, make Luis the sheriff happy.
7192
7193 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7194
7195         * gst/gstplugin.c:
7196         * gst/gstplugin.h:
7197           add accessor for version field
7198
7199 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7200
7201         submitted by: Luca Ferretti <elle.uca@infinito.it>
7202
7203         * po/LINGUAS:
7204         * po/it.po:
7205           New tranlation added: Italian
7206
7207 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7208
7209         * gst/gstpad.c: (gst_pad_is_negotiated),
7210         (gst_pad_get_negotiated_caps):
7211           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
7212           it doesn't actually check the contents), so be sure to hand it
7213           a RealPad else we'll crash.
7214
7215 2004-12-03  Wim Taymans  <wim@fluendo.com>
7216
7217         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
7218         (gst_queue_link), (gst_queue_handle_src_query):
7219         Reverted to 1.110 until this makes the testsuite and various
7220         apps work.
7221
7222 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
7223
7224         * docs/upload.mak: fix included CVS conflict strings
7225
7226 2004-12-01  William Jon McCann  <mccann@jhu.edu>
7227
7228         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7229
7230         * gst/gstelement.c: (gst_element_error_full):
7231           Use g_error_new_literal because error text may have
7232           percentage signs in it. Fixes #160019.
7233
7234 2004-12-01  Benjamin Otte  <otte@gnome.org>
7235
7236         * gst/elements/gstbufferstore.c:
7237         (gst_buffer_store_add_buffer_func):
7238           don't try to make subbuffers bigger than they can be. (fixes
7239           #159970)
7240
7241 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7242
7243         * docs/gst/gstreamer-sections.txt:
7244         * docs/gst/tmpl/gstvalue.sgml:
7245           Add new function to docs to fix build.
7246
7247 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7248
7249         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
7250         * gst/gstpad.c: (_gst_pad_default_fixate_value),
7251         (_gst_pad_default_fixate_foreach):
7252         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
7253         * gst/gstvalue.h:
7254           Deprecate _type_is_fixed, use _value_is_fixed instead, since
7255           in some cases (arrays), the fixedness depends on the content.
7256         * gst/gstqueue.c: (gst_queue_handle_src_query):
7257           Check for availability before doing something.
7258
7259 2004-11-29  Wim Taymans  <wim@fluendo.com>
7260
7261         * testsuite/threads/Makefile.am:
7262         * testsuite/threads/signals.c: (gst_test_get_type),
7263         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
7264         (gst_test_set_property), (gst_test_get_property),
7265         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
7266         (gst_test_do_prop), (run_thread), (main):
7267         Added a bunch of testcases that show threadsafety bugs in glib.
7268
7269 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
7270
7271         * docs/manual/programs.xml:
7272           Added a first batch of gst-launch examples, as provided by Ronald
7273           and others from the devel-mlist
7274
7275 2004-11-28  Benjamin Otte  <otte@gnome.org>
7276
7277         * gst/gstelement.c: (gst_element_negotiate_pads):
7278           simplify
7279         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
7280         (gst_value_serialize_string), (gst_value_deserialize_string):
7281           add unwrapping of previously wrapped strings. Fix bug in wrapping
7282           while at it.
7283         * testsuite/caps/value_serialize.c: (test1),
7284         (test_string_serialization), (test_string_deserialization), (main):
7285           add tests for string (de)serialization
7286
7287 2004-11-26  Wim Taymans  <wim@fluendo.com>
7288
7289         * testsuite/threads/159566.c: (object_deep_notify), (main):
7290         * testsuite/threads/Makefile.am:
7291         Added testsuite to show bug #159566
7292
7293 2004-11-25  Wim Taymans  <wim@fluendo.com>
7294
7295         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
7296         (gst_thread_child_state_change), (gst_thread_main_loop):
7297         Ref the thread object in the GThread mainloop. Break out of the
7298         thread mainloop if it holds the last ref. This properly exits
7299         the threads when disposing the thread from its own context. It
7300         also avoids possible deadlocks in the dispose function.
7301
7302 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
7303
7304         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
7305         it is necessary to wait.
7306
7307 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7308
7309         * docs/pwg/building-boiler.xml:
7310           Make description somewhat clearer.
7311
7312 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7313
7314         * docs/upload.mak:
7315           Apparently docs changed location on FDO's server.
7316
7317 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7318
7319         * docs/pwg/appendix-checklist.xml:
7320           Add some random notes on things to check when writing an element.
7321           This list can be extended as people see fit.
7322
7323 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
7324
7325         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
7326         (gst_queue_link_src): Allow for renegotiating the caps of the sink
7327         pad. The queue will now wait until it is empty and forward the new
7328         caps to the source.
7329         * gst/gstbin.c (gst_bin_set_element_sched)
7330         (gst_bin_unset_element_sched): Make sure that all elements and
7331         links are registered and unregistered with the scheduler exactly
7332         once. This elaborates on a fix by Benjamin Otte, but
7333         guarantees that decoupled elements are also registered.
7334
7335 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7336
7337         * docs/manual/quotes.xml:
7338           add a quote
7339         * configure.ac:
7340         * gst/gst.c:
7341         * gst/gstinfo.c:
7342           add LIBDIR and move init message higher up so it's at the start
7343
7344 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
7345
7346         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
7347         * gstreamer.spec.in: add fair
7348
7349 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7350
7351         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
7352         * gst/elements/gstidentity.c: (gst_identity_class_init):
7353           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
7354           <teuf@gnome.org> (#157263).
7355         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
7356         (gst_type_find_handle_src_query):
7357           Subtract size of internally stored data from position queries.
7358
7359 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
7360
7361         * gst/schedulers/fairscheduler.c:
7362         * gst/schedulers/faircothreads.c:
7363         * gst/schedulers/faircothreads.h:
7364         New cothread based scheduler: Fair scheduler.
7365         * gst/schedulers/gthread-cothreads.h: 
7366         Add the standard #if around the whole file.
7367         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
7368         compilation of the functions defined in this file. This is
7369         necessary to be able to use this file as a normal header.
7370         * gst/schedulers/Makefile.am: Add compiling support for fair
7371         scheduler.
7372         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
7373         scheduler cothreads layer from documentation generation.
7374
7375 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7376
7377         * gst/autoplug/gstspideridentity.c:
7378         (gst_spider_identity_sink_loop_type_finding):
7379           Don't crash if that function is not implemented.
7380
7381 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7382
7383         * docs/pwg/advanced-types.xml:
7384           Another typo.
7385
7386 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7387
7388         * docs/pwg/intro-preface.xml:
7389           Hm, ok, so the brackets weren't really useful...
7390         * docs/pwg/other-ntoone.xml:
7391           Fix embarassing typo.
7392
7393 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7394
7395         * docs/pwg/intro-preface.xml:
7396           Rewrite preface.
7397
7398 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7399
7400         * docs/pwg/advanced-scheduling.xml:
7401         * docs/pwg/advanced-tagging.xml:
7402         * docs/pwg/advanced-types.xml:
7403         * docs/pwg/building-boiler.xml:
7404         * docs/pwg/building-chainfn.xml:
7405         * docs/pwg/building-signals.xml:
7406         * docs/pwg/building-state.xml:
7407         * docs/pwg/building-testapp.xml:
7408         * docs/pwg/intro-basics.xml:
7409         * docs/pwg/other-manager.xml:
7410         * docs/pwg/other-source.xml:
7411           Typo fixes.
7412         * docs/pwg/other-manager.xml:
7413           Add some first content. No example code yet.
7414         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
7415           Remove double newlines.
7416
7417 2004-11-04  Wim Taymans  <wim@fluendo.com>
7418
7419         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7420         (remove_from_group), (normalize_group), (group_migrate_connected),
7421         (gst_opt_scheduler_iterate):
7422         * testsuite/schedulers/.cvsignore:
7423         * testsuite/schedulers/Makefile.am:
7424         * testsuite/schedulers/queue_link.c: (main):
7425         Added testcase for scheduler segfault.
7426         Fix scheduler segfault when removing a decoupled
7427         entry point as the last element from a group.
7428
7429 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
7430
7431         * gst/gstmarshal.list: add missing marshaller, fixes build
7432
7433 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
7434
7435         * docs/random/signal: added notes about using BOXED for GstBuffer
7436         signal marshallers, not POINTER
7437
7438 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
7439
7440         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
7441         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
7442         POINTER=>BOXED changes to marshal GstBuffers
7443
7444 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
7445
7446         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
7447         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
7448
7449 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
7450
7451         * docs/gst/gstreamer-sections.txt:
7452         * docs/gst/tmpl/gstcaps.sgml:
7453         * docs/gst/tmpl/gsterror.sgml:
7454         * docs/gst/tmpl/gstinfo.sgml:
7455         * docs/gst/tmpl/gstmacros.sgml:
7456         * docs/gst/tmpl/gstutils.sgml:
7457         * docs/random/ensonic/interfaces.txt:
7458         * gst/gstinfo.h:
7459           added some more docs, removed two obsolete defines
7460
7461 2004-11-02  Kjartan Maraas <as at gnome.org>
7462
7463         reviewed by: Wim Taymans, Ronald Bultje.
7464
7465         * gst/cothreads.c: (cothread_create):
7466         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
7467         (gst_bin_child_state_change_func):
7468         * gst/gstbuffer.c: (gst_buffer_span):
7469         * gst/gstelement.c: (gst_element_get_index),
7470         (gst_element_get_event_masks), (gst_element_get_query_types),
7471         (gst_element_get_formats):
7472         * gst/gsterror.c: (_gst_core_errors_init),
7473         (_gst_library_errors_init), (_gst_resource_errors_init),
7474         (_gst_stream_errors_init):
7475         * gst/gstobject.c: (gst_object_default_deep_notify):
7476         * gst/gstpad.c: (gst_pad_get_event_masks),
7477         (gst_pad_get_internal_links_default):
7478         * gst/gstplugin.c: (gst_plugin_register_func),
7479         (gst_plugin_get_module):
7480         * gst/gststructure.c: (gst_structure_get_string),
7481         (gst_structure_get_abbrs), (gst_structure_from_abbr),
7482         (gst_structure_to_abbr):
7483         * gst/gstutils.c: (gst_print_element_args):
7484         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7485         (setup_group_scheduler), (gst_opt_scheduler_iterate):
7486         Aplied part of patch #157127: Cleanup of issues reported by 
7487         sparse.
7488         Also do not try to use cothreads when there is no cothread
7489         context yet.
7490
7491 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
7492
7493         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7494         (gst_opt_scheduler_iterate):
7495         Applied patch #154061. Running a pipeline in which an element 
7496         calls GST_ELEMENT_ERROR in the chain function, the opt 
7497         scheduler doesn't unref the chain so it never gets freed.
7498
7499 2004-11-02  Wim Taymans  <wim@fluendo.com>
7500
7501         * gst/gststructure.c: (gst_structure_get_abbrs),
7502         (gst_structure_from_abbr), (gst_structure_to_abbr):
7503         Remove that ugly if-then thing in the code that converts
7504         between strings and types.
7505
7506 2004-11-02  Wim Taymans  <wim@fluendo.com>
7507
7508         * gst/gstscheduler.c: (gst_scheduler_add_element),
7509         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
7510         Aplied clock distribution patch, this should fix bug
7511         #148787.
7512
7513 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
7514
7515         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
7516
7517         * po/LINGUAS:
7518         * po/nb.po:
7519           Added Norwegian Bokmaal translation
7520
7521 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7522
7523         * tools/gst-inspect.c: (print_signal_info):
7524           print signal arguments as pointers if they are
7525
7526 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
7527
7528         * docs/pwg/building-boiler.xml:
7529           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
7530
7531 2004-10-19  Wim Taymans  <wim at fluendo dot com>
7532
7533         * gst/parse/parse.l:
7534         * testsuite/parse/parse1.c: (main):
7535         Since parse can do 'element name=a:b' make 'a:b.' work as
7536         well. 
7537         Added testcase to verify fix.
7538
7539 2004-10-19  Wim Taymans  <wim at fluendo dot com>
7540
7541         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
7542         Use the realpad when printing the direction.
7543         Add extra \n when printing extensions of typefind factories.
7544
7545 2004-10-13  David Schleef  <ds@schleef.org>
7546
7547         * examples/manual/Makefile.am: $< isn't portable in Makefile
7548         rules.
7549
7550 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
7551
7552         * docs/gst/tmpl/gstobject.sgml:
7553         * docs/gst/tmpl/gstplugin.sgml:
7554         * docs/gst/tmpl/gstpluginfeature.sgml:
7555         * docs/gst/tmpl/gstregistry.sgml:
7556         * docs/gst/tmpl/gstversion.sgml:
7557         * gst/gstbin.c:
7558           more api documentation
7559         * gst/gstplugin.c: (gst_plugin_register_func),
7560         (gst_plugin_check_file), (gst_plugin_load_file):
7561           better error signaling and logging
7562
7563 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7564
7565         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
7566           Subtract current queue contents from position queries.
7567
7568 2004-10-11  Johan Dahlin  <johan@gnome.org>
7569
7570         * gst/gsturi.c (gst_uri_get_location): unescape string
7571         (gst_uri_construct): escape string.
7572
7573 2004-10-11  Benjamin Otte  <otte@gnome.org>
7574
7575         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
7576         (gst_pad_try_set_caps_nonfixed):
7577           allow renegotiation of unconnected pads (as inside spider). Simply
7578           return OK if unconnected - mimic try_set_caps there.
7579
7580 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7581
7582         * gst/gstbin.c: (gst_bin_sync_children_state):
7583           Add missing break.
7584
7585 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7586
7587         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
7588         Set element to EOS before sending EOS event
7589
7590 2004-10-08  Wim Taymans  <wim at fluendo dot com>
7591
7592         * gst/elements/gsttypefindelement.c:
7593         (gst_type_find_element_handle_event):
7594         Handle EOS events when doing the transition from
7595         typefind to data passing. This should fix the
7596         infinite loops in short files.
7597
7598 2004-10-07  Wim Taymans  <wim at fluendo dot com>
7599
7600         * gst/gstthread.c: (gst_thread_change_state),
7601         (gst_thread_child_state_change):
7602         Make sure no iteration happens while performing
7603         the state change as it could mess up the internal
7604         consistency of the thread state.
7605
7606 2004-10-07  Wim Taymans  <wim at fluendo dot com>
7607
7608         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
7609         (gst_thread_change_state), (gst_thread_child_state_change):
7610         Do not try to grab the iterate lock in the state change method
7611         when we are in the same thread as the iterate or else we
7612         could deadlock. Some other cleanups.
7613
7614 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7615
7616         * configure.ac:
7617           bump nano to cvs
7618
7619 === release 0.8.7 ===
7620
7621 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7622
7623         * configure.ac:
7624         * NEWS:
7625         * RELEASE:
7626         * configure.ac:
7627           releasing 0.8.7, "A Cruise"
7628
7629 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
7630
7631         * docs/random/mimetypes:
7632         Add an entry for Sony ATRAC3 audio format with mime-type
7633         used by rmdemux et riff-read
7634
7635 2004-10-06  Wim Taymans  <wim at fluendo dot com>
7636
7637         * gst/elements/gsttypefindelement.c: (stop_typefinding):
7638         Push the buffer store instead of clearing it in case that
7639         the stream is not seekable.
7640
7641 2004-10-06  Wim Taymans  <wim at fluendo dot com>
7642
7643         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
7644         (gst_thread_main_loop):
7645         Lock the iteration and the state change so that automatic
7646         negotiation and fixation does not happen at the same time
7647         as the in stream negotiation.
7648
7649 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7650
7651         * configure.ac:
7652           bump nano to cvs
7653
7654 === release 0.8.6 ===
7655
7656 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7657
7658         * configure.ac:
7659         * NEWS:
7660         * RELEASE:
7661         * configure.ac:
7662           releasing 0.8.6, "Narc"
7663
7664 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7665
7666         * configure.ac:
7667           prerel bump
7668
7669 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7670
7671         patch by: Steve Lhomme
7672
7673         * gst/elements/gstfakesrc.c:
7674         * gst/elements/gstidentity.c:
7675         * gst/gstthread.c:
7676           Fix for #153881
7677
7678 2004-10-01  Wim Taymans  <wim at fluendo dot com>
7679
7680         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
7681         Fix threadsafety of the crc checking function.
7682
7683 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7684
7685         patch by: Ronald Bultje
7686
7687         * gst/elements/gsttypefindelement.c: (stop_typefinding),
7688         (gst_type_find_element_handle_event),
7689         (gst_type_find_element_chain):
7690         * gst/elements/gsttypefindelement.h:
7691          #153657.
7692          Filter out discont event from seekable sources when typefind
7693          asks them to seek.  Fixes typefind with demuxers for
7694          avi, asf and matroska.
7695
7696 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7697
7698         * docs/gst/gstreamer-sections.txt:
7699         * gst/gstcaps.c:
7700         * gst/gstcaps.h:
7701         * gst/gstpad.c:
7702           Revert preferred caps: (#147789)
7703
7704 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
7705
7706         * win32/dirent.c:
7707           fix a memory leak
7708
7709 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7710
7711         * configure.ac:
7712           bump for prerelease
7713
7714 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7715
7716         * docs/Makefile.am:
7717         * docs/manual/elements-api.xml:
7718           restructure so that common stuff is shown first
7719         * docs/manual/init-api.xml:
7720           convert to examples
7721         * docs/manual/manual.xml:
7722         * docs/manuals.mak:
7723         * docs/url.entities:
7724           link to API on the website, possibly override later in build
7725         * examples/manual/.cvsignore:
7726           ignore more
7727         * examples/manual/Makefile.am:
7728           add more examples
7729         * examples/manual/extract.pl:
7730           error out on failure
7731
7732 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
7733
7734         * docs/gst/tmpl/gstthread.sgml:
7735         * docs/manual/init-api.xml:
7736         * examples/manual/Makefile.am:
7737           convert two code bits to examples
7738
7739 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7740
7741         * gst/gstelement.c: (gst_element_change_state):
7742           Well, actually, I was about to remove this insane assert when
7743           I noticed Wim already did that. A warning is nice so we can
7744           fix actual ugs (using --g-fatal-warnings and backtraces), so
7745           I added that instead.
7746
7747 2004-09-06  Wim Taymans  <wim@fluendo.com>
7748
7749         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
7750         (gst_element_threadsafe_properties_post_run),
7751         (gst_element_set_state), (gst_element_change_state):
7752         Added extra refcounting around various places. 
7753
7754 2004-09-06  Wim Taymans  <wim@fluendo.com>
7755
7756         * gst/gstpad.c: (gst_pad_link_call_link_functions):
7757         Fix debug info.
7758
7759 2004-09-06  Wim Taymans  <wim@fluendo.com>
7760
7761         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7762         (remove_from_group):
7763         Some more debug info.
7764
7765 2004-09-03  Wim Taymans  <wim@fluendo.com>
7766
7767         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
7768         (gst_fakesrc_init), (gst_fakesrc_set_clock),
7769         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
7770         (gst_fakesrc_get), (gst_fakesrc_change_state):
7771         * gst/elements/gstfakesrc.h:
7772         * gst/elements/gstidentity.c: (gst_identity_class_init),
7773         (gst_identity_init), (gst_identity_chain),
7774         (gst_identity_set_property), (gst_identity_get_property),
7775         (gst_identity_change_state):
7776         * gst/elements/gstidentity.h:
7777         Added datarate properties to limit the datarate.
7778
7779 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7780
7781         * gst/autoplug/gstspider.c: (plugin_init):
7782           don't set a rank. We don't want to autoplug by inserting spiders.
7783
7784 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7785
7786         * gst/autoplug/gstspider.c: (gst_spider_class_init),
7787         (gst_spider_identity_plug):
7788           add a template for spider's sink
7789         * gst/gst.c: (gst_register_core_elements):
7790           queue's rank should be NULL, we don't want spider to add it.
7791
7792 2004-08-18  David Schleef  <ds@schleef.org>
7793
7794         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
7795         * docs/libs/Makefile.am: same
7796         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
7797         * docs/random/ds/0.9-planning: random additions
7798         * docs/random/ds/0.9-suggested-changes: same
7799         * gst/gstxml.h: remove vestigal GstXMLNs definition
7800
7801         Preferred caps: (#147789)
7802         * docs/gst/gstreamer-sections.txt: Add symbols
7803         * docs/gst/tmpl/gstcaps.sgml: Add symbols
7804         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7805         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
7806         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
7807         (gst_caps_get_preferred), (gst_caps_set_preferred),
7808         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
7809         (gst_caps_use_preferred): Handle caps preferences
7810         * gst/gstcaps.h: Add caps preferences
7811         * gst/gstpad.c: (gst_pad_link_get_preferred),
7812         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
7813         (gst_pad_renegotiate), (gst_pad_guess_preferred),
7814         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
7815         negotiation.
7816
7817 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7818
7819         * gst/autoplug/gstspideridentity.c:
7820         (gst_spider_identity_request_new_pad):
7821         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
7822         (gst_aggregator_init):
7823         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
7824         (gst_fakesink_init):
7825         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
7826         (gst_fakesrc_init):
7827         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
7828         (gst_fdsink_init):
7829         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
7830         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
7831         (gst_filesink_init):
7832         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
7833         (gst_filesrc_init):
7834         * gst/elements/gstidentity.c: (gst_identity_base_init),
7835         (gst_identity_init):
7836         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
7837         (gst_multifilesrc_init):
7838         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
7839         (gst_pipefilter_init):
7840         * gst/elements/gststatistics.c: (gst_statistics_base_init),
7841         (gst_statistics_init):
7842         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
7843         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
7844           s/gst_pad_new/&_from_template/
7845           register pad templates in the base_init function
7846           add static pad template definitions
7847
7848 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7849
7850         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
7851         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
7852         * testsuite/refcounting/pad.c: (main):
7853         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
7854           s/gst_pad_new/&_from_template/
7855           prepare deprecation of gst_pad_new
7856
7857 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7858
7859         patch by: Luca Ognibene <skaboy81@virgilio.it>
7860
7861         * gst/gstcaps.c:
7862         * gst/gstelement.c:
7863         * gst/gstpad.c:
7864         * gst/gstxml.c:
7865           fix memleaks.  Fixes #150001
7866
7867 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7868
7869         * docs/random/ds/0.9-suggested-changes:
7870           add notes - mostly about pad templates
7871
7872 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
7873
7874         * win32/GStreamer.vcproj:
7875           temporary locale files are .gmo not .mo
7876
7877 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7878
7879         * configure.ac: bump nano to cvs
7880
7881 === release 0.8.5 ===
7882
7883 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7884
7885         * configure.ac:
7886           releasing 0.8.5, "Stuttgart"
7887         * NEWS:
7888         * RELEASE:
7889         * configure.ac:
7890         * docs/random/release:
7891           updates for release
7892
7893 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7894
7895         patch by: Wim Taymans (wim@fluendo.com)
7896
7897         * gst/gstbuffer.c:
7898         * gst/gstindex.h:
7899         * libs/gst/dataprotocol/dataprotocol.c:
7900           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
7901
7902 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7903
7904         * Makefile.am:
7905         * win32/MANIFEST:
7906           add win32 dir to the build.  Fixes #149981.
7907
7908 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7909
7910         * configure.ac:
7911           bump libtool versioning
7912         * gst/gststructure.c:
7913           mark function as static
7914         * po/af.po:
7915         * po/az.po:
7916         * po/ca.po:
7917         * po/cs.po:
7918         * po/en_GB.po:
7919         * po/fr.po:
7920         * po/nl.po:
7921         * po/sq.po:
7922         * po/sr.po:
7923         * po/sv.po:
7924         * po/tr.po:
7925         * po/uk.po:
7926           translations update
7927         * win32/README.txt:
7928           trademark protection
7929
7930 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7931
7932         * configure.ac:
7933           fix GST_ORIGIN
7934           set GST_PACKAGE to source, and distinguish between release and other
7935         * tools/gst-inspect.c:
7936           print out plugin an element factory is part of so we see this info
7937
7938 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7939
7940         * docs/gst/gstreamer-sections.txt:
7941         * docs/gst/tmpl/gstbuffer.sgml:
7942         * docs/gst/tmpl/gstschedulerfactory.sgml:
7943           reorder docs a little, make GstBuffer's more sensible.
7944         * gst/gstbuffer.h:
7945           API: added GST_BUFFER_FLAG_DELTA_UNIT
7946         * gst/gstscheduler.c:
7947           comment API addition
7948
7949 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7950
7951         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7952           work with non-regular files that can be mmapped (like /dev/zero)
7953         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
7954           get rid of typefinds that require a seek when we can't seek instead
7955           of trying them over and over again
7956         * tools/gst-launch.c: (idle_func), (error_cb), (main):
7957           return non-zero failure value when the pipeline was interrupted or
7958           an error occurred
7959
7960 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7961
7962         * win32/config.h:
7963         * win32/GStreamer.vcproj:
7964           compile and install the locales
7965
7966 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7967
7968         * gst/gstvalue.c:
7969           fix a possible memory leak under Windows
7970
7971 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7972
7973         * win32/GStreamer.vcproj:
7974           fix a memory leak that occured under Windows
7975         * win32/gstreamer.def:
7976           add gst_scheduler_register
7977
7978 2004-08-11  Benjamin Otte  <otte@gnome.org>
7979
7980         * docs/gst/gstreamer-sections.txt:
7981         * gst/gstscheduler.c: (gst_scheduler_register):
7982         * gst/gstscheduler.h:
7983           API:
7984           add gst_scheduler_register shortcut similar to gst_element_register
7985         * gst/schedulers/entryscheduler.c: (plugin_init):
7986         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7987         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
7988           use it
7989
7990 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
7991
7992         * gst/gstvalue.h:
7993           fix a memory leak that occured under Windows
7994
7995 2004-08-10  Colin Walters  <walters@redhat.com>
7996
7997         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
7998         Don't use O_EXCL to open temporary registry.  It will prevent
7999         registry creation if a temporary one already exists, which
8000         is unnecessary.
8001
8002 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
8003
8004         * docs/gst/gstreamer-sections.txt:
8005         * docs/gst/tmpl/gstvalue.sgml:
8006           remove some valuable stuff from the documentation due to the use of GST_EXPORT
8007
8008 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
8009
8010         * win32/gstbytestream.vcproj:
8011         * win32/gstelements.vcproj:
8012         * win32/gstgetbits.vcproj:
8013         * win32/gst-inspect.vcproj:
8014         * win32/gst-launch.vcproj:
8015         * win32/gstoptimalscheduler.vcproj:
8016         * win32/GStreamer.vcproj:
8017         * win32/gst-register.vcproj:
8018         * win32/gstspider.vcproj:
8019           update the include and lib dirs to fit standard libraries as
8020           described in the Win32 manual
8021
8022 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
8023
8024         * win32/config.h:
8025         * win32/gstversion.h:
8026           enable NLS again, push the version number for the coming 0.8.5 release
8027
8028 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
8029
8030         * gst/gstvalue.h:
8031           export gst_type_XXX for windows DLLs
8032
8033 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8034
8035         * docs/faq/gst-uninstalled:
8036           fix PKG_CONFIG_PATH and PYTHONPATH
8037         * gst/schedulers/Makefile.am:
8038           cleanup
8039         * libs/gst/bytestream/bytestream.c:
8040           remove newline
8041         * po/LINGUAS:
8042         * po/sq.po:
8043           adding Albanian translation (Laurent Dhima)
8044         * po/cs.po:
8045           updated
8046
8047 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8048
8049         * po/ca.po:
8050         * po/sv.po:
8051           updated translations
8052
8053 2004-08-04  Benjamin Otte  <otte@gnome.org>
8054
8055         * tests/mass_elements.c: (main):
8056           allow specifying src and sink element explicitly, so I can test
8057           videotestsrc instead of fakesrc
8058
8059 2004-08-04  Benjamin Otte  <otte@gnome.org>
8060
8061         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
8062         (gst_structure_id_empty_new), (gst_structure_empty_new),
8063         (gst_structure_copy):
8064           add gst_structure_id_empty_new_with_size to allow preallocating
8065           value array sizes. Use this in gst_structure_copy to get rid of
8066           reallocs.
8067           don't do quark=>string=>quark when copying structures
8068
8069 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
8070
8071         * docs/manual/win32.xml:
8072         * win32/README.txt:
8073           update documentation with the clean version of dependencies
8074
8075 2004-08-03  Benjamin Otte  <otte@gnome.org>
8076
8077         * gst/schedulers/entryscheduler.c:
8078         (gst_entry_scheduler_remove_element):
8079           fix for GST_DISABLE_DEBUG
8080         * tools/gst-launch.c: (print_tag):
8081           fixes for G_DISABLE_ASSERT
8082
8083 2004-08-03  Benjamin Otte  <otte@gnome.org>
8084
8085         * gst/gst.c: (gst_register_core_elements):
8086           fix for G_DISABLE_ASSERT
8087         * gst/gstinfo.c: (__gst_in_valgrind):
8088           add for GST_DISABLE_DEBUG
8089
8090 2004-08-03  Benjamin Otte  <otte@gnome.org>
8091
8092         * gst/parse/parse.l:
8093           fix for G_DISABLE_ASSERT
8094
8095 2004-08-03  Wim Taymans  <wim@fluendo.com>
8096
8097         * gst/gstbin.c: (gst_bin_get_type),
8098         (gst_bin_child_state_change_func):
8099         * gst/gstthread.c: (gst_thread_change_state):
8100         Backported some debug logging from a reverted patch
8101         Don't try to destroy the thread twice. Added some more
8102         debugging in GstThread. Unlock and signal even if we
8103         are in the thread context.
8104
8105 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8106
8107         * po/uk.po:
8108           updated translation
8109
8110 2004-07-30  David Schleef  <ds@schleef.org>
8111
8112         * gst/gstatomic_impl.h: Enable atomic code for x86_64
8113
8114 2004-07-29  David Schleef  <ds@schleef.org>
8115
8116         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
8117         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
8118
8119 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8120
8121         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
8122         (gst_bin_add_func), (gst_bin_remove_func),
8123         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
8124         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
8125         (gst_bin_change_state_norecurse), (gst_bin_dispose),
8126         (gst_bin_sync_children_state):
8127         * gst/gstbin.h:
8128         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
8129         (gst_thread_change_state):
8130         * testsuite/states/Makefile.am:
8131           revert state change patches as agreed so we can rework them
8132           gradually
8133
8134 2004-07-29  Benjamin Otte  <otte@gnome.org>
8135
8136         * libs/gst/control/Makefile.am:
8137           link to libgstreamer (fixes Debian bug 262019, see
8138           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
8139
8140 2004-07-29  Wim Taymans  <wim@fluendo.com>
8141
8142         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
8143         (check_from_fraction_convert), (transform_test), (main):
8144         Make the test less pedantic about float roundoff errors.
8145
8146 2004-07-29  Benjamin Otte  <otte@gnome.org>
8147
8148         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
8149         (gst_filesrc_srcpad_event):
8150           make seek events to before start/after end of file not fail, but
8151           seek to start/end instead
8152         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
8153           add more output
8154
8155 2004-07-29  Benjamin Otte  <otte@gnome.org>
8156
8157         * gst/gstpad.c: (gst_pad_set_explicit_caps):
8158           check that caps are fixed
8159         * gst/gstpad.c: (gst_pad_template_new):
8160           don't try to simplify caps, costs too much time on gst_init
8161         * gst/gstplugin.c: (gst_plugin_add_feature):
8162           G_ERROR if features are added twice
8163         * gst/gsttypefind.c: (gst_type_find_register):
8164         * gst/gstelementfactory.c: (gst_element_register):
8165           don't add features twice
8166         * docs/random/ds/0.9-suggested-changes:
8167           add note about possible gst_init optimization
8168
8169 2004-07-28  David Schleef  <ds@schleef.org>
8170
8171         * testsuite/elements/Makefile.am:
8172         * testsuite/elements/struct_i386.h:
8173         * testsuite/elements/struct_size.c: (main):  A little test
8174         to keep distcheck from working if someone changes a structure
8175         size accidentally.
8176
8177 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
8178
8179         * docs/libs/Makefile.am:
8180         * docs/libs/gstreamer-libs-docs.sgml:
8181         * docs/libs/gstreamer-libs-sections.txt:
8182         * docs/libs/tmpl/gstbytestream.sgml:
8183         * docs/libs/tmpl/gstcontrol.sgml:
8184         * docs/libs/tmpl/gstdataprotocol.sgml:
8185         * docs/libs/tmpl/gstgetbits.sgml:
8186         * libs/gst/bytestream/Makefile.am:
8187         * libs/gst/bytestream/bytestream.c:
8188         * libs/gst/bytestream/bytestream.h:
8189         * libs/gst/control/Makefile.am:
8190         * libs/gst/dataprotocol/Makefile.am:
8191         * libs/gst/getbits/Makefile.am:
8192         * libs/gst/getbits/getbits.h:
8193           various doc and style fixes, adding bytestream to libs docs.
8194
8195 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
8196
8197         * docs/gst/gstreamer-docs.sgml:
8198         * docs/libs/Makefile.am:
8199         * docs/libs/gstreamer-libs-docs.sgml:
8200         * docs/libs/gstreamer-libs-sections.txt:
8201         * libs/gst/control/dparam.c:
8202           more doc fixes.  gst-libs docs now build the same way as gst.
8203
8204 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
8205
8206         * configure.ac:
8207         * testsuite/Makefile.am:
8208         * testsuite/bins/Makefile.am:
8209         * testsuite/caps/Makefile.am:
8210         * testsuite/cleanup/Makefile.am:
8211         * testsuite/clock/Makefile.am:
8212         * testsuite/debug/Makefile.am:
8213         * testsuite/dlopen/Makefile.am:
8214         * testsuite/dynparams/Makefile.am:
8215         * testsuite/elements/.cvsignore:
8216         * testsuite/elements/Makefile.am:
8217         * testsuite/enumcaps/Makefile.am:
8218         * testsuite/enumcaps/enumcaps.c:
8219         * testsuite/ghostpads/Makefile.am:
8220         * testsuite/indexers/Makefile.am:
8221         * testsuite/negotiation/Makefile.am:
8222         * testsuite/parse/Makefile.am:
8223         * testsuite/plugin/Makefile.am:
8224         * testsuite/refcounting/Makefile.am:
8225         * testsuite/schedulers/.cvsignore:
8226         * testsuite/states/Makefile.am:
8227         * testsuite/tags/Makefile.am:
8228         * testsuite/threads/Makefile.am:
8229           fold enumcaps into caps dir
8230           clean up Makefile.am's for testsuite
8231
8232 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
8233
8234         * docs/gst/Makefile.am:
8235         * docs/libs/Makefile.am:
8236           clean up docs build.  Fixes needless rebuilding of template files.
8237
8238 2004-07-28  Wim Taymans  <wim@fluendo.com>
8239
8240         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
8241         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
8242         Make sure that a bin state change tries to keep the children
8243         in sync. 
8244         Added debug logging to the thread.
8245
8246 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
8247
8248         * win32/GStreamer.vcproj:
8249         * win32/gstreamer.def:
8250           more exports for the plugins
8251
8252 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
8253
8254         * win32/gstgetbits.vcproj:
8255         * win32/gstgetbits.def:
8256         * win32/msvc71.sln:
8257           add support for the getbits plugin
8258
8259 2004-07-27  Wim Taymans  <wim@fluendo.com>
8260
8261         * gst/gstvalue.c: (gst_value_transform_double_fraction),
8262         (gst_value_transform_fraction_double), (_gst_value_initialize):
8263         * testsuite/caps/Makefile.am:
8264         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
8265         (check_from_fraction_convert), (transform_test), (main):
8266         Added transform functions between double and fraction.
8267         Added testcase to verify transforms
8268
8269 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8270
8271         * win32/GStreamer.vcproj:
8272           rename GStreamer-0.8.lib to libgstreamer.lib
8273
8274 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8275
8276         * win32/gstelements.vcproj:
8277         * win32/gstoptimalscheduler.vcproj:
8278           fixes for the Release build
8279
8280 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8281
8282         * win32/config.h:
8283           update the version number
8284
8285 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8286
8287         * win32/GStreamer.vcproj:
8288           add gstinterface to the build
8289
8290 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8291
8292         * win32/gstreamer.def:
8293           add many definitions needed by plugins,
8294           GST_CAT_DEFAULT only available in the Debug build ?
8295
8296 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8297
8298         * gst/gstelement.c: (gst_element_set_eos_recursive):
8299           various whitespace fixes.
8300           doc fix, fixes #148497
8301
8302 2004-07-25  Benjamin Otte  <otte@gnome.org>
8303
8304         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
8305           don't delay links on the sink elements, it causes unnegotiated
8306           links.
8307         * gst/elements/gsttypefindelement.c:
8308         (gst_type_find_element_base_init):
8309           add our padtemplates, we indeed do have some.
8310         * gst/elements/gsttypefindelement.c:
8311         (gst_type_find_element_handle_event),
8312         (gst_type_find_element_chain):
8313           don't push data when typefinding failed.
8314         * gst/gstpad.c: (gst_pad_link_fixate):
8315           check that no fixate function returns empty caps.
8316         * gst/gstpad.c: (gst_pad_push):
8317           check that the link is negotiated before data gets pushed.
8318         * tools/gst-register.c: (main):
8319           don't assert (fixes #148283)
8320
8321 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
8322
8323         * docs/gst/gstreamer-sections.txt:
8324         * docs/gst/tmpl/gstconfig.sgml:
8325           add GST_PLUGIN_EXPORT definition
8326
8327 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
8328
8329         * gst/gstplugin.h:
8330         * gst/gstconfig.h.in:
8331         * win32/gstconfig.h:
8332         * win32/gstelements.def:
8333         * win32/gstelements.vcproj:
8334         * win32/gstoptimalscheduler.def:
8335         * win32/gstoptimalscheduler.vcproj:
8336         * win32/gstspider.def:
8337         * win32/gstspider.vcproj:
8338           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
8339
8340 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8341
8342         * docs/gst/gstreamer-sections.txt:
8343           remove GST_CAT_DEFAULT because the type has changed
8344
8345 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
8346
8347         * win32/gstbytestream.vcproj:
8348         * win32/gstelements.vcproj:
8349         * win32/gst-inspect.vcproj:
8350         * win32/gst-launch.vcproj:
8351         * win32/gstoptimalscheduler.vcproj:
8352         * win32/GStreamer.vcproj:
8353         * win32/gst-register.vcproj:
8354         * win32/gstspider.vcproj:
8355         * win32/msvc71.sln:
8356           Copy the files where needed after building, The testsuite will be
8357           built separately
8358
8359 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
8360
8361         * win32/config.h:
8362         * win32/README.txt:
8363         * docs/manual/win32.xml:
8364         Fixed the plugin and GStreamer location
8365
8366 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8367
8368         * win32/gstreamer.def:
8369         More exports for the plugins
8370
8371 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8372
8373         * gst/gstinfo.h:
8374         Marc was right, we need to export literally GST_CAT_DEFAULT
8375
8376 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8377
8378         * win32/config.h:
8379         NLS crashes in gettext, disabled until this is solved
8380
8381 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8382
8383         * win32/gst-inspect.vcproj:
8384         * win32/gst-launch.vcproj:
8385         Should use NLS when available
8386
8387 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8388
8389         * gst/registries/gstxmlregistry.c:
8390         removing the file doesn't seem to be a good idea on Linux
8391
8392 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8393
8394         * gst/registries/gstxmlregistry.c:
8395         Remove the registry before renaming the tempfile (needed for Windows)
8396
8397 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8398
8399         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
8400         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
8401         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
8402         * gst/elements/gstmultifilesrc.h:
8403         Added newmedia property so it generates newmedia events between each
8404         file when property is set, as well as fixed eos handling
8405
8406 2004-07-22  David Schleef  <ds@schleef.org>
8407
8408         * gst/gststructure.c: (gst_structure_id_empty_new),
8409         (gst_structure_empty_new):  Set type field correctly.
8410         * gst/gststructure.h: Check type field correctly.
8411         * testsuite/caps/Makefile.am:
8412         * testsuite/caps/structure.c: (test1), (main): Add a very small
8413         test for structures.
8414
8415 2004-07-22  David Schleef  <ds@schleef.org>
8416
8417         * docs/random/ds/0.9-suggested-changes: more comments
8418         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
8419
8420 2004-07-22  Benjamin Otte  <otte@gnome.org>
8421
8422         * gst/gstelementfactory.c: (gst_element_register):
8423           set the factory in the class struct, so gst_element_get_factory
8424           actually works
8425         * gst/parse/grammar.y:
8426           set element to playing when it gets unlocked as we can't rely on the
8427           bin state - all elements in the bin state might still be locked in
8428           NULL)
8429
8430 2004-07-22  Benjamin Otte  <otte@gnome.org>
8431
8432         * gst/gstelement.c: (gst_element_set_state_func):
8433           make this a static function
8434
8435 2004-07-22  Wim Taymans  <wim@fluendo.com>
8436
8437         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8438         (gst_opt_scheduler_pad_link):
8439         fix 147894-2 and the group_link problem.
8440
8441 2004-07-22  Wim Taymans  <wim@fluendo.com>
8442
8443         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
8444         (handoff_identity), (main):
8445         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
8446         (handoff_identity), (main):
8447         * testsuite/schedulers/Makefile.am:
8448         * testsuite/schedulers/group_link.c: (main):
8449         Show bug in scheduler when linking chain and loop based element 
8450         where the chain based element was not yet in a group.
8451
8452 2004-07-21  Benjamin Otte  <otte@gnome.org>
8453
8454         * gst/.cvsignore:
8455         * gst/autoplug/.cvsignore:
8456         * gst/elements/.cvsignore:
8457         * gst/indexers/.cvsignore:
8458         * libs/gst/bytestream/.cvsignore:
8459         * libs/gst/control/.cvsignore:
8460         * libs/gst/getbits/.cvsignore:
8461         * testsuite/states/.cvsignore:
8462         * testsuite/threads/.cvsignore:
8463           keep this up to date, since I seem to be the only one who cares
8464           about not missing files on commits (editor's note: no you don't,
8465           but feel free to change them at the time you add stuff instead
8466           of later on)
8467
8468 2004-07-21  Benjamin Otte  <otte@gnome.org>
8469
8470         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
8471         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
8472         (gst_bin_child_state_change_func), (set_kid_state_func),
8473         (gst_bin_set_state), (gst_bin_change_state_norecurse):
8474           make state changes work correctly and reentrant (so removing
8475           elements from bins during state changes of bins doesn't cause
8476           segfaults or even wrong states)
8477           add debugging category and debugging output to print children states
8478         * gst/gstbin.c: (gst_bin_dispose): 
8479           add some assertion checks
8480         * gst/gstbin.h:
8481         * gst/gstbin.c: (gst_bin_sync_children_state):
8482           deprecate this function - it just does gst_bin_set_state (bin,
8483           GST_STATE (bin)) 
8484         * testsuite/threads/queue.c: (main):
8485           don't use gst_bin_sync_children_state anymore
8486         * testsuite/states/Makefile.am:
8487         * testsuite/states/bin.c:
8488           test that the state changes of bins work as expected
8489         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
8490           some adjustments to change states correctly, too
8491         * gst/gstthread.c: (gst_thread_change_state):
8492           don't enable/disable "threadsafe" properties, they're unused and
8493           cause random segfaults
8494         * testsuite/threads/Makefile.am:
8495           the queue check randomly passes now, ignore it
8496
8497 2004-07-21  Benjamin Otte  <otte@gnome.org>
8498
8499         * gst/gstpad.c:
8500           check if data is NULL before outputting debug info. (fixes #145100)
8501
8502 2004-07-21  Benjamin Otte  <otte@gnome.org>
8503
8504         * gst/schedulers/entryscheduler.c:
8505         (gst_entry_scheduler_loop_wrapper),
8506         (gst_entry_scheduler_chain_wrapper),
8507         (gst_entry_scheduler_get_wrapper):
8508           reset the state when the cothread starts, so we don't get assertion
8509           failures on restarting of cothreads
8510
8511 2004-07-20  Benjamin Otte  <otte@gnome.org>
8512
8513         * gst/gstelement.c: (gst_element_link_pads_filtered):
8514           use correct sinkpad, if only sinkpad is specified, but not srcpad
8515           (fixes #147889)
8516         * gst/gstelement.c: (gst_element_set_state_func),
8517         (gst_element_change_state): ref/unref the element, signal handlers
8518         could get rid of the element otherwise
8519
8520 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8521
8522         * docs/random/ds/0.9-suggested-changes:
8523           Make note about renaming fixed-list to array.
8524         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
8525         (_gst_value_initialize):
8526           Add array intersections.
8527         * testsuite/caps/intersect2.c: (main):
8528           Add test for array intersections.
8529
8530 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8531
8532         * configure.ac: back to cvs
8533
8534 === release 0.8.4 ===
8535
8536 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8537
8538         * configure.ac:
8539           releasing 0.8.4, "Paella"
8540           bump libtool versioning
8541
8542 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8543
8544         * po/LINGUAS:
8545         * po/ca.po:
8546           adding Catalan translation (Jordi Mallach)
8547
8548 2004-07-20  Wim Taymans  <wim@fluendo.com>
8549
8550         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
8551         (handoff_identity), (main):
8552         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
8553         (handoff_identity), (main):
8554         * testsuite/schedulers/Makefile.am:
8555         Added failing testcase for variant of #147894
8556
8557 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8558
8559         patch by: David Moore
8560
8561         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
8562         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
8563         (group_migrate_connected):
8564         * testsuite/schedulers/Makefile.am:
8565           fix for #142813 (Deadlock in optimal scheduler)
8566
8567 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8568
8569         patch by: Wim Taymans
8570
8571         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
8572         (gst_opt_scheduler_schedule_run_queue),
8573         (gst_opt_scheduler_get_wrapper), (get_group),
8574         (group_migrate_connected):
8575         * testsuite/schedulers/Makefile.am:
8576           fix for #147819 (Add some checks in the opt scheduler)
8577
8578 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8579
8580         patch by: Benjamin Otte
8581
8582         * gst/gstelementfactory.c: (__gst_element_details_set):
8583           fix for #147929: running gst-register in non-utf8 locale can cause
8584           invalid registry
8585
8586 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8587
8588         patch by: Wim Taymans
8589
8590         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
8591         (group_has_element), (element_get_reachables_func),
8592         (group_migrate_connected):
8593           fix for #147894 (opt scheduler decoupled elements mismanagement)
8594         * testsuite/schedulers/Makefile.am:
8595           testsuite app now passes
8596
8597 2004-07-19  Wim Taymans  <wim@fluendo.com>
8598
8599         * testsuite/schedulers/147819.c: (handoff_identity1),
8600         (handoff_identity2), (main):
8601         * testsuite/schedulers/Makefile.am:
8602         Added testcase for bug 147819
8603
8604 2004-07-19  Wim Taymans  <wim@fluendo.com>
8605
8606         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
8607         (handoff_identity), (main):
8608         * testsuite/schedulers/Makefile.am:
8609         Added testcase for bug 147894
8610
8611 2004-07-16  Wim Taymans  <wim@fluendo.com>
8612
8613         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
8614         * testsuite/schedulers/142183.c: (handoff_identity), (main):
8615         * testsuite/schedulers/Makefile.am:
8616         Added testsuite for bug 142183 in its two incarnations. Refcount
8617         is not increased for scheduled elements and threadsafe properties
8618         mutexes are not properly unlocked.
8619
8620 2004-07-16  Wim Taymans  <wim@fluendo.com>
8621
8622         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
8623         (create_chain), (destroy_chain), (create_group), (destroy_group),
8624         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
8625         (group_dec_link), (gst_opt_scheduler_pad_link),
8626         (group_inc_links_for_element), (group_migrate_connected):
8627         Call group_inc_link with the proper src->sink ordering -- 
8628         break this, and we break sort_chain. patch from wingo for bug
8629         147713.
8630         Partially revert patch 1.89. When adding a loop based element to 
8631         the scheduler, the links to other groups are automatically followed
8632         and incremented. This should not happen because the bin will call
8633         pad_link explicitly for those connection, resulting in them counted 
8634         twice. Results in assertion failure on pipeline cleanup.
8635
8636 2004-07-16  Wim Taymans  <wim@fluendo.com>
8637
8638         * testsuite/schedulers/143777-2.c: (main):
8639         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
8640         (main):
8641         * testsuite/schedulers/Makefile.am:
8642         Added cleanup code to testcase 143777-2.
8643         Added testcase to show bug 147713, does not really show the
8644         deadlock as I can't figure out how to trigger it, but it does
8645         demonstrate bad ordering in the scheduler.
8646
8647 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8648
8649         * gst/gstvalue.c: (gst_value_deserialize_fraction):
8650           change strndup to g_strndup.  Fixes #147707
8651
8652 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8653
8654         * po/af.po:
8655         * po/az.po:
8656         * po/cs.po:
8657         * po/en_GB.po:
8658         * po/fr.po:
8659         * po/nl.po:
8660         * po/sr.po:
8661         * po/sv.po:
8662         * po/tr.po:
8663         * po/uk.po:
8664           updated translations
8665
8666 2004-07-16  Benjamin Otte  <otte@gnome.org>
8667
8668         * gst/gstvalue.c: (gst_greatest_common_divisor):
8669           use ints and return ints, fractions only use ints, too, so this
8670           avoids accidently casting multiplications to unsigned
8671         (gst_value_lcopy_fraction): it's ints, not uint32
8672         (gst_value_set_fraction): disallow minint, multiplying and negation
8673           are broken with it
8674         (gst_value_fraction_multiply): fix to make large numbers work and get
8675         rid of the assumption that the multiplication of two ints fits an
8676         int64 - dunno if that's true for all systems
8677         * testsuite/caps/Makefile.am:
8678         * testsuite/caps/fraction-multiply-and-zero.c:
8679         (check_multiplication), (check_equal), (zero_test), (main):
8680           add tests for all the stuff above
8681         * testsuite/caps/value_compare.c: (test1):
8682           fix comment
8683         * tests/.cvsignore:
8684         * testsuite/caps/.cvsignore:
8685         * testsuite/debug/.cvsignore:
8686         * testsuite/dlopen/.cvsignore:
8687         * testsuite/states/.cvsignore:
8688           get up to date
8689
8690 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8691
8692         * docs/manual/bins-api.xml:
8693         * docs/manual/factories.xml:
8694         * docs/manual/helloworld.xml:
8695         * docs/manual/links-api.xml: 
8696           fixes for out of date info, incorrect info and grammar
8697
8698 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8699
8700         * docs/manual/pads.xml:
8701         * docs/manual/pads-api.xml: grammar fix
8702
8703 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8704
8705         * docs/manual/pads-api.xml: typo + grammar fix
8706
8707 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8708
8709         * docs/gst/gstreamer-sections.txt:
8710           add new symbols
8711         * docs/gst/tmpl/gstelement.sgml:
8712         * docs/gst/tmpl/gstpad.sgml:
8713         * docs/gst/tmpl/gsttypes.sgml:
8714         * docs/gst/tmpl/gstvalue.sgml:
8715           update docs
8716         * gst/gststructure.c: (gst_structure_set_valist),
8717         (gst_structure_from_abbr), (gst_structure_to_abbr):
8718         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
8719         (gst_greatest_common_divisor), (gst_value_init_fraction),
8720         (gst_value_copy_fraction), (gst_value_collect_fraction),
8721         (gst_value_lcopy_fraction), (gst_value_set_fraction),
8722         (gst_value_get_fraction_numerator),
8723         (gst_value_get_fraction_denominator),
8724         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
8725         (gst_value_deserialize_fraction),
8726         (gst_value_transform_fraction_string),
8727         (gst_value_transform_string_fraction),
8728         (gst_value_compare_fraction), (_gst_value_initialize):
8729         * gst/gstvalue.h:
8730           adding GstFraction GValue type, get/set, and multiply
8731         * testsuite/caps/Makefile.am:
8732         * testsuite/caps/fraction.c: (test), (main):
8733         * testsuite/caps/string-conversions.c: (main):
8734         * testsuite/caps/value_compare.c: (test1), (main):
8735           add regression tests for GstFraction
8736
8737 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8738         
8739         * docs/manual/init-api.xml: Grammar fix
8740
8741 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8742
8743         * docs/manual/states.xml: Fix inconsistent information
8744
8745 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8746
8747         * gst/gstelement.c: (gst_element_set_state):
8748         * gst/gstpad.c: (gst_pad_try_set_caps):
8749         * gst/gststructure.c:
8750         * gst/gstthread.c: (gst_thread_child_state_change):
8751         * gst/gstvalue.c: (gst_value_compare_double):
8752         * gst/gstvalue.h:
8753         * testsuite/parse/parse1.c: (main):
8754           debugging additions and style cleanups
8755
8756 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8757
8758         * docs/manual/states.xml: Grammar fix
8759
8760 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8761
8762         * docs/manual/pads.xml: Grammar fix
8763
8764 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8765
8766         * docs/manual/elements.xml: Fixed image reference
8767
8768 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8769
8770         * docs/manual/goals.xml: Grammar fix
8771
8772 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8773
8774         * docs/manual/motivation.xml:
8775         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
8776
8777 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8778
8779         * docs/manual/motivation.xml: Fix spelling
8780
8781 2004-07-15  Benjamin Otte  <otte@gnome.org>
8782
8783         * gst/gstelement.h: 
8784           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
8785           strings.
8786         * gst/gstelement.c (gst_element_class_init):
8787           GError's are boxed, not objects
8788         * gst/gstmarshal.list:
8789           update list for the fixed error signal
8790
8791 2004-07-14  Andy Wingo  <wingo@pobox.com>
8792
8793         * gst/gsttag.c: Add a tag merge func for pointers. The header was
8794         there all along, but the function wasn't. (guile-gstreamer's build
8795         system uses the address of the function -- I wasn't actually
8796         trying to use this.)
8797
8798 2004-07-14  Andy Wingo  <wingo@pobox.com>
8799
8800         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
8801         as gst_pad_proxy_pad_link) just link to every other pad when they
8802         are called. In the case where the graph has cycles, this will mean
8803         that a call to try_set_caps will recurse. Allow this recursion
8804         and return OK, while we wait for the first try_set_caps to give a
8805         proper return value.
8806         (gst_pad_link_call_link_functions): Since this function is the
8807         only one to set the NEGOTIATING flag on a pad, if the flag is set
8808         it means that the link functions have indirectly recursed. If this
8809         happens, error out to avoid infinite recursion and an eventual
8810         SEGV.
8811         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
8812         (gst_pad_proxy_getcaps): Intersect the result with the template
8813         caps to ensure that the return value is valid.
8814
8815 2004-07-14  Andy Wingo  <wingo@pobox.com>
8816
8817         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
8818         one refcount, the calling function is the owner of the buffer.
8819
8820 2004-07-14  Wim Taymans  <wim@fluendo.com>
8821
8822         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
8823         (gst_opt_scheduler_pad_link), (group_migrate_connected):
8824         Fix stupid warning when an element is to be migrated but
8825         is already migrated.
8826
8827 2004-07-14  Wim Taymans  <wim@fluendo.com>
8828
8829         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
8830         (gst_opt_scheduler_pad_link), (group_migrate_connected):
8831         Make sure that a single non-loop-based element does not 
8832         end up in a group. This fixes the testsuite again.
8833
8834 2004-07-14  Wim Taymans  <wim@fluendo.com>
8835
8836         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8837         (add_to_group), (merge_groups), (schedule_group),
8838         (gst_opt_scheduler_get_wrapper), (group_elements),
8839         (group_dec_link), (gst_opt_scheduler_pad_link),
8840         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
8841         (gst_opt_scheduler_iterate):
8842         move isolated groups to a new chain.
8843         Emit a warning instead of segfaulting in some error cases.
8844         Fix a bug where the link count between groups was not calculated 
8845         correctly. Fixes #144510.
8846
8847 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
8848         * gst/elements/gstfilesrc.c:
8849           Binary files support under Windows now OK
8850       
8851 2004-07-13  Benjamin Otte  <otte@gnome.org>
8852
8853           compatibility fixes for Solaris 8/gcc 2.95
8854         * configure.ac:
8855           include libintl libs in LDFLAGS
8856         * gstvalue.c (gst_value_deserialize_buffer):
8857           cast isxdigit stuff to int to silence compiler warning
8858
8859 2004-07-12  Benjamin Otte  <otte@gnome.org>
8860
8861         * gst/gsttypes.h:
8862           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
8863           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
8864           just causes support madness
8865         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8866           make it work without this
8867         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
8868         (gst_file_index_commit):
8869           glib IO channels don't want binary mode
8870         * testsuite/bytestream/filepadsink.c: (main):
8871         * testsuite/bytestream/test1.c: (read_param_file):
8872           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
8873
8874 2004-07-12  Benjamin Otte  <otte@gnome.org>
8875
8876         * gst/gstelement.c: (gst_element_class_init),
8877         (gst_element_set_state), (gst_element_set_state_func):
8878           virutalize gst_element_set_state, use set_state member in class
8879           struct that was already added in 0.7 for this.
8880         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
8881         (gst_bin_change_state):
8882           make gst_bin_foreach works similar to other foreach functions, plug
8883           memleaks in it. Make functions using it work with the new approach.
8884           Document gst_bin_foreach, so it can be exported if we want to
8885         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
8886           use virtualized set_state to make set_state on bins set the state of
8887           all its children.
8888
8889 2004-07-12  Benjamin Otte  <otte@gnome.org>
8890
8891         * configure.ac:
8892           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
8893           http://bugs.gentoo.org/show_bug.cgi?id=53967)
8894         * gst/gstpad.c: (gst_pad_alloc_buffer):
8895           allow buffer_alloc functions to return NULL and allocate a normal
8896           buffer in that case
8897
8898 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8899         * gst/elements/gstfilesink.c:
8900         * gst/elements/gstfilesrc.c:
8901         * gst/indexers/gstfileindex.c:
8902         * gst/gsttypes.h:
8903         * testsuite/bytestream/filepadsink.c:
8904         * testsuite/bytestream/test1.c:
8905           Handle binary files under Windows
8906
8907 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8908         * docs/manual/win32.xml:
8909         * win32/config.h:
8910         * win32/gst-register.vcproj:
8911         * win32/gstreamer.def:
8912           Update to another gettext public build
8913
8914 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8915         * gst/gstplugin.c:
8916           Fix an impossible C syntax
8917         * win32/config.h:
8918           Disable i18n under Windows for the moment
8919         * win32/gst-register.vcproj:
8920           Use this configuration
8921
8922 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
8923         * docs/manual/quotes.xml:
8924           Keep the quotes file alive
8925         * docs/random/ds/0.9-suggested-changes:
8926           Add the suggestion of including a 'rowstride' as part of video
8927           format caps
8928
8929 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8930
8931         * gst/gstelement.c: (gst_element_set_state),
8932         (gst_element_change_state):
8933           d'oh.  Set PENDING state correctly before forcing bin to change.
8934         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8935         (gst_structure_parse_fixed_list):
8936         * gst/schedulers/gstoptimalscheduler.c:
8937         (gst_opt_scheduler_state_transition):
8938         * testsuite/states/parent.c: (main):
8939           remove comment now that it's fixed.
8940
8941 2004-07-11  Benjamin Otte  <otte@gnome.org>
8942
8943         * gst/gstclock.h:
8944           GST_SECOND shouldn't cause a conversion to unsigned.
8945         * testsuite/clock/.cvsignore:
8946         * testsuite/clock/Makefile.am:
8947         * testsuite/clock/signedness.c: (main):
8948           make sure it never will again
8949
8950 2004-07-11  Andy Wingo  <wingo@pobox.com>
8951
8952         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
8953         whose state is higher than the bin state, raise the bin state to
8954         ensure that bin state := highest child state.
8955         
8956 2004-07-11  Andy Wingo  <wingo@pobox.com>
8957
8958         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
8959         procedure on the children of a bin. Assumes that the procedure can
8960         change the set of children.
8961         (set_kid_state_func): New static function.
8962         (gst_bin_change_state): Use gst_bin_foreach to call
8963         set_kid_state_func. Fixes a bug: if a child had a state-change
8964         handler that removes it from the bin, there would be a segfault.
8965         Hopefully it should also work in the case where the state-change
8966         handler on one child adds or removes other children. In any case,
8967         fixes should go to gst_bin_foreach.
8968
8969 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
8970
8971         * gst/gstelement.c: (gst_element_set_state):
8972           compatibility fix for latest plugins release.  Change loop back
8973           to while {}
8974
8975 2004-07-09  Wim Taymans  <wim@fluendo.com>
8976
8977         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
8978         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
8979         (gst_thread_main_loop):
8980         Since remove is virtual in GstBin we must not assume the 
8981         elements GList to have anothing useful.
8982         Add some more logging to GstThread and be a bit more paranoid
8983         when resetting the scheduler.
8984         Set the state of the bin to NULL before removing the children.
8985
8986 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8987
8988         * testsuite/threads/Makefile.am:
8989         * testsuite/threads/threadg.c:
8990           added test to check if problem when removing all elements from a
8991           GstThread before setting GstThread state to NULL
8992
8993 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8994
8995         * docs/gst/tmpl/gstelement.sgml:
8996         * docs/gst/tmpl/gsttypes.sgml:
8997         * gst/gstbin.c: (gst_bin_change_state):
8998         * gst/gstelement.c: (gst_element_set_state),
8999         (gst_element_change_state):
9000           rework so that for bins we try to set the state on all children
9001           as well even if the bin is in the correct state already.
9002           change while to do so at least one iteration is done.
9003           For regular elements, we fall back to the previous behaviour for
9004           now since we first need a new plugins release.
9005         * testsuite/states/parent.c: (main):
9006           test for this case
9007           Fixes #123774
9008
9009 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9010
9011         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
9012         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
9013         (gst_queue_release_locks), (gst_queue_change_state),
9014         (gst_queue_set_property):
9015           add proper lock debugging.  Change dispose to finalize, since
9016           we're freeing mutexes and other stuff which should happen only once.
9017
9018 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9019
9020         * docs/gst/tmpl/gstelement.sgml:
9021         * docs/gst/tmpl/gstplugin.sgml:
9022         * docs/gst/tmpl/gsttypes.sgml:
9023         * docs/pwg/building-state.xml:
9024         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
9025         * gst/gstelement.c: (gst_element_change_state):
9026         * gst/gstthread.c: (gst_thread_change_state):
9027           catch wrong state changes in element base class.
9028
9029 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9030
9031         * gst/gstinfo.h:
9032           clean up layout a little.
9033
9034 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9035
9036         * configure.ac:
9037         * testsuite/Makefile.am:
9038         * testsuite/states/Makefile.am:
9039         * testsuite/states/parent.c: (main):
9040           re-enable states testsuite dir.  Add test for state changes and
9041           parent behaviour
9042
9043 2004-07-09  Wim Taymans  <wim@fluendo.com>
9044
9045         * gst/schedulers/gstoptimalscheduler.c:
9046         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
9047         (element_get_reachables_func), (element_get_reachables),
9048         (debug_element), (rechain_group), (group_migrate_connected),
9049         (gst_opt_scheduler_pad_unlink):
9050         Do not try to migrate decoupled elements to a new group since
9051         they are not added to groups.
9052
9053 2004-07-08  Benjamin Otte  <otte@gnome.org>
9054
9055         * gst/gstelement.c: (gst_element_error_func):
9056           make reentrant (= allow removing elements in error handler)
9057
9058 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9059
9060         * gst/gstpad.c: (gst_pad_event_default_dispatch),
9061         (gst_pad_send_event), (gst_pad_call_chain_function):
9062           events sent to elements below PAUSED cannot be handled, so
9063           don't try to
9064
9065 2004-07-08  Wim Taymans  <wim@fluendo.com>
9066
9067         * gst/schedulers/gstoptimalscheduler.c:
9068         (chain_recursively_migrate_group), (create_group),
9069         (schedule_group), (gst_opt_scheduler_pad_link),
9070         (group_elements_set_visited), (element_get_reachables_func),
9071         (element_get_reachables), (group_can_reach_group), (debug_element),
9072         (rechain_group), (group_migrate_connected),
9073         (gst_opt_scheduler_pad_unlink):
9074         * testsuite/schedulers/Makefile.am:
9075         Implemented group splitting and rechaining.
9076         Fixes 143777 and 143777-2 in the testsuite.
9077
9078 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9079
9080         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
9081           extra debugging
9082         * gst/gstevent.h:
9083         * gst/gstinfo.c: (gst_debug_log_default):
9084           print time nicely.  add thread pointer until someone figures out
9085           a completely portable way of getting at thread id's.
9086         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
9087         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
9088         (gst_pad_call_chain_function):
9089           extra debugging
9090         * gst/schedulers/gstoptimalscheduler.c:
9091         (get_group_schedule_function), (loop_group_schedule_function),
9092         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
9093         (pad_clear_queued), (gst_opt_scheduler_iterate):
9094           rename BUFPEN and friends to DATAPEN since that's what they are.
9095
9096 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9097
9098         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
9099         * gst/gstbuffer.h:
9100         * gst/gstpad.c:
9101           cleanups and debugging
9102
9103 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9104
9105         * configure.ac:
9106         * gst/gstvalue.c: (gst_value_compare_enum),
9107         (gst_value_serialize_enum), (gst_value_deserialize_enum),
9108         (gst_value_can_compare), (gst_value_compare):
9109         * testsuite/Makefile.am:
9110         * testsuite/enumcaps/Makefile.am:
9111         * testsuite/enumcaps/enumcaps.c:
9112           Fix enum serialization, deserialization, comparison in caps, add
9113           a test to ensure that this continues working in the future.
9114
9115 2004-07-06  David Schleef  <ds@schleef.org>
9116
9117         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
9118         Fix memleak.
9119
9120 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9121
9122         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
9123         * gst/gstplugin.h:
9124         * gst/registries/gstxmlregistry.c:
9125         (plugin_times_older_than_recurse), (plugin_times_older_than),
9126         (gst_xml_registry_parse_padtemplate):
9127           only rebuild registry when actual plugins have a newer time than
9128           the registry.  Fixes #145520
9129
9130 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9131
9132         * docs/manual/manual.xml:
9133         * docs/manual/win32.xml:
9134           add chapter on win32 building.  fixes #142422
9135
9136 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9137
9138         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
9139
9140         * gst/autoplug/gstspider.c: (gst_spider_init),
9141         (gst_spider_dispose):
9142           fix spider memleaks.  fixes #137863
9143
9144 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9145
9146         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
9147
9148         * gst/schedulers/gstoptimalscheduler.c:
9149         (gst_opt_scheduler_pad_unlink):
9150           fix SIGBUS error, fixes #145338
9151
9152 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9153
9154         * gst/gstobject.c: (gst_object_replace):
9155         * gst/gstscheduler.c: (gst_scheduler_get_clock):
9156         * gst/gstsystemclock.c: (gst_system_clock_obtain):
9157           clean up clock lifecycle.  Fixes #109831
9158
9159 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9160
9161         * po/LINGUAS:
9162         * po/cs.po:
9163           added Czech translation (Miloslav Trmac)
9164
9165 2004-07-04  David Schleef  <ds@schleef.org>
9166
9167         * tools/Makefile.am:
9168         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
9169
9170 2004-07-04  David Schleef  <ds@schleef.org>
9171
9172         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
9173
9174 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9175
9176         * gst/gstbin.c: (gst_bin_restore_thyself):
9177           chain to parent restore so the bins get restored correctly
9178           in the editor
9179
9180 2004-07-03  David Schleef  <ds@schleef.org>
9181
9182         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
9183         Actually do something in these functions, like before the big
9184         caps change.  (bug #145137)
9185
9186 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9187
9188         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
9189         (gst_element_get_compatible_pad_filtered):
9190         * gst/gstthread.c: (gst_thread_main_loop):
9191           more debugging
9192
9193 2004-07-02  David Schleef  <ds@schleef.org>
9194
9195         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
9196         * gst/gstobject.h:
9197         * gst/gstparse.h:
9198         * gst/gsttrace.h:
9199         * gst/gstxml.h:
9200
9201 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9202
9203         * gst/gstpad.c: (gst_pad_check_schedulers),
9204         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
9205         (gst_pad_link_prepare):
9206           revert until testsuite is fixed
9207
9208 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9209
9210         * testsuite/Makefile.am:
9211         * testsuite/caps/filtercaps.c: (main):
9212         * testsuite/clock/clock1.c: (main):
9213         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
9214           fix some more tests
9215
9216 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9217
9218         * testsuite/cleanup/cleanup1.c: (create_pipeline):
9219         * testsuite/cleanup/cleanup2.c: (create_pipeline):
9220         * testsuite/cleanup/cleanup4.c: (main):
9221           fix testsuite
9222
9223 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9224
9225         * libs/gst/control/control.c:
9226         * libs/gst/control/dparam.c:
9227         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
9228         * libs/gst/control/dparammanager.c:
9229         * libs/gst/control/dparammanager.h:
9230         * testsuite/dynparams/Makefile.am:
9231         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
9232         (gst_dptest_change_state), (gst_dptest_chain), (main):
9233           fix testcase for dparams
9234           add debugging category
9235
9236 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9237
9238         * testsuite/Rules:
9239           change path
9240
9241 2004-07-02  Benjamin Otte  <otte@gnome.org>
9242
9243         * tests/.cvsignore:
9244         * tests/Makefile.am:
9245         * tests/mass_elements.c: (gst_get_current_time), (main):
9246           add simple benchmark to test various speeds of fakesrc ! identity !
9247           identity ! ... ! fakesink.
9248           Usage: mass_elements [num_identities] [num_buffers]
9249           If not specified they default to 1000.
9250
9251 2004-07-02  Benjamin Otte  <otte@gnome.org>
9252
9253         * gst/gstpad.c: (gst_pad_check_schedulers),
9254         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
9255         (gst_pad_link_prepare):
9256           check that pads that get linked belong to the same manager. The old
9257           code allowed linking elements before putting them into bins, so it
9258           worked to link them and then put them in different threads, which
9259           lead to weird behaviour.
9260           Since this effectively disallows linking elements before putting
9261           them in a bin, some applications might not work after this and error
9262           out. If these applications are too critical, we might need to revert
9263           that patch. Please test this before the next release...
9264
9265 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9266
9267         * gst/gstpad.c: (gst_pad_get_caps):
9268           throw an error if the getcaps function does not return a subset of
9269           the template caps.
9270         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
9271           make disconts without position info an error in debugging
9272         * tests/spidey_bench.c: (handoff), (main):
9273           don't count first try when averaging
9274
9275 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9276
9277         * gst/gstplugin.c: (gst_plugin_load_file):
9278           figure out problem with dynamic test
9279
9280 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9281
9282         * docs/gst/Makefile.am:
9283           fix docs build
9284
9285 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9286
9287         * po/POTFILES.in:
9288         * po/af.po:
9289         * po/az.po:
9290         * po/en_GB.po:
9291         * po/fr.po:
9292         * po/nl.po:
9293         * po/sr.po:
9294         * po/sv.po:
9295         * po/tr.po:
9296         * po/uk.po:
9297         * tools/gst-register.c: (plugin_added_func), (main):
9298           i18n-ize -register, fix plural
9299
9300 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9301
9302         * gst/elements/gstidentity.c: (gst_identity_class_init),
9303         (gst_identity_init), (gst_identity_chain),
9304         (gst_identity_set_property), (gst_identity_get_property):
9305         * gst/elements/gstidentity.h:
9306           check for perfect stream
9307
9308 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9309
9310         * gst/elements/gstidentity.c: (gst_identity_chain):
9311           print offset_end
9312
9313 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9314
9315         * docs/gst/Makefile.am:
9316         * docs/gst/gstreamer-docs.sgml:
9317           doc fixes
9318
9319 2004-06-24  David Schleef  <ds@schleef.org>
9320
9321         * autogen.sh:  Remove call to env, since the buildbot isn't
9322         broken anymore.
9323
9324 2004-06-24  Wim Taymans  <wim@fluendo.com>
9325
9326         * gst/elements/Makefile.am:
9327         * gst/elements/gstelements.c:
9328         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
9329         (gst_multifdsink_class_init), (gst_multifdsink_init),
9330         (gst_multifdsink_add), (gst_multifdsink_remove),
9331         (gst_multifdsink_clear), (gst_multifdsink_chain),
9332         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
9333         * gst/elements/gstmultifdsink.h:
9334         Added an element that writes to multiple filedescriptors at once.
9335
9336 2004-06-24  Benjamin Otte  <otte@gnome.org>
9337
9338         * gst/parse/grammar.y:
9339           don't try to link elements before they have been added to bins
9340
9341 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9342
9343         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
9344         (gst_file_pad_get_length):
9345         * libs/gst/bytestream/filepad.h:
9346           add 2 new functions
9347
9348 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
9349
9350         * docs/gst/gstreamer-sections.txt:
9351         remove from docs, the define that Benjamin removed from gstelement.h
9352
9353 2004-06-22  Benjamin Otte  <otte@gnome.org>
9354
9355         * gst/gstelement.h:
9356           remove define that referenced a nonexisting GstElement struct member
9357
9358 2004-06-20  Benjamin Otte  <otte@gnome.org>
9359
9360         * gst/gstdata.c: (gst_data_is_writable):
9361           whoops, return values were wrong, so writable data was marked as
9362           non-writable and vice versa. (fixes #143953, spotted by Francis
9363           Labonte)
9364           Shows how rarely we need to copy data ;)
9365
9366 2004-06-20  Benjamin Otte  <otte@gnome.org>
9367
9368         * testsuite/schedulers/.cvsignore:
9369         * testsuite/schedulers/Makefile.am:
9370         * testsuite/schedulers/143777-2.c: (main):
9371           add test for opt breakage in bug #143777
9372
9373 2004-06-20  Benjamin Otte  <otte@gnome.org>
9374
9375         * gst/gstpad.c: (gst_pad_call_chain_function):
9376           check for if we were unlinked while inside the chainfunction (fixes
9377           entrygthread having issues with #143777)
9378         * testsuite/schedulers/143777.c: (main):
9379         * testsuite/schedulers/Makefile.am:
9380           add a test for that fix
9381
9382 2004-06-20  Benjamin Otte  <otte@gnome.org>
9383
9384         * gst/gstvalue.c: (gst_value_set_int_range):
9385           test that start is smaller then end
9386         * libs/gst/bytestream/Makefile.am:
9387         * libs/gst/bytestream/filepad.c: 
9388         * libs/gst/bytestream/filepad.h:
9389           add GstFilePad - a pad that behaves like a FILE*
9390         * testsuite/bytestream/.cvsignore:
9391         * testsuite/bytestream/Makefile.am:
9392         * testsuite/bytestream/filepadsink.c: 
9393           test for the GstFilePad
9394
9395 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9396
9397         * gst/elements/gstidentity.c: (gst_identity_class_init),
9398         (gst_identity_init), (gst_identity_set_clock),
9399         (gst_identity_chain), (gst_identity_set_property),
9400         (gst_identity_get_property):
9401         * gst/elements/gstidentity.h:
9402         * gst/gstclock.c: (gst_clock_id_wait):
9403           add a "sync" property to sync to the clock
9404
9405 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9406
9407         * gst/gstelementfactory.c: (gst_element_factory_create):
9408           make the freakin "elementfactory bla has no type" message more
9409           useful. So we actually can do something when someone shows up
9410           complaining about it.
9411
9412 2004-06-15  Johan Dahlin  <johan@gnome.org>
9413
9414         * tools/gst-inspect.c (main): Fallback to plugin if no element is
9415         found. This matches the old behavior better. Thanks to Thomas for
9416         pointing out.
9417
9418 2004-06-14  David Schleef  <ds@schleef.org>
9419
9420         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
9421         -fomit-frame-pointer.  Appears to generate correct code in
9422         other cases as well.
9423
9424 2004-06-14  Johan Dahlin  <johan@gnome.org>
9425
9426         * tools/gst-inspect.c (main): Add two new command line options: -a
9427         to print all elements and -n to print the name on each line. Also
9428         fix some error reporting.
9429         (main): Simplify, remove -n and always print names if -a is specified
9430
9431 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
9432
9433         * win32/gstconfig.h:
9434         * win32/GSTreamer.vcproj:
9435         * win32/Makefile:
9436         * gst/gstconfig.h.in:
9437         * gst/gst.h:
9438         * gst/gstbin.h:
9439         * gst/gstelement.h:
9440         * gst/gstevent.h:
9441         * gst/gstobject.h:
9442         * gst/gstpad.h:
9443         * docs/gst/gstreamer-sections.txt:
9444         * docs/gst/tmpl/gstconfig.sgml:
9445           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
9446
9447 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
9448         * docs/gst/gstreamer-sections.txt:
9449         * docs/gst/tmpl/gstconfig.sgml:
9450         Add the GSTREAMER_EXPORT macro to the docs
9451
9452 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
9453
9454         * tools/gst-compprep.c: (handle_xmlerror), (main):
9455         Add a check for the version that introduced SetStructuredError to fix
9456         the build on FC1
9457
9458 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9459
9460         * win32/msvc71.sln:
9461         * win32/testsuite/:
9462           prepare to compile the testsuite with MSVC
9463
9464 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9465
9466         * docs/manual/win32.xml:
9467           attempt to transform the Win32 README into an XML doc
9468
9469 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9470
9471         * gst/gst.c:
9472         * gst/gstbin.*:
9473         * gst/config.h.in:
9474         * gst/gstelement.*:
9475         * gst/gstevent.h:
9476         * gst/gstobject.*:
9477         * gst/gstpad.h:
9478         * tools/gst-register.c:
9479         * win32/gstreamer.def:
9480           extern symbols are now exported for the Windows DLL
9481
9482 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9483
9484         * gst/gstinfo.h:
9485           fix a problem to enable/disable DEBUG under MSVC
9486
9487 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9488
9489         * win32/:
9490           enable more debug code in DEBUG build
9491
9492 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9493
9494         * win32/config.h:
9495         * gst/gst-i18n-app.h:
9496           enable NLS under Windows
9497
9498 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
9499         * tools/gst-compprep.c: (handle_xmlerror), (main):
9500           Make an error that baffled me a bit clearer
9501
9502 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9503
9504         * gst/gstqueue.c:
9505           don't use g_queue_get_length () because it's 2.4, use ->length
9506
9507 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
9508
9509         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
9510
9511         * tools/gst-inspect.c: (print_signal_info):
9512           don't free random data twice. (fixes #144185)
9513
9514 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9515
9516         * gst/gstqueue.c:
9517         * gst/gstqueue.h:
9518           fix removing from the wrong queue on event timeout
9519           fix disposing of the event queue by casting correctly
9520           add mutexes for handling the event queue
9521           someone was sleeping when fixing queue last time around :)
9522
9523 2004-06-10  Johan Dahlin  <johan@gnome.org>
9524
9525         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
9526         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
9527
9528 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9529
9530         * docs/random/gdp:
9531         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
9532         * libs/gst/dataprotocol/dataprotocol.c:
9533         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9534         (gst_dp_buffer_from_header):
9535         * libs/gst/dataprotocol/dataprotocol.h:
9536         * libs/gst/dataprotocol/dp-private.h:
9537           rev version to 0.1, add buffer flags and copy them
9538
9539 2004-06-09  Johan Dahlin  <johan@gnome.org>
9540
9541         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
9542         the flags from the buffer we're copying.
9543
9544 2004-06-09  Wim Taymans  <wim@fluendo.com>
9545
9546         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
9547         * gst/elements/gstidentity.c: (gst_identity_init),
9548         (gst_identity_chain):
9549         Print more buffer info in fakesink.
9550         Make identity output similar to fakesink.
9551
9552 2004-06-07  Daniel Gazard  <dany42@free.fr>
9553
9554         reviewed by Benjamin Otte  <otte@gnome.org>
9555
9556         * configure.ac:
9557           fix cross compiling not working. (fixes #143741)
9558
9559 2004-06-07  Benjamin Otte  <otte@gnome.org>
9560
9561         * gst/gstelement.c: (gst_element_set_time_delay):
9562           add failure check
9563         * gst/gstinfo.h:
9564           put brackets around macro arguments of GST_TIME_ARGS, add note to
9565           move it to correct header in 0.9
9566
9567 2004-06-07  Benjamin Otte  <otte@gnome.org>
9568
9569         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
9570         (gst_file_index_load), (_file_index_id_save_entries),
9571         (gst_file_index_commit), (gst_file_index_add_association),
9572         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
9573         (gst_file_index_plugin_init):
9574           make debugging use a default category
9575
9576 2004-06-06  David Moore  <dcm@acm.org>
9577
9578         reviewed by Benjamin Otte  <otte@gnome.org>
9579
9580         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9581         (gst_fdsrc_change_state):
9582           reset offset counter when going READY => PAUSED. (fixes #142903)
9583
9584 2004-06-06  ed@catmur.co.uk
9585
9586         reviewed by Benjamin Otte  <otte@gnome.org>
9587
9588         * gst/registries/gstxmlregistry.c:
9589         (gst_xml_registry_rebuild_recurse):
9590           don't rely on g_dir_open to figure out if a file is a directory, use
9591           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
9592           directories. (fixes #142850)
9593
9594 2004-06-06  Benjamin Otte  <otte@gnome.org>
9595
9596         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
9597           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
9598         * libs/gst/bytestream/adapter.c:
9599         * libs/gst/bytestream/adapter.h:
9600           fix copyright in header and typo in debugging category name
9601
9602 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9603
9604         * configure.ac:
9605           bump nano to cvs
9606
9607 === release 0.8.3 ===
9608
9609 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9610
9611         * configure.ac:
9612           update libtool versioning
9613           do a new release
9614         * docs/gst/tmpl/gstelement.sgml:
9615         * docs/gst/tmpl/gsttypes.sgml:
9616         * gst/gstinfo.c: (_gst_debug_init):
9617           put back GST_CAT_DATAFLOW to fix API breakage
9618
9619 2004-06-04  David Schleef  <ds@schleef.org>
9620
9621         * autogen.sh: Add a temporary 'env' to test buildbot problems.
9622
9623 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9624
9625         * configure.ac:
9626           bump nano to cvs
9627
9628 === release 0.8.2 ===
9629
9630 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9631
9632         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
9633           check GST_DEBUG environment variable which is parsed the same way
9634           as --gst-debug=
9635
9636 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9637
9638         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
9639                             gstmd5sink.c gstshaper.c gsttee.c
9640                             gsttypefindelement.c
9641         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
9642
9643           - removing trailing commas at end of enums
9644             it is correct C99 code but C90 compilers would complain
9645             (AIX, Forte, ...)
9646             ('should' fix #143290, at least partially)
9647
9648 2004-05-27  Wim Taymans  <wim@fluendo.com>
9649
9650         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
9651         (chain_group_set_enabled), (create_group), (add_to_group),
9652         (merge_groups), (setup_group_scheduler), (group_elements),
9653         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
9654         Don't try to follow the pad connections with other groups
9655         when a loop based element is added to the scheduler because
9656         the bin will inform the scheduler about the pad links a little
9657         later.
9658
9659 2004-05-27  Wim Taymans  <wim@fluendo.com>
9660
9661         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
9662         (remove_from_chain), (chain_group_set_enabled),
9663         (setup_group_scheduler), (group_element_set_enabled),
9664         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
9665         (gst_opt_scheduler_show):
9666         Elements without a group can do a state change as well, just wait
9667         with the setup of the scheduling function when it is added to a
9668         chain.
9669
9670 2004-05-27  Wim Taymans  <wim@fluendo.com>
9671
9672         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
9673         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
9674         (merge_groups), (setup_group_scheduler),
9675         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
9676         (gst_opt_scheduler_show):
9677         Fixes to maintain internal consistency of the scheduler data
9678         structures. 
9679          - adding an enabled group to a chain should increment the
9680            number of enabled elements in that chain.
9681          - removing an enabled group from a chain could disable the
9682            chain.
9683          - removing a disabled group from a chain could enable the
9684            chain.
9685          - add g_assert when internal inconsistency is detected.
9686          - adding an element to a group could increase the number of
9687            links this group has with other groups.
9688          - merging two groups also merges the chains.
9689          - also show group links in the _show method.
9690            
9691
9692 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9693
9694         * gst/gstcaps.c: (gst_caps_structure_simplify):
9695           don't print error messages when there is no error
9696         * gst/gstvalue.c: (gst_value_compare_int_range):
9697           compare the second value, too
9698         * testsuite/caps/Makefile.am:
9699         * testsuite/caps/random.c: (assert_on_error), (main):
9700           add tests to make sure the two things above are checked for
9701
9702 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
9703
9704         * configure.ac:
9705         * libs/gst/dataprotocol/Makefile.am:
9706         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
9707         * libs/gst/dataprotocol/dataprotocol.h:
9708           wrap header in GST_ENABLE_NEW.  make code use it
9709
9710 2004-05-23  Johan Dahlin  <johan@gnome.org>
9711
9712         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
9713         so verbose and print GstElement signal names all the time.
9714
9715 2004-05-22  David Schleef  <ds@schleef.org>
9716
9717         * gst/registries/gstxmlregistry.c:
9718         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
9719         (bug #142957)
9720
9721 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9722
9723         * configure.ac:
9724           scrub cflags for glib2 so gcc doesn't complain when glib is in
9725           /usr/local
9726
9727 2004-05-21  Johan Dahlin  <johan@gnome.org>
9728
9729         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
9730         __GNUC__, patch from Brian Cameron, fixes bug #142804
9731
9732 2004-05-20  David Schleef  <ds@schleef.org>
9733
9734         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
9735         comparison code.  (bug #142819)
9736
9737 2004-05-20  Wim Taymans  <wim@fluendo.com>
9738
9739         * gst/gstbuffer.c: (gst_buffer_default_copy):
9740         * gst/gstbuffer.h:
9741         Added Comment to a flag.
9742         copy relevant flags in _buffer_copy.
9743
9744 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9745
9746         reviewed by: Wim Taymans <wim at fluendo dot com>
9747
9748         * gst/gstbuffer.h:
9749           add GST_BUFFER_IN_CAPS buffer flag
9750         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9751         (gst_structure_parse_any_list), (gst_structure_parse_list),
9752         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
9753         * gst/gstvalue.c: (gst_value_serialize_any_list),
9754         (gst_value_transform_any_list_string),
9755         (gst_value_list_prepend_value), (gst_value_list_append_value),
9756         (gst_value_list_get_size), (gst_value_list_get_value),
9757         (gst_value_transform_list_string),
9758         (gst_value_transform_fixed_list_string),
9759         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
9760         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
9761         (_gst_value_initialize):
9762         * gst/gstvalue.h:
9763           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
9764           < , > as a format.
9765         * testsuite/caps/string-conversions.c: (main):
9766           add regression tests for < >
9767
9768 2004-05-20  Johan Dahlin  <johan@gnome.org>
9769
9770         * docs/gst/Makefile.am (all-local): Re-add
9771
9772 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9773
9774         * docs/gst/Makefile.am:
9775         * docs/gst/gstreamer-docs.sgml:
9776         * docs/libs/Makefile.am:
9777         * docs/libs/gstreamer-libs-docs.sgml:
9778           fix distcheck issues
9779
9780 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9781
9782         * libs/gst/dataprotocol/Makefile.am:
9783           add to autotest
9784
9785 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9786
9787         * libs/gst/dataprotocol/Makefile.am:
9788         * libs/gst/dataprotocol/dataprotocol.c:
9789         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9790         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
9791         * libs/gst/dataprotocol/dp-private.h:
9792           use GST macros to read/write fixed length ints
9793           add some more asserts
9794
9795 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9796
9797         * docs/libs/gstreamer-libs-docs.sgml:
9798         * docs/libs/gstreamer-libs-sections.txt:
9799           remove idct and putbits
9800         * configure.ac:
9801         * docs/libs/tmpl/gstdataprotocol.sgml:
9802         * libs/gst/Makefile.am:
9803         * libs/gst/dataprotocol/Makefile.am:
9804         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
9805         (buffer_test), (caps_test), (event_test), (main):
9806         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
9807         (gst_dp_dump_byte_array), (gst_dp_init),
9808         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
9809         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9810         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
9811         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
9812         (gst_dp_validate_header), (gst_dp_validate_payload),
9813         (gst_dp_validate_packet), (plugin_init):
9814         * libs/gst/dataprotocol/dataprotocol.h:
9815         * libs/gst/dataprotocol/dp-private.h:
9816           add dataprotocol
9817
9818 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9819
9820         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
9821           fix int variable deserialization and add a helper so we can actually
9822           debug this.
9823
9824 2004-05-18  David Schleef  <ds@schleef.org>
9825
9826         * testsuite/debug/commandline.c: (main): Call ./commandline, not
9827           argv[0].  Calling yourself is probably not the best way to
9828           construct a test like this, btw.
9829
9830 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9831
9832         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
9833           don't claim to be more intelligent than a scheduler when the
9834           scheduler claims the pipeline is stopped
9835         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
9836         (safe_cothread_destroy),
9837         (gst_entry_scheduler_remove_all_cothreads),
9838         (gst_entry_scheduler_reset), (_remove_cothread),
9839         (gst_entry_scheduler_state_transition):
9840           hold off cothread destruction if we're not in main cothread
9841         * configure.ac:
9842         * testsuite/Makefile.am:
9843           add new test dir
9844         * testsuite/schedulers/.cvsignore:
9845         * testsuite/schedulers/Makefile.am:
9846           add tests
9847         * testsuite/schedulers/relink.c: (cb_handoff), (main):
9848           check relinking and adding/removing elements from a running pipeline
9849         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
9850           check unlinking in a running pipeline
9851         * testsuite/schedulers/unref.c: (cb_handoff), (main):
9852           check unreffing a running pipeline
9853         * testsuite/schedulers/useless_iteration.c: (main):
9854           check iterating a pipeline that contains running threads works
9855
9856 2004-05-18  David Schleef  <ds@schleef.org>
9857
9858         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
9859           is false.
9860
9861 2004-05-18  Wim Taymans  <wim@fluendo.com>
9862
9863         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9864         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
9865         Fixed an error introduced with patch for 1.63. When setting
9866         a get based element as the entry point in a group, make sure
9867         to mark the group as GET based.
9868
9869 2004-05-18  Wim Taymans  <wim@fluendo.com>
9870
9871         * gst/schedulers/gstoptimalscheduler.c: (create_group),
9872         (setup_group_scheduler), (loop_group_schedule_function),
9873         (gst_opt_scheduler_pad_link):
9874         Added some more debug info and fixed a bug where the group
9875         type was set to LOOP but it was in fact unknown.
9876
9877 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9878
9879         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
9880           make resetting scheduler work twice in a row
9881
9882 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9883
9884         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
9885         (CREATE_USERIALIZATION), (_gst_value_initialize),
9886         (gst_value_compare_float), (gst_value_serialize_float),
9887         (gst_value_deserialize_float), (gst_value_compare_enum),
9888         (gst_value_serialize_enum), (gst_value_deserialize_enum):
9889           add serialization and comparison functions for long, int64, enum and
9890           float values
9891         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
9892           use best serialization function in type hierarchy instead of only a
9893           matching one. This is required for enums to work.
9894         * gst/parse/grammar.y:
9895           use gst_caps_deserialize
9896         * testsuite/parse/Makefile.am:
9897           parse1 now works
9898         * testsuite/parse/parse1.c: (main):
9899           remove aggregator check, aggregator is broken, this test works now
9900           but fails because of bug #138012
9901         * testsuite/parse/parse2.c: (main):
9902           s/xvideosink/xvimagesink - this test looks a lot like we should
9903           disable it
9904
9905 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9906
9907         * gst/gstelement.c: (gst_element_class_init):
9908           whoops, store the signal id correctly
9909         * gst/schedulers/gstbasicscheduler.c:
9910         (gst_basic_scheduler_chain_wrapper):
9911           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
9912           chain function isn't linked
9913
9914 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
9915         * configure.ac:
9916         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
9917         support until we decide where the flags should be used
9918         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
9919         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
9920         * gst/gstpad.c: (gst_pad_link_call_link_functions):
9921         Output refused caps in the debug info
9922
9923 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9924
9925         * gst/elements/gstidentity.c: (gst_identity_chain):
9926           add duration debug
9927         * gst/gstinfo.c: (gst_debug_log_default):
9928           add timestamp
9929
9930 2004-05-13  Benjamin Otte  <otte@gnome.org>
9931
9932         * gst/gstpipeline.c: (gst_pipeline_dispose),
9933         (gst_pipeline_change_state):
9934           call gst_scheduler_reset on dispose (fixes #141416)
9935
9936 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9937
9938         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9939           compute mapsize correctly
9940         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9941           use correct datatypes when calling a varargs function
9942         * gst/elements/gsttypefindelement.c: (stop_typefinding):
9943           push a DISCONT event as first thing
9944         * gst/gst_private.h:
9945         * gst/gstinfo.c: (_gst_debug_init):
9946           remove GST_DATAFLOW debugging category
9947         * gst/gstbin.c: (gst_bin_iterate):
9948           use GST_SCHEDULING category
9949         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
9950         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
9951         (gst_pad_call_get_function):
9952           add GST_DATAFLOW to easily track flow of buffers or events.
9953         * gst/gstqueue.c: (gst_queue_get_type),
9954         (gst_queue_handle_pending_events), (gst_queue_chain),
9955         (gst_queue_get), (gst_queue_handle_src_event):
9956           use own static debugging category GST_DATAFLOW for dataflow,
9957           use DEBUG category for showing which path events go, use LOG
9958           category for buffers.
9959
9960 2004-05-10  David Schleef  <ds@schleef.org>
9961
9962         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
9963
9964 2004-05-10  David Schleef  <ds@schleef.org>
9965
9966         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
9967         symbols, because otherwise we don't know what they are.  Thanks,
9968         the GStreamer team.
9969         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
9970
9971 2004-05-10  David Schleef  <ds@schleef.org>
9972
9973         (from Steve Lhomme)
9974         * win32/Makefile: When using make clean the MS Visual Studio makefiles
9975         are deleted.  Fix.
9976         * win32/Makefile.inspect:
9977         * win32/Makefile.launch:
9978         * win32/Makefile.register:
9979
9980 2004-05-10  David Schleef  <ds@schleef.org>
9981
9982         * gst/gstinfo.h: Add missing inline function.
9983         * gst/gsttrace.c: add include
9984         * gst/parse/grammar.y: remove unused code
9985         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
9986         more portable.
9987         * tools/gst-register.c: wrap unistd.h
9988         
9989         More additions/fixes from Steve for the MSVC build.
9990         * win32/GStreamer.vcproj:
9991         * win32/Makefile:
9992         * win32/Makefile.inspect:
9993         * win32/Makefile.launch:
9994         * win32/Makefile.register:
9995         * win32/README.txt:
9996         * win32/gst-inspect.vcproj:
9997         * win32/gst-launch.vcproj:
9998         * win32/gst-register.vcproj:
9999         * win32/gstbytestream.def:
10000         * win32/gstbytestream.vcproj:
10001         * win32/gstconfig.h:
10002         * win32/gstelements.def:
10003         * win32/gstelements.vcproj:
10004         * win32/gstenumtypes.c:
10005         * win32/gstenumtypes.h:
10006         * win32/gstoptimalscheduler.def:
10007         * win32/gstoptimalscheduler.vcproj:
10008         * win32/gstreamer.def:
10009         * win32/gstspider.def:
10010         * win32/gstspider.vcproj:
10011         * win32/gstversion.h:
10012         * win32/msvc71.sln:
10013
10014 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10015
10016         * gst/gstelement.c: (gst_element_class_init),
10017         (gst_element_no_more_pads):
10018         * gst/gstelement.h:
10019           add gst_element_no_more_pads and the "no-more-pads" signal
10020
10021 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10022
10023         * gst/gstregistry.c: (gst_registry_add_plugin):
10024           refuse to add plugins when a plugin with same name is already
10025           registered. Fixes a bunch of "How to remove plugins?" issues.
10026           May lead to other problems though, let's test
10027
10028 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10029
10030         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
10031         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
10032         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
10033
10034 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10035
10036         * tests/Makefile.am: fix am16 issue
10037
10038 2004-05-09  Benjamin Otte  <otte@gnome.org>
10039
10040         * libs/gst/bytestream/Makefile.am:
10041           we should indeed add .c files to makefiles or they won't be built
10042           (d'oh)
10043
10044 2004-05-08  Benjamin Otte  <otte@gnome.org>
10045
10046         * gst/gstpad.c: (gst_pad_proxy_fixate):
10047           really reduce the set of caps
10048
10049 2004-05-08  Benjamin Otte  <otte@gnome.org>
10050
10051         * tests/Makefile.am:
10052         * tests/spidey_bench.c: (handoff), (main):
10053           add benchmark to test how long spider needs to create a pipeline
10054
10055 2004-05-08  Benjamin Otte  <otte@gnome.org>
10056
10057         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
10058           mark links as unengaged when unnegotiating instead of deactivating.
10059           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
10060
10061 2004-05-08  Benjamin Otte  <otte@gnome.org>
10062
10063         * docs/manual/helloworld.xml:
10064           s/audiosink/osssink (patch by Patrick Guimond)
10065
10066 2004-05-07  David Schleef  <ds@schleef.org>
10067
10068         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
10069         since it contains important stuff.
10070
10071 2004-05-07  David Schleef  <ds@schleef.org>
10072
10073         * testsuite/caps/caps.c: (test3), (main): A check for appending
10074         ANY caps.
10075
10076 2004-05-07  David Schleef  <ds@schleef.org>
10077
10078         * common/m4/as-compiler-flag.m4: Properly quote arguments,
10079         which may contain commas.  Fixes detection of -Wa,-mregnames
10080
10081 2004-05-06  David Schleef  <ds@schleef.org>
10082
10083         Changes to handle compilers that don't have variadic macro
10084         support.  In particular, glib headers define some inlines
10085         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
10086         builds.
10087         * gst/Makefile.am:
10088         * gst/cothreads.c:
10089         * gst/elements/gstfdsink.c:
10090         * gst/elements/gstfdsrc.c:
10091         * gst/elements/gstfilesink.c:
10092         * gst/elements/gstfilesrc.c:
10093         * gst/gst_private.h:
10094         * gst/gstatomic.c:
10095         * gst/gstcaps.c: (gst_caps_append):
10096         * gst/gstcpu.c: (gst_cpuid_i386):
10097         * gst/gstelement.c:
10098         * gst/gsterror.c:
10099         * gst/gstfilter.c:
10100         * gst/gstinfo.h:
10101         * gst/gstprobe.c:
10102         * gst/gstquery.c:
10103         * gst/gstregistry.c:
10104         * gst/gststructure.c:
10105         * gst/gsttaginterface.c:
10106         * gst/gsttrace.c: (gst_trace_new):
10107         * gst/gsttrashstack.c:
10108         * gst/gsturi.c:
10109         * gst/gstvalue.c:
10110         * gst/parse/grammar.y:
10111         * gst/parse/parse.l:
10112         * tools/gst-inspect.c: (main):
10113         * tools/gst-launch.c: (main):
10114         * tools/gst-xmlinspect.c: (PUT_STRING):
10115
10116 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10117
10118         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10119         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
10120         * gst/elements/gstfilesrc.h:
10121           send NEW_MEDIA events correctly
10122         * gst/elements/gsttypefindelement.c: (start_typefinding),
10123         (gst_type_find_element_handle_event):
10124           restart typefinding when we get a NEW_MEDIA event
10125         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
10126         (gst_bin_dispose):
10127           don't die when someone removes elements in callbacks
10128         * gst/gstelement.c: (gst_element_change_state):
10129           improve debugging
10130         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
10131           we need a NEW_MEDIA event to engage a link
10132         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
10133           don't g_print debugging stuff
10134         * testsuite/caps/simplify.c: (check_caps):
10135
10136 2004-05-04  Benjamin Otte  <otte@gnome.org>
10137
10138         * gst/parse/grammar.y:
10139           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
10140
10141 2004-05-04  Benjamin Otte  <otte@gnome.org>
10142
10143         * testsuite/caps/renegotiate.c: (main):
10144           improve output in error case
10145
10146 2004-05-04  Benjamin Otte  <otte@gnome.org>
10147
10148         * gst/parse/grammar.y:
10149           fix assert to not trigger when there's no error argument
10150         * gst/parse/parse.l:
10151           fix definition of caps to allow more than two structures
10152         * testsuite/caps/Makefile.am:
10153         * testsuite/caps/renegotiate.c: (main):
10154           it's sinesrc and works in that case
10155
10156 2004-05-04  Wim Taymans  <wim@fluendo.com>
10157
10158         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
10159         (group_dec_link), (gst_opt_scheduler_pad_unlink):
10160         when removing an element from a group, we always need to
10161         decrement the link count that this group had with other 
10162         groups through the element.
10163         added an extra assert to catch inconsistencies when decrementing
10164         the link count.
10165
10166 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10167
10168         * configure.ac:
10169         * docs/gst/Makefile.am:
10170         * docs/gst/gstreamer-sections.txt:
10171         * docs/gst/tmpl/gstcompat.sgml:
10172         * examples/appreader/Makefile.am:
10173         * examples/cutter/Makefile.am:
10174         * examples/events/Makefile.am:
10175         * examples/helloworld/Makefile.am:
10176         * examples/helloworld2/Makefile.am:
10177         * examples/launch/Makefile.am:
10178         * examples/manual/Makefile.am:
10179         * examples/mixer/Makefile.am:
10180         * examples/pingpong/Makefile.am:
10181         * examples/plugins/Makefile.am:
10182         * examples/queue/Makefile.am:
10183         * examples/queue2/Makefile.am:
10184         * examples/queue3/Makefile.am:
10185         * examples/queue4/Makefile.am:
10186         * examples/retag/Makefile.am:
10187         * examples/thread/Makefile.am:
10188         * examples/typefind/Makefile.am:
10189         * examples/xml/Makefile.am:
10190         * gst/Makefile.am:
10191         * gst/autoplug/Makefile.am:
10192         * gst/elements/Makefile.am:
10193         * gst/gstcompat.h:
10194         * gst/indexers/Makefile.am:
10195         * gst/parse/Makefile.am:
10196         * gst/registries/Makefile.am:
10197         * gst/schedulers/Makefile.am:
10198         * libs/gst/bytestream/Makefile.am:
10199         * libs/gst/control/Makefile.am:
10200         * libs/gst/getbits/Makefile.am:
10201         * po/af.po:
10202         * po/az.po:
10203         * po/en_GB.po:
10204         * po/fr.po:
10205         * po/nl.po:
10206         * po/sr.po:
10207         * po/sv.po:
10208         * po/tr.po:
10209         * po/uk.po:
10210         * tests/Makefile.am:
10211         * tests/bufspeed/Makefile.am:
10212         * tests/instantiate/Makefile.am:
10213         * tests/memchunk/Makefile.am:
10214         * tests/muxing/Makefile.am:
10215         * tests/negotiation/Makefile.am:
10216         * tests/probes/Makefile.am:
10217         * tests/sched/Makefile.am:
10218         * tests/seeking/Makefile.am:
10219         * tests/threadstate/Makefile.am:
10220         * testsuite/caps/Makefile.am:
10221         * testsuite/cleanup/Makefile.am:
10222         * testsuite/dlopen/Makefile.am:
10223         * testsuite/dynparams/Makefile.am:
10224         * testsuite/plugin/Makefile.am:
10225         * testsuite/states/Makefile.am:
10226         * tools/Makefile.am:
10227           reorganize compile/link flags to be consistent
10228           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
10229
10230 2004-05-04  David Schleef  <ds@schleef.org>
10231
10232         The "once more, with feeling" check-in.
10233         * testsuite/caps/Makefile.am: dist caps_strings
10234         * testsuite/caps/renegotiate.c: (main): This test triggers a
10235           segfault in the core.  Marking as failing.
10236
10237 2004-05-03  David Schleef  <ds@schleef.org>
10238
10239         * testsuite/caps/deserialize.c: (main): Fix problems noticed
10240           by the build bots.
10241         * testsuite/caps/renegotiate.c: (main): Same.
10242
10243 2004-05-03  David Schleef  <ds@schleef.org>
10244
10245         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
10246
10247 2004-05-03  David Schleef  <ds@schleef.org>
10248
10249         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
10250           variable to find our source file.
10251
10252 2004-05-03  David Schleef  <ds@schleef.org>
10253
10254         * configure.ac:  Link plugins with libgstreamer and dependent
10255           libraries
10256         * testsuite/caps/Makefile.am:
10257         * testsuite/caps/caps_strings:
10258         * testsuite/caps/deserialize.c: (main): Add a little test to slog
10259           through a file of caps strings and test each one
10260
10261 2004-05-04  Benjamin Otte  <otte@gnome.org>
10262
10263         * libs/gst/bytestream/Makefile.am:
10264         * libs/gst/bytestream/adapter.c: 
10265         * libs/gst/bytestream/adapter.h:
10266           add GstAdapter, similar to bytestream, but doesn't require ugly event
10267           handling or uglier loopbased elements
10268
10269 2004-05-03  David Schleef  <ds@schleef.org>
10270
10271         * testsuite/caps/Makefile.am: Fix spelling of ??????????????????????
10272         * testsuite/caps/erathostenes.c:
10273         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
10274
10275 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10276
10277         * docs/pwg/pwg.xml:
10278           remove hardcoded stylesheet path (duh)
10279         * docs/random/release:
10280         * docs/gst/gstreamer-sections.txt:
10281         * gst/Makefile.am:
10282         * gst/gst.h:
10283         * gst/gst_private.h:
10284         * gst/gstcaps.c:
10285         * gst/gstevent.c:
10286         * gst/gstformat.c:
10287         * gst/gstinfo.c:
10288         * gst/gstinfo.h:
10289         * gst/gstinterface.c:
10290         * gst/gstmemchunk.c:
10291         * gst/gstprobe.c:
10292         * gst/gstquery.c:
10293         * gst/gstregistry.c:
10294         * gst/gstregistrypool.c:
10295         * gst/gststructure.c:
10296         * gst/gsttaginterface.c:
10297         * gst/gstthread.c:
10298         * gst/gsttrace.c:
10299         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
10300         * gst/gsturi.c:
10301         * gst/gstvalue.c:
10302           deprecate gst_info; remove gstlog.h
10303    
10304
10305 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10306
10307         * Makefile.am:
10308         * po/en_GB.po:
10309         * po/sv.po:
10310         * po/uk.po:
10311           updated translations
10312
10313 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10314
10315         * gst/gstbin.c: (gst_bin_dispose):
10316           better debugging
10317
10318 2004-05-03  Johan Dahlin  <johan@gnome.org>
10319
10320         * gst/schedulers/gstoptimalscheduler.c
10321         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
10322         really is a GstElement. Avoids critical when running gst-launch -v
10323         and a oggdemux/decoding pipeline.
10324
10325 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10326
10327         * docs/gst/tmpl/gstpipeline.sgml :
10328         * docs/manual/elements-api.xml :
10329                 doc fix by Patrick Guimond (Protector) from devel ML
10330                 reviewed by ronald
10331
10332 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10333
10334         * docs/gst/Makefile.am :
10335         * docs/libs/Makefile.am :
10336                 apply a patch from Arwed v. Merkatz so that gtk-doc
10337                 generated docs install (same for .devhelp file)
10338                 (fixes part 1 of #138836)
10339
10340 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10341
10342         * docs/faq/dependencies.xml: typo
10343         * docs/faq/getting.xml :
10344             - fix download URL for new gstreamer site
10345             - hide sf.net download page as latest version aren't there
10346             - fix apt URLs
10347             - fill "get via CVS" paragraph (link to dev page on the site)
10348         * docs/faq/general.xml:
10349             hide status tables as they no more exists
10350             change case on plugins license file to reflect reality
10351         * docs/faq/troubleshooting.xml:
10352             remove the wiki question/answer as there is no more wiki
10353
10354 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10355
10356         * gst/gsterror.h:
10357           include the headers needed for declarations used in this header
10358
10359 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10360
10361         * docs/random/uraeus/gstreamer_and_midi.txt :
10362           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
10363           (fixes #132288)
10364
10365 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
10366
10367         reviewed by Benjamin Otte  <otte@gnome.org>
10368
10369         * gst/schedulers/gthread-cothreads.h:
10370           free allocated data for main cothread, too when destroying context
10371           (fixes #141417)
10372
10373 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10374
10375         * docs/manual/goals.xml : remove duplicated paragraph at end 
10376         of doc page (fixes #141448)
10377
10378 2004-04-29  David Schleef  <ds@schleef.org>
10379
10380         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
10381         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
10382
10383 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10384
10385         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10386           fix property
10387         * gst/gstcaps.c:
10388           fix doc string
10389         * po/POTFILES.in:
10390           rename typefind source file
10391
10392 2004-04-28  David Schleef  <ds@schleef.org>
10393
10394         Several new files from Steve Lhomme's MSVC patch (bug #141317):
10395         * win32/GStreamer.vcproj:
10396         * win32/Makefile:
10397         * win32/config.h:
10398         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
10399         (_trewinddir), (_ttelldir), (_tseekdir):
10400         * win32/dirent.h:
10401         * win32/gst-inspect.vcproj:
10402         * win32/gst-launch.vcproj:
10403         * win32/gst-register.vcproj:
10404         * win32/gstbytestream.vcproj:
10405         * win32/gstelements.vcproj:
10406         * win32/gstoptimalscheduler.vcproj:
10407         * win32/gstspider.vcproj:
10408         * win32/gtchar.h:
10409         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
10410         * win32/mman.h:
10411         * win32/mman.inl:
10412         * win32/msvc71.sln:
10413
10414 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10415
10416         * gst/gst.c: (init_post):
10417         * gst/gstinfo.c:
10418           remove useless _gst_progname stuff
10419         * tools/gst-inspect.c: (print_field), (print_caps):
10420           improve caps output
10421
10422 2004-04-28  David Schleef  <ds@schleef.org>
10423
10424         Disable parsing of a lot of files that aren't part of the
10425         exported API.  Move corresponding template files to old/,
10426         waiting for removal when they don't contain anything
10427         interesting.
10428         * docs/gst/Makefile.am:
10429         * docs/gst/gstreamer-sections.txt:
10430         * docs/gst/tmpl/cothreads.sgml:
10431         * docs/gst/tmpl/cothreads_compat.sgml:
10432         * docs/gst/tmpl/gettext.sgml:
10433         * docs/gst/tmpl/gobject2gtk.sgml:
10434         * docs/gst/tmpl/grammar.tab.sgml:
10435         * docs/gst/tmpl/gst-i18n-app.sgml:
10436         * docs/gst/tmpl/gst-i18n-lib.sgml:
10437         * docs/gst/tmpl/gst_private.sgml:
10438         * docs/gst/tmpl/gstaggregator.sgml:
10439         * docs/gst/tmpl/gstarch.sgml:
10440         * docs/gst/tmpl/gstatomic_impl.sgml:
10441         * docs/gst/tmpl/gstbufferstore.sgml:
10442         * docs/gst/tmpl/gstdata_private.sgml:
10443         * docs/gst/tmpl/gstdisksink.sgml:
10444         * docs/gst/tmpl/gstdisksrc.sgml:
10445         * docs/gst/tmpl/gstelementfactory.sgml:
10446         * docs/gst/tmpl/gstextratypes.sgml:
10447         * docs/gst/tmpl/gstfakesink.sgml:
10448         * docs/gst/tmpl/gstfakesrc.sgml:
10449         * docs/gst/tmpl/gstfdsink.sgml:
10450         * docs/gst/tmpl/gstfdsrc.sgml:
10451         * docs/gst/tmpl/gstfilesink.sgml:
10452         * docs/gst/tmpl/gstfilesrc.sgml:
10453         * docs/gst/tmpl/gsthttpsrc.sgml:
10454         * docs/gst/tmpl/gstidentity.sgml:
10455         * docs/gst/tmpl/gstindexfactory.sgml:
10456         * docs/gst/tmpl/gstmarshal.sgml:
10457         * docs/gst/tmpl/gstmd5sink.sgml:
10458         * docs/gst/tmpl/gstmultidisksrc.sgml:
10459         * docs/gst/tmpl/gstmultifilesrc.sgml:
10460         * docs/gst/tmpl/gstpadtemplate.sgml:
10461         * docs/gst/tmpl/gstpipefilter.sgml:
10462         * docs/gst/tmpl/gstschedulerfactory.sgml:
10463         * docs/gst/tmpl/gstsearchfuncs.sgml:
10464         * docs/gst/tmpl/gstshaper.sgml:
10465         * docs/gst/tmpl/gstspider.sgml:
10466         * docs/gst/tmpl/gstspideridentity.sgml:
10467         * docs/gst/tmpl/gststatistics.sgml:
10468         * docs/gst/tmpl/gsttee.sgml:
10469         * docs/gst/tmpl/gsttimecache.sgml:
10470         * docs/gst/tmpl/gsttypefind.sgml:
10471         * docs/gst/tmpl/gsttypefindfactory.sgml:
10472         * docs/gst/tmpl/gstxmlregistry.sgml:
10473         * docs/gst/tmpl/gthread-cothreads.sgml:
10474         * docs/gst/tmpl/old/cothreads.sgml:
10475         * docs/gst/tmpl/old/cothreads_compat.sgml:
10476         * docs/gst/tmpl/old/gettext.sgml:
10477         * docs/gst/tmpl/old/gobject2gtk.sgml:
10478         * docs/gst/tmpl/old/grammar.tab.sgml:
10479         * docs/gst/tmpl/old/gst-i18n-app.sgml:
10480         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
10481         * docs/gst/tmpl/old/gst_private.sgml:
10482         * docs/gst/tmpl/old/gstaggregator.sgml:
10483         * docs/gst/tmpl/old/gstarch.sgml:
10484         * docs/gst/tmpl/old/gstatomic_impl.sgml:
10485         * docs/gst/tmpl/old/gstbufferstore.sgml:
10486         * docs/gst/tmpl/old/gstdata_private.sgml:
10487         * docs/gst/tmpl/old/gstdisksink.sgml:
10488         * docs/gst/tmpl/old/gstdisksrc.sgml:
10489         * docs/gst/tmpl/old/gstelementfactory.sgml:
10490         * docs/gst/tmpl/old/gstextratypes.sgml:
10491         * docs/gst/tmpl/old/gstfakesink.sgml:
10492         * docs/gst/tmpl/old/gstfakesrc.sgml:
10493         * docs/gst/tmpl/old/gstfdsink.sgml:
10494         * docs/gst/tmpl/old/gstfdsrc.sgml:
10495         * docs/gst/tmpl/old/gstfilesink.sgml:
10496         * docs/gst/tmpl/old/gstfilesrc.sgml:
10497         * docs/gst/tmpl/old/gsthttpsrc.sgml:
10498         * docs/gst/tmpl/old/gstidentity.sgml:
10499         * docs/gst/tmpl/old/gstindexfactory.sgml:
10500         * docs/gst/tmpl/old/gstmarshal.sgml:
10501         * docs/gst/tmpl/old/gstmd5sink.sgml:
10502         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
10503         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
10504         * docs/gst/tmpl/old/gstpadtemplate.sgml:
10505         * docs/gst/tmpl/old/gstpipefilter.sgml:
10506         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
10507         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
10508         * docs/gst/tmpl/old/gstshaper.sgml:
10509         * docs/gst/tmpl/old/gstspider.sgml:
10510         * docs/gst/tmpl/old/gstspideridentity.sgml:
10511         * docs/gst/tmpl/old/gststatistics.sgml:
10512         * docs/gst/tmpl/old/gsttee.sgml:
10513         * docs/gst/tmpl/old/gsttimecache.sgml:
10514         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
10515         * docs/gst/tmpl/old/gstxmlregistry.sgml:
10516         * docs/gst/tmpl/old/gthread-cothreads.sgml:
10517         * docs/gst/tmpl/old/types.sgml:
10518         * docs/gst/tmpl/types.sgml:
10519
10520         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
10521         gtkdoc-scan doesn't like files with the same name in different
10522         directories.
10523         * gst/elements/Makefile.am:
10524         * gst/elements/gstelements.c:
10525         * gst/elements/gsttypefind.c: 
10526         * gst/elements/gsttypefind.h:
10527         * gst/elements/gsttypefindelement.c:
10528         * gst/elements/gsttypefindelement.h:
10529
10530 2004-04-28  David Schleef  <ds@schleef.org>
10531
10532         A bunch of portability fixes, derived from Steve Lhomme's MSVC
10533         patch (bug #141317):
10534         * gst/gst-i18n-lib.h: Allow disabling gettext.
10535         * gst/gstatomic_impl.h: disable warning when it's dumb.
10536         * gst/gstclock.c: fix include
10537         * gst/gstcompat.h: fix variadic macro
10538         * gst/gstinfo.c: fix include
10539         * gst/gstmacros.h: add defines for inlines on MSVC
10540         * gst/gstplugin.c: fix includes
10541         * gst/gstregistry.c: fix includes
10542         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
10543         * gst/gstsystemclock.c: fix include
10544         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
10545         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
10546         * gst/registries/gstxmlregistry.c:
10547         (gst_xml_registry_parse_element_factory): fix use of non-portable
10548         functions
10549         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
10550         * libs/gst/control/dparammanager.h: same
10551
10552 2004-04-28  David Schleef  <ds@schleef.org>
10553
10554         Move a bunch of unused files to old/ with names that are
10555         not case-insensitive-unique.  These files still contain some
10556         useful information that needs to be merged into gstbin.sgml,
10557         etc., so they shouldn't be deleted yet.
10558         * docs/gst/tmpl/GstBin.sgml:
10559         * docs/gst/tmpl/GstBuffer.sgml:
10560         * docs/gst/tmpl/GstCaps.sgml:
10561         * docs/gst/tmpl/GstClock.sgml:
10562         * docs/gst/tmpl/GstCompat.sgml:
10563         * docs/gst/tmpl/GstData.sgml:
10564         * docs/gst/tmpl/GstElement.sgml:
10565         * docs/gst/tmpl/GstEvent.sgml:
10566         * docs/gst/tmpl/GstIndex.sgml:
10567         * docs/gst/tmpl/GstStructure.sgml:
10568         * docs/gst/tmpl/GstTag.sgml:
10569         * docs/gst/tmpl/old/GstBin.sgml:
10570         * docs/gst/tmpl/old/GstBuffer.sgml:
10571         * docs/gst/tmpl/old/GstCaps.sgml:
10572         * docs/gst/tmpl/old/GstClock.sgml:
10573         * docs/gst/tmpl/old/GstCompat.sgml:
10574         * docs/gst/tmpl/old/GstData.sgml:
10575         * docs/gst/tmpl/old/GstElement.sgml:
10576         * docs/gst/tmpl/old/GstEvent.sgml:
10577         * docs/gst/tmpl/old/GstIndex.sgml:
10578         * docs/gst/tmpl/old/GstStructure.sgml:
10579         * docs/gst/tmpl/old/GstTag.sgml:
10580
10581 2004-04-28  David Schleef  <ds@schleef.org>
10582
10583         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
10584         (gst_caps_append), (gst_caps_append_structure),
10585         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
10586         (gst_caps_set_simple), (gst_caps_set_simple_valist),
10587         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
10588         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
10589         (gst_caps_intersect), (gst_caps_normalize),
10590         (gst_caps_transform_to_string):  Patch from Tim-Philipp M??ller
10591         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
10592         * gst/gstcaps.h: use GST_IS_CAPS().
10593
10594 2004-04-26  David Schleef  <ds@schleef.org>
10595
10596         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
10597         assembly.  gcc doesn't handle it correctly. (bug #141083)
10598         * gst/gsttrashstack.h: same
10599
10600 2004-04-25  Benjamin Otte  <otte@gnome.org>
10601
10602         * gst/gstelement.c: (gst_element_change_state):
10603           fix assertion to do an int comparison
10604
10605 2004-04-25  Benjamin Otte  <otte@gnome.org>
10606
10607         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10608           better debugging output on error
10609
10610 2004-04-25  Benjamin Otte  <otte@gnome.org>
10611
10612         * gst/gstcaps.c: (gst_caps_subtract):
10613           fix memleak
10614
10615 2004-04-23  Benjamin Otte  <otte@gnome.org>
10616
10617         * gst/gstvalue.c: (gst_value_compare_buffer),
10618         (_gst_value_initialize):
10619           add comparison function for buffers
10620
10621 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10622
10623         * docs/pwg/pwg.xml:
10624           Just found out that this so-called "ima-wav" format is really
10625           just "dvi adpcm" (according to the MS WAV documentation). So
10626           renaming it. We didn't use it yet anyway.
10627
10628 2004-04-23  Benjamin Otte  <otte@gnome.org>
10629
10630         * gst/gstcaps.c: (gst_caps_is_always_compatible):
10631           call gst_caps_is_subset
10632
10633 2004-04-23  Benjamin Otte  <otte@gnome.org>
10634
10635         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
10636         (gst_caps_is_subset):
10637           add documentation
10638
10639 2004-04-23  Benjamin Otte  <otte@gnome.org>
10640           
10641         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
10642         (gst_caps_structure_subtract), (gst_caps_subtract),
10643         (gst_caps_structure_figure_out_union),
10644         (gst_caps_structure_simplify), (gst_caps_do_simplify):
10645           fix simplifying and subtracting not working correctly with optional
10646           properties
10647           solve assorted problems that make it now simplify ebven more
10648         * docs/gst/tmpl/gstcaps.sgml:
10649         * gst/gstcaps.h:
10650           make gst_caps_do_simplify return a bool to indicate if it simplified
10651         * testsuite/caps/simplify.c: (main):
10652           add more checks. The tests is quite a bit useless right now because
10653           the core is heavily simplifying itself.
10654         * testsuite/caps/caps.h:
10655           fix caps to contain all optional properties
10656
10657 2004-04-22  Benjamin Otte  <otte@gnome.org>
10658
10659         * docs/gst/tmpl/gstcaps.sgml:
10660         * docs/gst/tmpl/gstfilesrc.sgml:
10661         * docs/gst/tmpl/gststructure.sgml:
10662         * docs/gst/tmpl/gstvalue.sgml:
10663           update for recent API changes
10664         * gst/gstcaps.c: (gst_caps_do_simplify):
10665           fix to stop trying with a freed structure
10666         * gst/gstpad.c: (gst_pad_link_fixate):
10667           simplify caps
10668         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
10669           remove C++ comment
10670         * gst/gstpad.h:
10671           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
10672         * gst/gststructure.c: (gst_structure_value_get_generic_type),
10673         (gst_structure_to_string):
10674           keep the correct type when using lists of ranges
10675         * gst/gstvalue.c: (gst_value_list_prepend_value),
10676         (gst_value_list_append_value):
10677           copy the value before adding to the list (d'oh)
10678         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
10679         (gst_value_subtract_int_range_int_range):
10680           handle overflows correctly
10681         * gst/gstvalue.c: (gst_value_subtract_from_list):
10682           fix memleak
10683         * testsuite/caps/caps.h:
10684           add a caps that caused segfaults
10685
10686 2004-04-22  Benjamin Otte  <otte@gnome.org>
10687
10688         * testsuite/refcounting/pad.c: (main):
10689           fix test
10690
10691 2004-04-22  Benjamin Otte  <otte@gnome.org>
10692
10693         * gst/gstcaps.c: (gst_caps_subtract):
10694           allow subtracting ANY and EMPTY from ANY caps
10695
10696 2004-04-22  Benjamin Otte  <otte@gnome.org>
10697
10698         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
10699         (gst_caps_union):
10700           only simplify in functions that create new caps. Simplifying in
10701           gst_caps_append breaks tests.
10702
10703 2004-04-22  Benjamin Otte  <otte@gnome.org>
10704
10705         * gst/gstcaps.c: (gst_caps_structure_simplify):
10706           unset GValue after use
10707         * gst/gstcaps.c: (gst_caps_append), 
10708         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
10709           use gst_caps_simplify (reduces registry size by 30%)
10710         * gst/gstpad.c: (gst_pad_template_new):
10711           don't allow NULL caps
10712
10713 2004-04-22  Benjamin Otte  <otte@gnome.org>
10714
10715         * docs/gst/gstreamer-sections.txt:
10716           add gst_caps_do_simplify
10717         * gst/gstcaps.c:
10718           add documentation for gst_caps_do_simplify
10719         * gst/gstvalue.h:
10720           fix typo in gst_value_register_subtract_func declaration for gst-doc
10721
10722 2004-04-22  Benjamin Otte  <otte@gnome.org>
10723
10724         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10725           fix bug when converting from empty string.
10726         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
10727         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
10728           use gst_caps_new_empty to allocate a new caps. Only that function
10729           allocates memory for caps now.
10730         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
10731         (gst_caps_remove_structure):
10732           add ability to remove one structure (but not to header yet)
10733         * gst/gstcaps.c: (gst_caps_compare_structures),
10734         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
10735         (gst_caps_structure_simplify), (gst_caps_do_simplify),
10736         * gst/gstcaps.h:
10737           add gst_caps_do_simplify that tries to simplify a caps in place.
10738           Deprecate old gst_caps_simplify function.
10739         * testsuite/caps/caps.h:
10740           add caps.h containing a common set of caps to test against.
10741         * testsuite/caps/sets.c: (check_caps), (main):
10742           use it.
10743         * testsuite/caps/.cvsignore:
10744         * testsuite/caps/Makefile.am:
10745         * testsuite/caps/simplify.c: (check_caps), (main):
10746           add test to check correctness and efficency of caps simplification.
10747
10748 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
10749
10750         reviewed by Benjamin Otte  <otte@gnome.org>
10751
10752         * gst/gstparse.c: (_gst_parse_escape):
10753           Free the GString used in _gst_parse_escape()
10754
10755 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10756
10757         * gst/gstpad.c: (gst_pad_link_negotiate):
10758           refuse to link if the link is not possible
10759         * configure.ac:
10760         * testsuite/Makefile.am:
10761         * testsuite/negotiation/.cvsignore:
10762         * testsuite/negotiation/Makefile.am:
10763         * testsuite/negotiation/pad_link.c: (main):
10764           add test that checks the above behaviour
10765
10766 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
10767
10768         * docs/gst/gstreamer-sections.txt:
10769           add newly added API
10770
10771 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
10772
10773         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10774         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
10775         (gst_filesrc_open_file), (gst_filesrc_close_file),
10776         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
10777         * gst/elements/gstfilesrc.h:
10778           add support for non-regular files (#140734)
10779
10780 2004-04-21  Benjamin Otte  <otte@gnome.org>
10781
10782         * gst/gstpad.c: (gst_pad_link_fixate):
10783           add sophisticated error checking code to see if fixation functions
10784           did their fixation right
10785
10786 2004-04-21  Benjamin Otte  <otte@gnome.org>
10787
10788         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
10789           check for ANY caps before appending/unioning
10790         * gst/gstcaps.c: (gst_caps_is_subset),
10791         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
10792         (gst_caps_structure_subtract), (gst_caps_subtract):
10793         * gst/gstcaps.h:
10794           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
10795           the API. deprecate gst_caps_is_equal_fixed
10796         * gst/gstpad.c: (gst_pad_try_set_caps):
10797         * gst/gstqueue.c: (gst_queue_link):
10798           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
10799         * gst/gststructure.c: (gst_structure_get_name_id):
10800         * gst/gststructure.h:
10801           add function gst_structure_get_name_id
10802         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
10803         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
10804         (gst_value_subtract_int_range_int_range),
10805         (gst_value_subtract_double_double_range),
10806         (gst_value_subtract_double_range_double),
10807         (gst_value_subtract_double_range_double_range),
10808         (gst_value_subtract_from_list), (gst_value_subtract_list),
10809         (gst_value_can_intersect), (gst_value_subtract),
10810         (gst_value_can_subtract), (gst_value_register_subtract_func),
10811         (_gst_value_initialize):
10812         * gst/gstvalue.h:
10813           add support for subtracting values from each other. Note that
10814           subtracting means subtracting as in set theory. Required for caps
10815           stuff above.
10816         * testsuite/caps/.cvsignore:
10817         * testsuite/caps/Makefile.am:
10818         * testsuite/caps/erathostenes.c: (erathostenes), (main):
10819         * testsuite/caps/sets.c: (check_caps), (main):
10820         * testsuite/caps/subtract.c: (check_caps), (main):
10821           add tests for subtraction and equality code.
10822
10823 2004-04-20  David Schleef  <ds@schleef.org>
10824
10825         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
10826         * gst/indexers/Makefile.am:
10827         * gst/schedulers/Makefile.am:
10828         * libs/gst/bytestream/Makefile.am:
10829         * libs/gst/control/Makefile.am:
10830         * libs/gst/getbits/Makefile.am:
10831
10832 2004-04-20  David Schleef  <ds@schleef.org>
10833
10834         * common/as-libtool.mak: Fine-tune DLL building.
10835         * configure.ac: Link plugins against libgstreamer.  Define plugindir
10836         (like gst-plugins)
10837         * examples/plugins/Makefile.am: remove plugindir
10838         * gst/autoplug/Makefile.am: DLL building fixes
10839         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
10840         Windows.
10841         * gst/elements/gstelements.c: Conditionally disable pipefilter.
10842         * gst/indexers/Makefile.am: DLL building fixes
10843         * gst/schedulers/Makefile.am: DLL building fixes.
10844         * libs/gst/bytestream/Makefile.am: DLL building fixes.
10845         * libs/gst/control/Makefile.am: same
10846         * libs/gst/getbits/Makefile.am: same
10847         * testsuite/Makefile.am: New dlopen directory
10848         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
10849         when dlopened.
10850         * testsuite/dlopen/dlopen_gst.c: (main): same
10851         * testsuite/dlopen/loadgst.c: (do_test): same
10852
10853 2004-04-20  David Schleef  <ds@schleef.org>
10854
10855         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
10856         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
10857
10858 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10859
10860         * gst/gstelement.c: (gst_element_wait),
10861         (gst_element_set_time_delay), (gst_element_change_state):
10862           Use GST_TIME_*
10863
10864 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10865
10866         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
10867         (gst_spider_identity_plug):
10868           improve debugging messages
10869         * gst/gstbin.c: (gst_bin_remove_func):
10870           make sure the state_change function is only called with simple state
10871           transitions
10872
10873 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10874
10875         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
10876         (gst_fakesink_set_property), (gst_fakesink_chain):
10877         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
10878         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
10879         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
10880         * gst/elements/gstidentity.c: (gst_identity_chain),
10881         (gst_identity_set_property):
10882         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
10883         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
10884           add warnings to _set_property for unknown arguments
10885           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
10886
10887 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10888
10889         * Makefile.am:
10890         * docs/manuals.mak:
10891           add .po file download snippet
10892           fix a bug in the doc makefile
10893
10894 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10895
10896         * Makefile.am:
10897         * po/LINGUAS:
10898         * po/en_GB.po:
10899           Added en_GB translation (Gareth Owen)
10900
10901 2004-04-20  Johan Dahlin  <johan@gnome.org>
10902
10903         * gst/gstpad.c (_invent_event): Clean up
10904
10905 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10906
10907         * testsuite/caps/filtercaps.c: (main):
10908           fix test to test things correctly (caps are complicated)
10909
10910 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10911
10912         * testsuite/caps/Makefile.am:
10913         * testsuite/caps/filtercaps.c: (main):
10914           add test (that doesn't work right now, but should)
10915
10916 2004-04-19  David Schleef  <ds@schleef.org>
10917
10918         * configure.ac: Add test for allowing unaligned access.  Add define
10919         to put in gstconfig.h.
10920         * docs/gst/gstreamer-sections.txt: New symbols
10921         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
10922         * docs/gst/tmpl/gstfilesrc.sgml:
10923         * docs/gst/tmpl/gstparse.sgml:
10924         * docs/gst/tmpl/gsttypes.sgml:
10925         * docs/gst/tmpl/gstutils.sgml:
10926         * docs/gst/tmpl/gstvalue.sgml:
10927         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
10928         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
10929         on most !i386/!powerpc architectures.  From Daniel Gazard
10930         <daniel.gazard@free.fr>.  (bug #140156)
10931         * po/af.po: Check in changes made by gettext.
10932         * po/az.po:
10933         * po/fr.po:
10934         * po/nl.po:
10935         * po/sr.po:
10936         * po/sv.po:
10937
10938 2004-04-20  Benjamin Otte  <otte@gnome.org>
10939
10940         * gst/schedulers/entryscheduler.c: 
10941         (gst_entry_scheduler_yield):
10942           refuse to yield when decoupled elements insist on doing that.
10943           At least it's better than crashing
10944
10945 2004-04-19  David Schleef  <ds@schleef.org>
10946
10947         * docs/libs/Makefile.am: Change sinclude to include
10948         * docs/gst/Makefile.am: same
10949         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
10950
10951 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10952
10953         * po/LINGUAS:
10954         * po/uk.po:
10955           Added Ukrainian translation (Maxim V. Dziumanenko)
10956
10957 2004-04-19  Johan Dahlin  <johan@gnome.org>
10958
10959         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
10960         checking here, do it before calling the function.
10961         Clean up, use for loops instead of while loops while iterating
10962         over lists.
10963
10964         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
10965         in debug message.
10966         (gst_spider_create_and_plug): Improve debug message.
10967         General: Replace while loops which iterates over GLists with for
10968         loops. Which are much cleaner, improves readability, especially
10969         for gst_spider_identity_plug
10970
10971         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
10972         fixes bug 140477
10973
10974 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10975
10976         * po/LINGUAS:
10977         * po/tr.po:
10978           Added Turkish translation (Baris Cicek)
10979
10980 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10981
10982         * docs/faq/troubleshooting.xml:
10983           Mention gst-register in the FAQ (fixes 139045).
10984
10985 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10986
10987         * docs/gst/gstreamer-sections.txt:
10988
10989 2004-04-17  Benjamin Otte  <otte@gnome.org>
10990
10991         * gst/gstelement.c: (gst_element_dispose):
10992           simplify
10993         * gst/gstpad.c: (gst_pad_call_chain_function):
10994           don't create loads of events due to bad macro usage
10995
10996 2004-04-16  David Schleef  <ds@schleef.org>
10997
10998         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
10999         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
11000         * gst/gstvalue.c: (gst_value_serialize_buffer),
11001         (gst_value_deserialize_buffer), (gst_type_is_fixed),
11002         (_gst_value_initialize): Create a new function gst_type_is_fixed()
11003         to indicate types that are fixed wrt caps or not.  Switching to
11004         this function fixes (bug #140298).
11005         * gst/gstvalue.h:
11006
11007 2004-04-16  David Schleef  <ds@schleef.org>
11008
11009         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
11010         for GST_UNALIGNED_ACESS, since we essentially know which archs
11011         are ok.
11012
11013 2004-04-17  Benjamin Otte  <otte@gnome.org>
11014
11015         * docs/gst/Makefile.am:
11016           ignore gst/parse directory when building docs (fixes #140205)
11017
11018 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11019
11020         * testsuite/refcounting/mem.c: (vmsize):
11021           do error checking
11022
11023 2004-04-16  Johan Dahlin  <johan@gnome.org>
11024
11025         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
11026         and gst_pad_call_get_function.
11027
11028 2004-04-15  David Schleef  <ds@schleef.org>
11029
11030         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
11031         checks if we can access unaligned memory.
11032         * configure.ac: Use it.
11033
11034 2004-04-16  Benjamin Otte  <otte@gnome.org>
11035
11036         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
11037         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
11038         * gst/elements/gstfilesrc.h:
11039           s/seek_happened/need_discont/ and require discont before sending any
11040           data
11041
11042 2004-04-15  David Schleef  <ds@schleef.org>
11043
11044         * gst/gstvalue.c: (gst_value_serialize_buffer),
11045         (gst_value_deserialize_buffer), (_gst_value_initialize):
11046         Register these types as fundamental types. (bug #140015)
11047
11048 2004-04-16  Benjamin Otte  <otte@gnome.org>
11049
11050         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
11051         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
11052         (gst_pad_pull):
11053           implement enforcing discont events before buffers are passed. This
11054           allows state changes of only some elements and later correctly going
11055           on where they left off (or in short: you can now set audio sinks to
11056           NULL to release the device when the pipeline is paused)
11057         * gst/gstpad.c: (gst_pad_call_chain_function),
11058         (gst_pad_call_get_function):
11059         * gst/gstpad.h:
11060           add gst_pad_call_chain_function and gst_pad_call_get_function for
11061           scheduler interaction. They are required because of the changes
11062           above.
11063         * gst/schedulers/entryscheduler.c: (get_buffer),
11064         (gst_entry_scheduler_chain_wrapper),
11065         (gst_entry_scheduler_get_wrapper),
11066         (gst_entry_scheduler_state_transition),
11067         (gst_entry_scheduler_pad_link):
11068         * gst/schedulers/gstbasicscheduler.c:
11069         (gst_basic_scheduler_chain_wrapper),
11070         (gst_basic_scheduler_src_wrapper),
11071         (gst_basic_scheduler_chainhandler_proxy),
11072         (gst_basic_scheduler_gethandler_proxy),
11073         (gst_basic_scheduler_cothreaded_chain),
11074         (gst_basic_scheduler_chain_elements):
11075         * gst/schedulers/gstoptimalscheduler.c:
11076         (get_group_schedule_function), (pad_clear_queued),
11077         (gst_opt_scheduler_pad_link):
11078           use the new functions instead of calling get/chain-functions
11079           directly.
11080
11081 2004-04-15  David Schleef  <ds@schleef.org>
11082
11083         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
11084         * docs/gst/tmpl/gstinfo.sgml: same
11085         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
11086         gtk-doc put here.
11087         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
11088         * examples/queue/queue.c: (main):  We iterate pipelines, not
11089         bins.  (bug #139996)
11090
11091 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11092
11093         * docs/pwg/advanced-types.xml:
11094           Add MS RLE support. Also document Qt RLE although I have no sample
11095           files for that yet. And document an extra property for ADPCM.
11096
11097 2004-04-15  David Schleef  <ds@schleef.org>
11098
11099         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
11100         (_gst_plugin_fault_handler_setup):  Disable more stuff on
11101         Windows.
11102
11103 2004-04-15  David Schleef  <ds@schleef.org>
11104
11105         * gst/gstinfo.c: (_gst_debug_init): Change some internal
11106         symbol names to not conflict with new gstinfo.h symbols.
11107         * gst/gstinfo.h: Add inline functions for all those crazy
11108         compilers that don't know how to handle variadic macros (MSVC).
11109
11110 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11111
11112         * configure.ac: bump nano to 1
11113
11114 === release 0.8.1 ===
11115
11116 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11117
11118         * NEWS:
11119         * RELEASE:
11120         * configure.ac:
11121           releasing 0.8.1, "Snow Brigade"
11122
11123 2004-04-14  David Schleef  <ds@schleef.org>
11124
11125         * testsuite/Makefile.am: define tests_ignore
11126         * testsuite/Rules: Added new tests_ignore, which get compiled,
11127         but not run (generally because they're inconsistent or have
11128         heisenbugs).  Now we can ensure all the .c files compile in
11129         testsuite/.
11130         * testsuite/bins/Makefile.am: define tests_ignore
11131         * testsuite/bytestream/Makefile.am:
11132         * testsuite/caps/Makefile.am:
11133         * testsuite/clock/Makefile.am:
11134         * testsuite/debug/Makefile.am:
11135         * testsuite/debug/global.c: (gst_debug_log_one),
11136         (gst_debug_log_two): Fix compilation problem.
11137         * testsuite/dynparams/Makefile.am:
11138         * testsuite/elements/Makefile.am:
11139         * testsuite/ghostpads/Makefile.am:
11140         * testsuite/indexers/Makefile.am:
11141         * testsuite/parse/Makefile.am:
11142         * testsuite/plugin/Makefile.am:
11143         * testsuite/refcounting/Makefile.am:
11144         * testsuite/refcounting/element_pad.c: (main): Don't return leak
11145         results, because it's not calculated correctly.
11146         * testsuite/refcounting/pad.c: (main): same
11147         * testsuite/states/Makefile.am:
11148         * testsuite/tags/Makefile.am:
11149         * testsuite/threads/Makefile.am:
11150
11151 2004-04-14  David Schleef  <ds@schleef.org>
11152
11153         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
11154         generating bad code around the cpu detection asm code.
11155
11156 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11157
11158         * tools/gst-inspect.c: (print_element_info):
11159           print numeric version of rank as well, since we added some - 1
11160           rank values to elements
11161
11162 2004-04-13  David Schleef  <ds@schleef.org>
11163
11164         * configure.ac:  Disable various code when compiling for MinGW.
11165         * gst/elements/Makefile.am:
11166         * gst/elements/gstelements.c:
11167         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11168         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
11169         * gst/registries/gstxmlregistry.c: (make_dir):
11170
11171 2004-04-13  David Schleef  <ds@schleef.org>
11172
11173         * gst/Makefile.am:
11174         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
11175         assembly.
11176         * gst/gstcpuid_i386.s: remove
11177
11178 2004-04-13  David Schleef  <ds@schleef.org>
11179
11180         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
11181         seems to think it needs to be done.
11182         * docs/gst/tmpl/gstfakesink.sgml:
11183         * docs/gst/tmpl/gstfakesrc.sgml:
11184         * docs/gst/tmpl/gstfdsink.sgml:
11185         * docs/gst/tmpl/gstfdsrc.sgml:
11186         * docs/gst/tmpl/gstfilesink.sgml:
11187         * docs/gst/tmpl/gstfilesrc.sgml:
11188         * docs/gst/tmpl/gstidentity.sgml:
11189         * docs/gst/tmpl/gstmd5sink.sgml:
11190         * docs/gst/tmpl/gstmultifilesrc.sgml:
11191         * docs/gst/tmpl/gstpipefilter.sgml:
11192         * docs/gst/tmpl/gstshaper.sgml:
11193         * docs/gst/tmpl/gstspider.sgml:
11194         * docs/gst/tmpl/gstspideridentity.sgml:
11195         * docs/gst/tmpl/gststatistics.sgml:
11196         * docs/gst/tmpl/gsttee.sgml:
11197         * docs/gst/tmpl/gsttypefind.sgml:
11198         * docs/gst/tmpl/gstutils.sgml:
11199
11200 2004-04-13  David Schleef  <ds@schleef.org>
11201
11202         * configure.ac: Changes to remove POSIXisms (mmap in this case)
11203         and to build DLLs on Windows.
11204         * gst/Makefile.am:
11205         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
11206         (gst_filesrc_open_file):
11207         * gst/schedulers/Makefile.am:
11208
11209 2004-04-13  David Schleef  <ds@schleef.org>
11210
11211         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
11212         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
11213         fixating lists.
11214
11215 2004-04-12  David Schleef  <ds@schleef.org>
11216
11217         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
11218         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
11219         to using it.
11220         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
11221         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
11222         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
11223         * gst/gststructure.c: (gst_structure_set_valist),
11224         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
11225         support for buffers.
11226         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
11227         intended to be const.
11228         * gst/gsttag.h: same
11229         * gst/gstvalue.c: (gst_value_serialize_buffer),
11230         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
11231         to (de)serialize buffers.
11232         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
11233         * testsuite/caps/string-conversions.c: (main):
11234         * testsuite/caps/value_serialize.c: add new test
11235
11236 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11237
11238         * docs/pwg/advanced-types.xml:
11239           Document MS video 1 (video/x-msvideocodec) mimetype/format.
11240
11241 2004-04-11  Benjamin Otte  <otte@gnome.org>
11242
11243         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
11244           rename categories to basic_*
11245         * gst/schedulers/gstbasicscheduler.c: 
11246         (gst_basic_scheduler_chain_wrapper),
11247         (gst_basic_scheduler_chainhandler_proxy),
11248         (gst_basic_scheduler_gethandler_proxy),
11249         (gst_basic_scheduler_eventhandler_proxy):
11250           debugging category fixes - put common stuff in log category
11251         * gst/schedulers/gstbasicscheduler.c: 
11252         (gst_basic_scheduler_chain_elements):
11253           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
11254           active and linking two active chains
11255
11256 2004-04-10  Benjamin Otte  <otte@gnome.org>
11257
11258         * docs/pwg/intro-preface.xml:
11259           fix dead links and remove reference to Wiki
11260
11261 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11262
11263         * gst/schedulers/gstbasicscheduler.c:
11264           make sure we can switch back to the main function if we're still in
11265           the main function (supposed to fix #139617)
11266         * gst/schedulers/gthread-cothreads.h:
11267           don't throw an error when switching to the same cothread
11268
11269 2004-04-09  Benjamin Otte  <otte@gnome.org>
11270
11271         * gst/gstbin.c: (gst_bin_get_type):
11272         * gst/gstclock.c: (gst_clock_get_type):
11273         * gst/gstindex.c: (gst_index_get_type):
11274         * gst/gstobject.c: (gst_object_get_type),
11275         (gst_signal_object_get_type):
11276         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
11277         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
11278         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
11279         * gst/gstqueue.c: (gst_queue_get_type):
11280         * gst/gstregistry.c: (gst_registry_get_type):
11281         * gst/gstsystemclock.c: (gst_system_clock_get_type):
11282         * gst/gstthread.c: (gst_thread_get_type):
11283           don't use memchunks for these objects, use malloc instead
11284
11285 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11286
11287         * docs/gst/.cvsignore:
11288         * docs/gst/Makefile.am:
11289         * docs/gst/gstreamer-sections.txt:
11290         * docs/gst/tmpl/gstaggregator.sgml:
11291         * docs/gst/tmpl/gstbuffer.sgml:
11292         * docs/gst/tmpl/gstclock.sgml:
11293         * docs/gst/tmpl/gstelement.sgml:
11294         * docs/gst/tmpl/gstfakesink.sgml:
11295         * docs/gst/tmpl/gstfakesrc.sgml:
11296         * docs/gst/tmpl/gstfdsink.sgml:
11297         * docs/gst/tmpl/gstfdsrc.sgml:
11298         * docs/gst/tmpl/gstfilesink.sgml:
11299         * docs/gst/tmpl/gstfilesrc.sgml:
11300         * docs/gst/tmpl/gstidentity.sgml:
11301         * docs/gst/tmpl/gstindex.sgml:
11302         * docs/gst/tmpl/gstinfo.sgml:
11303         * docs/gst/tmpl/gstmd5sink.sgml:
11304         * docs/gst/tmpl/gstmultifilesrc.sgml:
11305         * docs/gst/tmpl/gstpad.sgml:
11306         * docs/gst/tmpl/gstpipefilter.sgml:
11307         * docs/gst/tmpl/gstpipeline.sgml:
11308         * docs/gst/tmpl/gstpluginfeature.sgml:
11309         * docs/gst/tmpl/gstqueue.sgml:
11310         * docs/gst/tmpl/gstregistry.sgml:
11311         * docs/gst/tmpl/gstscheduler.sgml:
11312         * docs/gst/tmpl/gstshaper.sgml:
11313         * docs/gst/tmpl/gstspider.sgml:
11314         * docs/gst/tmpl/gstspideridentity.sgml:
11315         * docs/gst/tmpl/gststatistics.sgml:
11316         * docs/gst/tmpl/gstsystemclock.sgml:
11317         * docs/gst/tmpl/gsttee.sgml:
11318         * docs/gst/tmpl/gstthread.sgml:
11319         * docs/gst/tmpl/gsttypefind.sgml:
11320         * docs/gst/tmpl/gstutils.sgml:
11321           further doc build fixes
11322
11323 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11324
11325         * docs/gst/Makefile.am:
11326           make docs exit on scanning problems
11327           fix nonsrcdir build issues
11328         * docs/gst/gstreamer-sections.txt:
11329           adding stuff from -unused
11330         * gst/gstqueue.h:
11331           create GstQueueSize
11332         * gst/schedulers/cothreads_compat.h:
11333           fix cothread warnings
11334
11335 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11336
11337         * docs/gst/gstreamer-sections.txt:
11338           remove defines deprecated by Benjamin
11339
11340 2004-04-07  Benjamin Otte  <otte@gnome.org>
11341
11342         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
11343           when the buffer is complete, don't check if other buffers are needed
11344         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
11345           check that the offset is >0 so we don't try to read before the
11346           beginning of the file
11347         * gst/gstpad.c: (gst_pad_set_pad_template):
11348           sink the template, so we don't end up with 130k pad templates
11349
11350 2004-04-06  Benjamin Otte  <otte@gnome.org>
11351
11352         * gst/autoplug/gstspider.c: (gst_spider_link_add):
11353           don't ref the element, adding already reffed it. And we didn't unref
11354           it later anyway... (huge memleak when you used many spider elements)
11355         * gst/gstelement.c: (gst_element_base_class_finalize):
11356         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
11357         (gst_element_register):
11358         * gst/gsturi.c: (gst_element_make_from_uri):
11359           use gst_object_(un)ref instead of g_object(un)ref
11360
11361 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11362
11363         * gst/gstbuffer.h:
11364           remove macro that wouldn't work anymore because struct member has
11365           been removed.
11366         * gst/schedulers/entryscheduler.c: (schedule_forward):
11367           fix segfault for unconnected pads
11368         
11369 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11370
11371         reviewed by David Schleef <ds@schleef.org>
11372
11373         * gst/gstinfo.h:
11374           *_FORMAT modifiers should require putting a % in front of them for
11375           consistency reasons.
11376
11377 2004-04-05  Colin Walters  <walters@redhat.com>
11378
11379         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
11380         space.
11381
11382 2004-04-05  Benjamin Otte  <otte@gnome.org>
11383
11384         * configure.ac:
11385         * gst/Makefile.am:
11386         * gst/gst_private.h:
11387         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
11388           add support for detecting if GStreamer runs inside valgrind.
11389           requires valgrind (d'oh) and --enable-debug for correct cdetection.
11390           print a big message in valgrind that GStreamer has detected it's
11391           running inside and might now use different code.
11392         * gst/gstmemchunk.c: (populate), (free_area),
11393         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
11394         (gst_mem_chunk_free):
11395           flag memchunks for valgrind, so it can detect leaking of chunks.
11396           This allows detecting leaks of GstBuffer and GstEvent correctly
11397           inside valgrind.
11398
11399 2004-04-05  David Schleef  <ds@schleef.org>
11400
11401         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
11402           jensgr@gmx.net (Jens Granseuer)
11403
11404 2004-04-05  David Schleef  <ds@schleef.org>
11405
11406         * gst/gstbuffer.c: (_gst_buffer_sub_free),
11407         (gst_buffer_default_free), (gst_buffer_default_copy),
11408         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
11409         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
11410         structures in one place.
11411
11412 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11413
11414         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
11415           (GST_TIME_FORMAT, GST_TIME_ARGS)
11416
11417 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11418
11419         * testsuite/elements/Makefile.am:
11420           disable test until it stops breaking make distcheck
11421
11422 2004-04-05  Johan Dahlin  <johan@gnome.org>
11423
11424         * po/sv.po: Updated translation
11425
11426 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11427
11428         * gst/gstplugin.c: (gst_plugin_load_file):
11429           fix segfault for when original plugin was loaded statically
11430
11431 2004-04-05  Benjamin Otte  <otte@gnome.org>
11432
11433         * testsuite/debug/category.c: (main):
11434         * testsuite/debug/commandline.c: (main):
11435         * testsuite/debug/output.c: (main):
11436           fix tests to work again with debugging enabled
11437
11438 2004-04-05  Benjamin Otte  <otte@gnome.org>
11439
11440         * gst/schedulers/gstbasicscheduler.c:
11441         (gst_basic_scheduler_pad_link):
11442           fix to work with recent scheduling changes
11443
11444 2004-04-05  Benjamin Otte  <otte@gnome.org>
11445
11446         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
11447         prepareChangeLog doesn't work when cvs indents):
11448           don't throw an error when no element can be scheduled, there's too
11449           many weird reasons why it doesn't work. Return STOPPED instead.
11450           decoupled elemts' schedulability doesn't depend on bufpens.
11451
11452 2004-04-04  Benjamin Otte  <otte@gnome.org>
11453
11454         * gst/schedulers/gstbasicscheduler.c:
11455         (gst_basic_scheduler_pad_select):
11456           fix uninitialized variable warnings
11457
11458 2004-04-04  Benjamin Otte  <otte@gnome.org>
11459
11460         * gst/gstpad.c: (gst_pad_collect_valist):
11461           fix uninitialized variable warning
11462         * gst/schedulers/entryscheduler.c: (schedule_forward):
11463           fix shadowed variable
11464
11465 2004-04-04  Benjamin Otte  <otte@gnome.org>
11466
11467         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
11468         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
11469         (gst_pad_select):
11470         * gst/gstpad.h:
11471         * gst/gstscheduler.c: (gst_scheduler_pad_select),
11472         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
11473         * gst/gstscheduler.h:
11474           implement gst_pad_collect as replacement for gst_pad_select.
11475           deprecate gst_pad_select and gst_scheduler_(un)lock_element
11476           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
11477           new pad_select, lock and unlock calls.
11478         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
11479         * gst/cothreads.h:
11480         * gst/schedulers/cothreads_compat.h:
11481         * gst/schedulers/gthread-cothreads.h:
11482           remove unused cothread_lock and cothread_unlock calls
11483         * gst/schedulers/entryscheduler.c:
11484         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
11485         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
11486         (gst_entry_scheduler_pad_select):
11487           update to new API
11488         * gst/schedulers/gstbasicscheduler.c:
11489         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
11490         (gst_basic_scheduler_pad_select):
11491           remove useless lock and unlock calls, update pad_select to new API
11492           (untested)
11493         * gst/schedulers/gstoptimalscheduler.c:
11494         (gst_opt_scheduler_class_init):
11495           remove useless select, lock and unlock function calls
11496         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
11497           use gst_pad_collect instead of gst_pad_select
11498
11499 2004-04-04  Benjamin Otte  <otte@gnome.org>
11500
11501         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
11502         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
11503         (schedule_next_element), (print_entry):
11504           add can_schedule_pad to handle element states.
11505           add schedule_forward to select the correct entry to schedule next
11506
11507 2004-04-03  Benjamin Otte  <otte@gnome.org>
11508
11509         * gst/schedulers/entryscheduler.c: 
11510           remove unused variable, fix error inside Rb, fix compile warning in
11511           unreachable code
11512
11513 2004-04-03  Benjamin Otte  <otte@gnome.org>
11514
11515         * gst/schedulers/entryscheduler.c:
11516           completely revamp the inner workings, so it's a lot easier to
11517           understand and extend
11518
11519 2004-04-03  Andy Wingo  <wingo@pobox.com>
11520
11521         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
11522         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
11523         This allows better introspection of pipeline topology.
11524         (add_to_chain): Don't do trickery to put loop elements first;
11525         rather, queue a chain sort by marking the chain as dirty.
11526         (remove_from_chain): Mark the chain dirty.
11527         (sort_chain): New function. Sorts the group list so that terminal
11528         sinks are first. This means elements on the sink side will be
11529         preferentially sscheduled before elements on the src side of the
11530         pipeline.
11531         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
11532         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
11533         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
11534         (group_inc_link): Change argument and variable names to match the
11535         new link structure member names (src and sink).
11536         (group_dec_link): Add some description
11537
11538 2004-04-03  Benjamin Otte  <otte@gnome.org>
11539
11540         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11541         * gst/gstinfo.h:
11542         * testsuite/debug/category.c: (main):
11543         * testsuite/debug/commandline.c: (main):
11544         * testsuite/debug/output.c: (main):
11545         * testsuite/debug/printf_extension.c: (main):
11546           fix to successfully build and test with --disable-gst-debug
11547           configure switch (fixes #138705)
11548
11549 2004-04-03  Benjamin Otte  <otte@gnome.org>
11550
11551         * docs/pwg/building-boiler.xml:
11552           add cvs login line and s/anonymous/anoncvs/
11553
11554 2004-04-03  Tim-Phillip M??ller  <t.i.m@zen.co.uk>
11555
11556         reviewed by Benjamin Otte  <otte@gnome.org>
11557
11558         * gst/gststructure.c: (gst_structure_free):
11559           memleak fix: free fields array (partial fix for #134839)
11560
11561 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11562
11563         * docs/random/ds/0.9-suggested-changes:
11564           Add a note to change handoff use in fakesrc to be usable in
11565           a more generic way (fakesrc should be renamed to appsrc or so).
11566         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
11567           Change signal type to scope, so we can fill the buffer in the
11568           handoff handler (that's the whole use of this signal...).
11569
11570 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11571
11572         * docs/pwg/other-ntoone.xml:
11573           Document muxers and n-to-1 elements.
11574
11575 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
11576
11577         * gst/registries/gstxmlregistry.c
11578         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
11579         determine if a file is a G_MODULE. The old one discards paths
11580         containing "so" somewhere in the middle. My home directory is
11581         called "soto". Go figure...
11582
11583 2004-03-31  David Schleef  <ds@schleef.org>
11584
11585         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
11586         to eventually deprecate gst_buffer_merge().  (bug: #136408)
11587         * gst/gstbuffer.h:
11588
11589 2004-03-31  David Schleef  <ds@schleef.org>
11590
11591         * gst/gstvalue.c: (gst_value_union_int_int_range),
11592         (gst_value_union_int_range_int_range), (gst_value_can_union),
11593         (gst_value_union), (_gst_value_initialize):  Add some union
11594         implementations.  We didn't have any previously.
11595         * testsuite/caps/Makefile.am:
11596         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
11597         (gst_audioscale_getcaps), (test_caps), (main): A little test
11598         that is the same as the caps manipulation in audioscale.
11599
11600 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11601
11602         * docs/faq/general.xml:
11603           add entry about "does gst support format X?"
11604
11605 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11606
11607         * gst/gstthread.c:
11608           fix docs
11609         * gst/gstutils.h:
11610           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
11611
11612 2004-03-30  Benjamin Otte  <otte@gnome.org>
11613
11614         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
11615           set the offset of the buffer to the requested offset
11616         * gst/elements/gsttypefind.c: (stop_typefinding):
11617           revert patch 1.18 (which I unfortunately don't know the reason for).
11618           This is needed to allow downstream elements to seek. Otherwise
11619           typefind might overwrite a previous seek by downstream elements.
11620           This lead to errors with id3tag and typefind on some mp3s.
11621         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
11622         (gst_entry_scheduler_iterate):
11623           be more verbose when debugging
11624
11625 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11626
11627         * gst/gstcaps.c: (gst_caps_from_string_inplace):
11628           make sure we don't get NULL strings
11629
11630 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11631
11632         * gst/gstcaps.c:
11633         * gst/gstelement.c:
11634         * gst/gstelementfactory.c: (gst_element_factory_get_type):
11635         * gst/gstindex.c: (gst_index_resolver_get_type),
11636         (gst_index_get_type), (gst_index_factory_get_type):
11637         * gst/gstinfo.c:
11638         * gst/gstpad.c:
11639         * gst/gstplugin.c:
11640         * gst/gsturi.c: (gst_uri_handler_get_type):
11641         * gst/gstvalue.c:
11642           first batch of documentation fixes
11643
11644 2004-03-29  David Schleef  <ds@schleef.org>
11645
11646         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
11647         * docs/gst/gstreamer-docs.sgml:  More hacking
11648         * docs/gst/gstreamer-sections.txt:
11649         * docs/gst/tmpl/cothreads_compat.sgml:
11650         * docs/gst/tmpl/gstcaps.sgml:
11651         * docs/gst/tmpl/gstclock.sgml:
11652         * docs/gst/tmpl/gstelement.sgml:
11653         * docs/gst/tmpl/gstevent.sgml:
11654         * docs/gst/tmpl/gstpad.sgml:
11655         * docs/gst/tmpl/gstutils.sgml:
11656         * docs/gst/tmpl/gstxml.sgml:
11657         * docs/gst/tmpl/gthread-cothreads.sgml:
11658         * docs/random/ds/0.9-suggested-changes:
11659         * gst/elements/gstfakesink.h: doc fixes
11660         * gst/elements/gstfakesrc.h: doc fixes
11661         * gst/gstcaps.c: doc fixes
11662         * gst/gstcaps.h: doc fixes
11663         * gst/gstelement.c: doc fixes
11664         * gst/gstelement.h: doc fixes
11665         * gst/gstindex.c: doc fixes
11666         * gst/gstinfo.c: doc fixes
11667         * gst/gstpad.c: doc fixes
11668         * gst/gstpad.h: doc fixes
11669         * gst/gstplugin.c: doc fixes
11670         * gst/gsttypefind.h: doc fixes
11671         * gst/gsturi.c: doc fixes
11672         * gst/gstvalue.c: doc fixes
11673
11674 2004-03-29  Colin Walters  <walters@redhat.com>
11675
11676         * gst/registries/gstxmlregistry.c (get_time)
11677         (plugin_times_older_than_recurse):
11678         Use the result of stat to determine whether a path is a file,
11679         so we don't attempt to opendir() files.
11680
11681 2004-03-29  Benjamin Otte  <otte@gnome.org>
11682
11683         * gst/gstpad.c: (gst_pad_set_explicit_caps):
11684           print caps in debugging output when setting caps failed
11685         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
11686         (schedule_next_element), (get_buffer), (run_chainhandler),
11687         (element_may_start), (gst_entry_scheduler_chain_handler),
11688         (gst_entry_scheduler_get_handler),
11689         (gst_entry_scheduler_state_transition),
11690         (gst_entry_scheduler_pad_link):
11691           make this scheduler a testcase for mandatory
11692           discont-before-first-buffer which is needed if we want to allow apps
11693           to release the sound device.
11694           add SCHED_ASSERT macro to print scheduler state before an assertion
11695           triggers.
11696
11697 2004-03-29  Benjamin Otte  <otte@gnome.org>
11698
11699         * COPYING:
11700           replace by LGPL (former COPYING.LIB). The core is completely
11701           licensed LGPL.
11702         * COPYING.LIB:
11703           remove
11704
11705 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11706
11707         * po/af.po:
11708         * po/sv.po:
11709           updated Afrikaans and Swedish
11710
11711 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11712
11713         * po/LINGUAS:
11714         * po/az.po:
11715           adding Azerbaijani (M??tin ??mirov)
11716
11717 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
11718
11719         * gst/gstelement.h: 
11720         * gst/gstelement.c (gst_element_set_time_delay): New function for
11721         setting element time taking into account a hardware buffering
11722         delay.
11723         (gst_element_set_time): Now just an invocation of
11724         gst_element_set_time_delay.
11725         * gst/gstclock.h: 
11726         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
11727         allowing to set event times in the future.
11728         (gst_clock_get_event_time): Now just an invocation of
11729         gst_clock_get_event_time_delay.
11730
11731 2004-03-28  Benjamin Otte  <otte@gnome.org>
11732
11733         * gst/gstbin.c: (gst_bin_set_element_sched),
11734         (gst_bin_unset_element_sched):
11735           don't add decoupled elements to schedulers - otherwise it's
11736           impossible to control if a link to a decoupled element was already
11737           removed from a scheduler or not.
11738         * gst/schedulers/cothreads_compat.h:
11739         * gst/schedulers/gthread-cothreads.h:
11740           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
11741           is no "unused" warning.
11742         * gst/schedulers/Makefile.am:
11743         * gst/schedulers/entryscheduler.c:
11744           add new scheduler, based on ideas from talking to David and Martin.
11745           It's supposed to be small and correct. Currently it's also slow (but
11746           it's not noticable)
11747         * examples/retag/retag.c: (main):
11748         * testsuite/bytestream/test1.c: (main):
11749           fix missing NULLs at end of variadic functions
11750         * testsuite/elements/.cvsignore:
11751           update
11752
11753 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
11754
11755         * gst/gstevent.h:
11756         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
11757
11758 2004-03-25  David Schleef  <ds@schleef.org>
11759
11760         * docs/gst/gstreamer-sections.txt:  More doc hacking.
11761         * docs/gst/tmpl/gstaggregator.sgml:
11762         * docs/gst/tmpl/gstautoplugfactory.sgml:
11763         * docs/gst/tmpl/gstbin.sgml:
11764         * docs/gst/tmpl/gstbuffer.sgml:
11765         * docs/gst/tmpl/gstbufferstore.sgml:
11766         * docs/gst/tmpl/gstfakesink.sgml:
11767         * docs/gst/tmpl/gstfakesrc.sgml:
11768         * docs/gst/tmpl/gstmd5sink.sgml:
11769         * docs/gst/tmpl/gstreamer-unused.sgml:
11770         * docs/gst/tmpl/gstsearchfuncs.sgml:
11771         * docs/gst/tmpl/gstshaper.sgml:
11772         * docs/gst/tmpl/gstspider.sgml:
11773         * docs/gst/tmpl/gsttee.sgml:
11774         * docs/gst/tmpl/gstutils.sgml:
11775         * docs/gst/tmpl/gstvalue.sgml:
11776         * docs/gst/tmpl/gstxml.sgml:
11777         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
11778         and we don't support it.
11779         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
11780         (gst_use_threads), (gst_has_threads): same
11781         * gst/gstthreaddummy.c: same
11782         * gst/autoplug/gstspider.c: Make gst_spider_details static.
11783         * gst/autoplug/gstspider.h: same
11784         * gst/elements/gstaggregator.h: Remove bogus function from header
11785         * gst/elements/gstfakesink.h: same
11786         * gst/elements/gstfakesrc.h: same
11787         * gst/elements/gstmd5sink.h: same
11788         * gst/elements/gstshaper.h: same
11789         * gst/elements/gsttee.h: same
11790         * gst/gstbin.c: doc fixes
11791         * gst/gstbin.h: Remove unused definition.
11792         * gst/gstbuffer.c: doc fixes
11793         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
11794         * gst/gstfilter.c: doc fixes
11795         * gst/gsttag.c: doc fixes
11796         * gst/gstvalue.c: doc fixes
11797
11798 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11799
11800         * docs/pwg/advanced-types.xml:
11801           Document typefinding.
11802         * docs/pwg/other-oneton.xml:
11803           Document one-to-n elements, demuxers and parsers.
11804
11805 2004-03-25  Tim-Philipp M??ller <t.i.m@zen.co.uk>
11806
11807         reviewed by: David Schleef  <ds@schleef.org>
11808
11809         * configure.ac: Check bison version (bug #127838)
11810
11811 2004-03-25  David Schleef  <ds@schleef.org>
11812
11813         * docs/gst/gstreamer-docs.sgml: More fine tuning.
11814         * docs/gst/gstreamer-sections.txt:
11815         * docs/gst/tmpl/gstautoplug.sgml:
11816         * docs/gst/tmpl/gststaticautoplug.sgml:
11817         * docs/gst/tmpl/gststaticautoplugrender.sgml:
11818         * docs/gst/tmpl/gstutils.sgml:
11819         * docs/gst/tmpl/gstxml.sgml:
11820
11821 2004-03-24  David Schleef  <ds@schleef.org>
11822
11823         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
11824         manual being such complete crap, that I decided to do major
11825         hacking of it.  This checkin replaces any fine tuning that
11826         may have been done previously, with the benefit of actually
11827         being complete for much of the API that was changed since
11828         0.6.  Further fine tuning will occur shortly.  (bug #134721)
11829         * docs/gst/gstreamer-sections.txt:
11830         * docs/gst/tmpl/GstBin.sgml:
11831         * docs/gst/tmpl/GstBuffer.sgml:
11832         * docs/gst/tmpl/GstCaps.sgml:
11833         * docs/gst/tmpl/GstClock.sgml:
11834         * docs/gst/tmpl/GstCompat.sgml:
11835         * docs/gst/tmpl/GstData.sgml:
11836         * docs/gst/tmpl/GstElement.sgml:
11837         * docs/gst/tmpl/GstEvent.sgml:
11838         * docs/gst/tmpl/GstIndex.sgml:
11839         * docs/gst/tmpl/GstStructure.sgml:
11840         * docs/gst/tmpl/GstTag.sgml:
11841         * docs/gst/tmpl/cothreads.sgml:
11842         * docs/gst/tmpl/cothreads_compat.sgml:
11843         * docs/gst/tmpl/gettext.sgml:
11844         * docs/gst/tmpl/grammar.tab.sgml:
11845         * docs/gst/tmpl/gst-i18n-app.sgml:
11846         * docs/gst/tmpl/gst-i18n-lib.sgml:
11847         * docs/gst/tmpl/gst.sgml:
11848         * docs/gst/tmpl/gst_private.sgml:
11849         * docs/gst/tmpl/gstaggregator.sgml:
11850         * docs/gst/tmpl/gstarch.sgml:
11851         * docs/gst/tmpl/gstatomic.sgml:
11852         * docs/gst/tmpl/gstatomic_impl.sgml:
11853         * docs/gst/tmpl/gstbin.sgml:
11854         * docs/gst/tmpl/gstbuffer.sgml:
11855         * docs/gst/tmpl/gstbufferstore.sgml:
11856         * docs/gst/tmpl/gstcaps.sgml:
11857         * docs/gst/tmpl/gstclock.sgml:
11858         * docs/gst/tmpl/gstcompat.sgml:
11859         * docs/gst/tmpl/gstconfig.sgml:
11860         * docs/gst/tmpl/gstcpu.sgml:
11861         * docs/gst/tmpl/gstdata.sgml:
11862         * docs/gst/tmpl/gstdata_private.sgml:
11863         * docs/gst/tmpl/gstelement.sgml:
11864         * docs/gst/tmpl/gstenumtypes.sgml:
11865         * docs/gst/tmpl/gsterror.sgml:
11866         * docs/gst/tmpl/gstevent.sgml:
11867         * docs/gst/tmpl/gstfakesink.sgml:
11868         * docs/gst/tmpl/gstfakesrc.sgml:
11869         * docs/gst/tmpl/gstfilesink.sgml:
11870         * docs/gst/tmpl/gstfilter.sgml:
11871         * docs/gst/tmpl/gstindex.sgml:
11872         * docs/gst/tmpl/gstinfo.sgml:
11873         * docs/gst/tmpl/gstinterface.sgml:
11874         * docs/gst/tmpl/gstlog.sgml:
11875         * docs/gst/tmpl/gstmacros.sgml:
11876         * docs/gst/tmpl/gstmarshal.sgml:
11877         * docs/gst/tmpl/gstmd5sink.sgml:
11878         * docs/gst/tmpl/gstmultifilesrc.sgml:
11879         * docs/gst/tmpl/gstobject.sgml:
11880         * docs/gst/tmpl/gstpad.sgml:
11881         * docs/gst/tmpl/gstparse.sgml:
11882         * docs/gst/tmpl/gstpipeline.sgml:
11883         * docs/gst/tmpl/gstplugin.sgml:
11884         * docs/gst/tmpl/gstpluginfeature.sgml:
11885         * docs/gst/tmpl/gstqueue.sgml:
11886         * docs/gst/tmpl/gstreamer-unused.sgml:
11887         * docs/gst/tmpl/gstregistry.sgml:
11888         * docs/gst/tmpl/gstregistrypool.sgml:
11889         * docs/gst/tmpl/gstscheduler.sgml:
11890         * docs/gst/tmpl/gstsearchfuncs.sgml:
11891         * docs/gst/tmpl/gstshaper.sgml:
11892         * docs/gst/tmpl/gstspider.sgml:
11893         * docs/gst/tmpl/gstspideridentity.sgml:
11894         * docs/gst/tmpl/gststructure.sgml:
11895         * docs/gst/tmpl/gstsystemclock.sgml:
11896         * docs/gst/tmpl/gsttag.sgml:
11897         * docs/gst/tmpl/gsttaginterface.sgml:
11898         * docs/gst/tmpl/gsttee.sgml:
11899         * docs/gst/tmpl/gstthread.sgml:
11900         * docs/gst/tmpl/gsttrace.sgml:
11901         * docs/gst/tmpl/gsttrashstack.sgml:
11902         * docs/gst/tmpl/gsttypefind.sgml:
11903         * docs/gst/tmpl/gsttypes.sgml:
11904         * docs/gst/tmpl/gsturi.sgml:
11905         * docs/gst/tmpl/gsturitype.sgml:
11906         * docs/gst/tmpl/gstutils.sgml:
11907         * docs/gst/tmpl/gstvalue.sgml:
11908         * docs/gst/tmpl/gstversion.sgml:
11909         * docs/gst/tmpl/gstxml.sgml:
11910         * docs/gst/tmpl/gstxmlregistry.sgml:
11911         * docs/gst/tmpl/gthread-cothreads.sgml:
11912         * docs/gst/tmpl/types.sgml:
11913
11914 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11915
11916         * docs/pwg/other-sink.xml:
11917         * docs/pwg/other-source.xml:
11918           Documentation on how to write source and sink elements. Other
11919           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
11920           manager, autoplugger) are all still pending.
11921
11922 2004-03-25  Benjamin Otte  <otte@gnome.org>
11923
11924         * testsuite/elements/Makefile.am:
11925         * testsuite/elements/gst-compprep-check:
11926           add check to make sure gst-compprep works
11927         * testsuite/elements/gst-inspect-check.in:
11928           improve initialization output
11929         * testsuite/Makefile.am:
11930         * testsuite/gst-inspect-check:
11931           remove old file
11932
11933 2004-03-24  David Schleef  <ds@schleef.org>
11934
11935         * testsuite/elements/Makefile.am:
11936         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
11937         to the testsuite.
11938
11939 2004-03-24  Benjamin Otte  <otte@gnome.org>
11940
11941         * libs/gst/control/dparam.c: (gst_dparam_attach),
11942         (gst_dparam_detach):
11943         * libs/gst/control/dparammanager.c: (gst_dpman_init):
11944           fix lvalue casts for real
11945
11946 2004-03-24  Benjamin Otte  <otte@gnome.org>
11947
11948         * gst/schedulers/gstbasicscheduler.c:
11949         (gst_basic_scheduler_src_wrapper):
11950         * gst/schedulers/gstoptimalscheduler.c:
11951         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
11952         (pad_clear_queued), (gst_opt_scheduler_add_element),
11953         (gst_opt_scheduler_remove_element):
11954           fix GStreamer to not have issues with lvalue casts anymore (fixes
11955           #136841)
11956
11957 2004-03-24  Benjamin Otte  <otte@gnome.org>
11958
11959         * gst/gstelement.c:
11960           add documentation about a gobject quirk where the object hasn't the
11961           correct class pointer set on initialization
11962         * gst/schedulers/gstbasicscheduler.c:
11963         (gst_basic_scheduler_src_wrapper):
11964           make sure to not run into an infinite loop
11965
11966 2004-03-22  Benjamin Otte  <otte@gnome.org>
11967
11968         * gst/gstutils.c: (gst_util_dump_mem):
11969         * gst/gstutils.h:
11970           first argument of gst_util_dump_mem should be const
11971
11972 2004-03-22  Johan Dahlin  <johan@gnome.org>
11973
11974         * gst/gstvalue.h: Clean up a little bit.
11975
11976 2004-03-21  Tim-Philipp M??ller <t.i.m@zen.co.uk>
11977
11978         reviewed by Benjamin Otte  <otte@gnome.org>
11979
11980         * gst/autoplug/gstspider.c: (gst_spider_dispose):
11981         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
11982         (gst_aggregator_class_init), (gst_aggregator_init):
11983         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11984         (gst_filesrc_dispose), (gst_filesrc_set_location):
11985         * gst/elements/gstidentity.c: (gst_identity_finalize),
11986         (gst_identity_class_init), (gst_identity_chain):
11987         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11988         * gst/elements/gststatistics.c: (gst_statistics_finalize),
11989         (gst_statistics_class_init):
11990         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
11991         (gst_tee_get_property):
11992           clean up used memory in this elements correctly on teardown (closes
11993           #137279)
11994
11995 2004-03-20  Colin Walters  <walters@redhat.com>
11996
11997         * gst/registries/gstxmlregistry.c:
11998         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
11999         registry saving atomic.
12000
12001 2004-03-20  Colin Walters  <walters@redhat.com>
12002
12003         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
12004         Just use
12005         access() instead of actually creating and deleting files.
12006
12007 2004-03-18  David Schleef  <ds@schleef.org>
12008
12009         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
12010         (bug #137625)
12011
12012 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12013
12014         * po/sv.po: updated translation (Christian Rose)
12015
12016 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12017
12018         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12019         (gst_filesink_get_query_types), (_do_init),
12020         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
12021           return FALSE silently
12022         * po/af.po: updated translation (Petri Jooste)
12023
12024 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12025
12026         * Makefile.am:
12027         * configure.ac:
12028           dist common properly
12029         * po/af.po:
12030         * po/fr.po:
12031         * po/nl.po:
12032         * po/sr.po:
12033         * po/sv.po:
12034           refreshing translations
12035
12036 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12037
12038         * po/LINGUAS:
12039         * po/sv.po:
12040         * po/af.po:
12041           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
12042
12043 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12044
12045         * Makefile.am: use common/release.mak
12046
12047 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12048
12049         * docs/faq/gst-uninstalled:
12050           adding gst-monkeysaudio to the list of possible plugin dirs
12051
12052 2004-03-16  David Schleef  <ds@schleef.org>
12053
12054         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
12055         (gst_init_check_with_popt_table):  Fix some gettext strings to
12056         make them easier to translate.  Required making the strings
12057         non-const.
12058
12059 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12060
12061         * configure.ac: bump nano to 1
12062
12063 === release 0.8.0 ===
12064
12065 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12066
12067         * configure.ac: release 0.8.0, "Executive Slacks"
12068
12069 2004-03-16  Johan Dahlin  <johan@gnome.org>
12070
12071         * gst/schedulers/gstoptimalscheduler.c
12072         (gst_opt_scheduler_pad_unlink): Remove double ;,
12073         spotted by Scott Wheeler
12074
12075 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12076
12077         * configure.ac: bump libtool version
12078
12079 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
12080
12081         * gst/gstcaps.h:
12082         * gst/gststructure.h:
12083           add reserved padding
12084
12085 2004-03-15  Benjamin Otte  <otte@gnome.org>
12086
12087         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
12088           set the first parameter for select call correctly.
12089           (fixes #137230)
12090
12091 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
12092
12093         * *.c,*.h: don't mix tabs and spaces
12094
12095 2004-03-15  Johan Dahlin  <johan@gnome.org>
12096
12097         * gst/schedulers/gstoptimalscheduler.c
12098         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
12099         crash on MPEG playback. My boolean arithmetic is a bit rusty.
12100
12101         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
12102         
12103 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
12104
12105         * testsuite/Rules:
12106           fix gst-register rules
12107
12108 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
12109
12110         * testsuite/Rules:
12111           use versioned gst-register
12112
12113 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
12114
12115         * docs/libs/gstreamer-libs-sections.txt:
12116           remove </SUBSECTION>
12117         * gst/gstplugin.c:
12118         * gst/gstregistry.c: (gst_registry_add_plugin):
12119         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
12120         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
12121           add debugging and fix some comment blocks
12122
12123 2004-03-15  Johan Dahlin  <johan@gnome.org>
12124
12125         * *.h: Revert indent changes.
12126         
12127 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
12128
12129         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
12130           g_error_free the g_error
12131         * tools/gst-feedback-m.m:
12132           check for other versions of gstreamer
12133         * tools/gst-indent:
12134           use sh, not bash
12135
12136 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
12137
12138         * tools/gst-register.c: do not spill paths when registries are not
12139           writable, until we fix the "user running gst-register" case.
12140
12141 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12142
12143         * *.c, *.h: commit of gst-indent run on core
12144
12145 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12146
12147         * tools/gst-indent:
12148         * tools/Makefile.am:
12149           add our indentation style as a script
12150
12151 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12152
12153         * po/sr.po:
12154         * po/LINGUAS:
12155           added Serbian translation
12156
12157 2004-03-13  Benjamin Otte  <otte@gnome.org>
12158
12159         * gst/gstelement.c:
12160           add documentation note about gst_element_found_tags_for_pad not
12161           being usable in getfunctions. (see #137042)
12162
12163 2004-03-12  David Schleef  <ds@schleef.org>
12164
12165         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
12166         change API right now!  Readd gst_caps_is_simple() macro.
12167         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
12168         uninitialized variable.  I'd bet this caused crashes.
12169         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
12170
12171 2004-03-12  Johan Dahlin  <johan@gnome.org>
12172
12173         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
12174         * gst/gstcaps.h: Clean up
12175
12176         * gst/gst.c (init_post): call gst_caps_get_type() instead of
12177         _gst_caps_initalize()
12178
12179         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
12180         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
12181
12182         * gst/gststructure.c (gst_structure_get_type): Ditto
12183
12184         * gst/gststructure.h: Ditto
12185         
12186 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12187
12188         * gst/gstqueue.c: (gst_queue_init):
12189           Reset default max. values in queues. Reason is simply to avoid
12190           braindead use. If you want wider values, use the properties. The
12191           default is supposed to always work. Wider values would make this
12192           beast a memory hog by default (250 full-PAL RGB32 video frames?
12193           That's 440 MB! No thank you).
12194
12195 2004-03-10  David Schleef  <ds@schleef.org>
12196
12197         * tools/gst-run.c: (main):  Fix crash when no relevant tools
12198         were found.  (bug #136793)
12199
12200 2004-03-10  Johan Dahlin  <johan@gnome.org>
12201
12202         * gst/schedulers/gstoptimalscheduler.c
12203         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
12204         links to elements within the same group, so we can finally remove
12205         that annoying warning. Refactor the code a little bit
12206         (group_dec_links_for_element): Split out
12207
12208 2004-03-09  David Schleef  <ds@schleef.org>
12209
12210         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
12211         (bug #134863)
12212
12213 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
12214
12215         * configure.ac: first bug fix due to major/minor bump
12216
12217 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
12218
12219         * configure.ac: bump nano to 1
12220
12221 === release 0.7.6 ===
12222
12223 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
12224
12225         * NEWS:
12226         * RELEASE:
12227         * configure.ac:
12228           releasing 0.7.6, "Almost"
12229         * po/fr.po:
12230         * po/nl.po:
12231         * tools/Makefile.am:
12232         * tools/gst-feedback-m.m:
12233           unversioned source
12234
12235 2004-03-09  Johan Dahlin  <johan@gnome.org>
12236
12237         Reviewed by: Thomas Vander Stichele
12238
12239         * gst/gstelement.c (gst_element_class_init): register second
12240         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
12241         language bindings can (de)marshall correctly.
12242
12243         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
12244
12245         * gst/gsterror.c (gst_g_error_get_type): New function
12246
12247         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
12248         with VOID:OBJECT,OBJECT,STRING 
12249
12250 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
12251
12252         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
12253         Free a leaked g_timer on early returns.
12254
12255 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12256
12257         * docs/pwg/advanced-types.xml:
12258           Add cinepak description.
12259
12260 2004-03-07  David Schleef  <ds@schleef.org>
12261
12262         * docs/random/mimetypes:  Added cinepak description
12263
12264 2004-03-07  Andy Wingo  <wingo@pobox.com>
12265
12266         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
12267
12268         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
12269         there are no links to other groups when a group is destroyed.
12270         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
12271         removed from a group, make sure the link count to elements linked
12272         to other pads is appropriately decremented. This really fixes
12273         #135672.
12274
12275         The 1.60->1.61 patch has been reapplied in light of this fix.
12276
12277         * gst/gstelement.c (gst_element_dispose): Really protect against
12278         multiple invocations this time.
12279
12280 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12281
12282         * docs/gst/gstreamer-sections.txt:
12283         * docs/gst/tmpl/gsttag.sgml:
12284           remove some deprecated functions, document some existing ones
12285         * gst/gsttag.c: (gst_tag_get_flag):
12286         * gst/gsttag.h:
12287           add accessor function
12288
12289 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12290
12291         * docs/gst/gstreamer-sections.txt:
12292         * docs/gst/tmpl/gsttag.sgml:
12293         * docs/gst/tmpl/gstxml.sgml:
12294         * gst/gsttag.c: (gst_tag_get_flag):
12295         * gst/gsttag.h:
12296
12297 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
12298
12299         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
12300         leak
12301
12302 2004-03-05  David Schleef  <ds@schleef.org>
12303
12304         * REQUIREMENTS: Add bison and flex.
12305         * configure.ac: Fix comment about bison.
12306         * docs/random/ds/0.9-suggested-changes: yer ma
12307         * tools/gst-inspect.c: (print_element_info):  Fix warning.
12308
12309 2004-03-05  Benjamin Otte  <otte@gnome.org>
12310
12311         * gst/gstelement.c: (gst_element_error_full):
12312           revert recent recursive state changing commit - messing with other
12313           elements' states is evil and should be done by apps only.
12314
12315 2004-03-05  Benjamin Otte  <otte@gnome.org>
12316
12317         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
12318           check for empty intersection instead of NULL caps
12319         (gst_element_get_compatible_pad_filtered):
12320           remove old workaround that is only a bug nowadays
12321
12322 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12323
12324         * gst/gstelement.c: (gst_element_error_full):
12325           make elements try to recursively change state to PAUSED on all
12326           parents after an error to suppress ensuing warnings
12327         * gst/parse/grammar.y:
12328           make it check if it was able to sync the state, and throw an error
12329           if not, so stuff like
12330           oggdemux ! vorbisdec ! osssink gets caught
12331
12332 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12333
12334         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
12335           it contains lib64; use AS_AC_EXPAND to handle it properly
12336
12337 2004-03-05  David Schleef  <ds@schleef.org>
12338
12339         * gst/gstcpuid_i386.s:  Remove unused code
12340         * libs/gst/getbits/getbits.c: (gst_getbits_init),
12341         (gst_getbits_newbuf): Remove MMX code
12342         * libs/gst/getbits/getbits.h: Remove MMX code
12343
12344 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
12345
12346         * debian/.cvsignore:
12347         * debian/README.Debian:
12348         * debian/changelog:
12349         * debian/control:
12350         * debian/control.in:
12351         * debian/copyright:
12352         * debian/gstreamer-core-libs-dev.files:
12353         * debian/gstreamer-core-libs.files:
12354         * debian/gstreamer-core.files:
12355         * debian/gstreamer-core.postinst:
12356         * debian/gstreamer-core.postrm:
12357         * debian/gstreamer-doc.files:
12358         * debian/gstreamer-doc.links:
12359         * debian/gstreamer-doc.lintian:
12360         * debian/gstreamer-runtime.files:
12361         * debian/gstreamer-runtime.manpages:
12362         * debian/gstreamer-runtime.postinst:
12363         * debian/gstreamer-runtime.postrm:
12364         * debian/gstreamer-tools.files:
12365         * debian/gstreamer-tools.manpages:
12366         * debian/libgstreamer-dev.files:
12367         * debian/libgstreamer0.4.1.files:
12368         * debian/libgstreamerVERSION.files:
12369         * debian/rules:
12370         Debian package info not maintained here.
12371
12372 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12373
12374         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
12375         * gst/gstbin.c: (gst_bin_class_init):
12376         * gst/gstelement.c: (gst_element_class_init):
12377         * gst/gstindex.c: (gst_index_class_init):
12378         * gst/gstobject.c: (gst_object_class_init),
12379         (gst_signal_object_class_init):
12380         * gst/gstpad.c: (gst_pad_template_class_init):
12381         * gst/gstregistry.c: (gst_registry_class_init):
12382         * gst/gsturi.c: (gst_uri_handler_base_init):
12383         * gst/gstxml.c: (gst_xml_class_init):
12384         * libs/gst/control/dparam.c: (gst_dparam_class_init):
12385         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
12386           make all signal names use dashes instead of underscore
12387
12388 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12389
12390         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
12391
12392 2004-03-03  Benjamin Otte  <otte@gnome.org>
12393
12394         * gst/schedulers/gstoptimalscheduler.c:
12395           revert last commit by Andy Wingo. It causes segfaults on unreffing
12396           in Rhythmbox. (see bug #135672)
12397
12398 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
12399
12400         * po/fr.po: fix typo
12401
12402 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
12403
12404         * tools/gst-inspect.c: (main): 
12405         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
12406
12407 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12408
12409         * configure.ac:
12410           get GLIB_ONLY and POPT flags for the nonversioned binaries
12411         * tools/Makefile.am:
12412           use them
12413
12414 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12415
12416         * gst/gst.c: (init_post):
12417           change so that GST_REGISTRY now is where the global registry gets
12418           saved, since that is where plugins now get attached to first, and
12419           spilled over to the user registry.  Note that in the case of using
12420           GST_REGISTRY env var, we don't want to affect any real registries
12421           beyond the one given by this var, and thus we don't set a user
12422           registry to spill to.  So make sure GST_REGISTRY is writable.
12423
12424 2004-03-01  David Schleef  <ds@schleef.org>
12425
12426         * AUTHORS:  Added some names.  Add yourself if you're missing.
12427
12428 2004-03-01  David Schleef  <ds@schleef.org>
12429
12430         * MAINTAINERS: Add
12431
12432 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
12433
12434         * configure.ac:
12435           remove whitespace
12436         * docs/gst/tmpl/gstbuffer.sgml:
12437         * docs/gst/tmpl/gstdata.sgml:
12438         * docs/gst/tmpl/gstreamer-unused.sgml:
12439         * docs/gst/tmpl/gstxml.sgml:
12440           doc update
12441         * docs/manuals.mak:
12442           add a FIXME
12443         * docs/pwg/intro-preface.xml:
12444         * docs/pwg/pwg.xml:
12445           remove GNOME
12446         * gst/gst.c: (init_post):
12447           try GST_PLUGIN_PATH paths for the _global_registry first
12448         * gst/gstelement.h:
12449           add the error message as well, otherwise (null) debug info doesn't
12450           make much sense
12451         * tools/gst-register.c: (main):
12452           spill paths to next registry if this registry is not writable
12453         * po/fr.po:
12454         * po/nl.po:
12455           translation updates
12456
12457 2004-03-01  Johan Dahlin  <johan@gnome.org>
12458
12459         * gst/gstbuffer.c (_gst_buffer_initialize): 
12460         * gst/gstdata.c (gst_data_get_type): 
12461         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
12462         instead of ref, since some applications that uses GBoxed
12463         routines depends on a function that actually returns a copy.
12464
12465 2004-02-27  Benjamin Otte  <otte@gnome.org>
12466
12467         * gst/gstbuffer.h:
12468           remove gst_buffer_free, use gst_data_unref
12469         * gst/gstdata.c: (gst_data_get_type):
12470           use refcounting in GstData GBoxed registration
12471         * gst/gstdata.h:
12472           remove gst_data_free, use gst_data_unref
12473
12474 2004-02-27  Johan Dahlin  <johan@gnome.org>
12475
12476         * gst/gstdata.c (gst_data_get_type): New function, register
12477         GstData as a GBoxed type.
12478
12479         * gst/gstdata.h (GST_TYPE_DATA): New macro
12480
12481 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
12482
12483         * Makefile.am:
12484         * gstreamer.spec.in:
12485           put back RELEASE
12486         * gst/Makefile.am:
12487           clean up non-disting of built files
12488         * testsuite/debug/commandline.c:
12489           test fix for option rename
12490
12491 2004-02-26  David Schleef  <ds@schleef.org>
12492
12493         * configure.ac:  We don't really need glib-2.3.  Also remove
12494         some unneeded checks for library functions.
12495         * gst/Makefile.am:  Instead, we need to not dist files created
12496         by glib-genmarshal.
12497
12498 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12499
12500         * configure.ac:
12501           bump glib required version to 2.3.0 for g_value_takes_boxed
12502
12503  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
12504
12505         * common/m4/gst-docs.m4
12506         change flavour text from enable to disable as enable is our default
12507         closes bug Bug 135304
12508
12509 === release 0.7.5 ===
12510  
12511  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12512  
12513         * NEWS:
12514           instate NEWS file
12515         * Makefile.am:
12516         * gstreamer.spec.in:
12517         * RELEASE:
12518           put back release
12519         * configure.ac:
12520         * docs/random/release:
12521           more updates
12522
12523 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12524
12525         * gst/gsttag.c: (_gst_tag_initialize):
12526         * po/fr.po:
12527         * po/nl.po:
12528           remove hyphen from codec tags
12529
12530 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12531
12532         * gst/parse/Makefile.am:
12533           fix dependency so that a make from a clean build works the first
12534           time
12535
12536 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12537
12538         * docs/random/release:
12539           update release strategy
12540         * po/fr.po:
12541           auto-update po file
12542         * po/nl.po:
12543           update dutch translation
12544
12545 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
12546
12547         * docs/manual/debugging.xml:
12548         fix manual for new debugging system
12549
12550 2004-02-25  Andy Wingo  <wingo@pobox.com>
12551
12552         * gst/gstpad.c (gst_pad_link_prepare): Re-add
12553         gst_pad_link_prepare. Please email the list with specific reasons
12554         for reverting.
12555
12556 2004-02-24  Andy Wingo  <wingo@pobox.com>
12557
12558         * gst/gstelement.c (gst_element_dispose): Protect against multiple
12559         invocations.
12560
12561         * gst/schedulers/gstoptimalscheduler.c:
12562         I added a mess of prototypes at the top of the file by way of
12563         documentation. Some of the operations on chains and groups were
12564         re-organized.
12565
12566         (create_group): Added a type argument so if the group is enabled,
12567         the setup_group_scheduler knows what to do.
12568         (group_elements): Added a type argument here, too, to be passed on
12569         to create_group.
12570         (group_element_set_enabled): If an unlinked PLAYING element is
12571         added to a bin, we have to create a new group to hold the element,
12572         and this function will be called before the group is added to the
12573         chain. Thus we have a valid case for group->chain==NULL. Instead
12574         of calling chain_group_set_enabled, just set the flag on the group
12575         (the chain's status will be set when the group is added to it).
12576         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
12577         Setup the group scheduler when the group is enabled, not
12578         specifically when an element goes PAUSED->PLAYING. This means
12579         PLAYING elements can be added, linked, and scheduled into a
12580         PLAYING pipeline, as was intended.
12581         (add_to_group): Don't ref the group twice. I don't know when this
12582         double-ref got in here. Removing it has the potential to cause
12583         segfaults if other parts of the scheduler are buggy. If you find
12584         that the scheduler is segfaulting for you, put in an extra ref
12585         here and see if that hacks over the underlying issue. Of course,
12586         then find out what code is unreffing a group it doesn't own...
12587         (create_group): Make the extra refcount floating, and remove it
12588         after adding the element. This means that...
12589         (unref_group): Destroy when the refcount reaches 0, not 1, like
12590         every other refcounted object in the known universe.
12591         (remove_from_group): When a group becomes empty, set it to be not
12592         active, and remove it from its chain. Don't unref it again,
12593         there's no floating reference any more.
12594         (destroy_group): We have to remove the group from the chain in
12595         remove_from_group (rather than here) to break refcounting cycles
12596         (the chain always has a ref on the group). So assert that
12597         group->chain==NULL.
12598         (ref_group_by_count): Removed, it was commented out anyway.
12599         (merge_chains): Use the remove_from_chain and add_to_chain
12600         primitives to do the reparenting, instead of rolling our own
12601         implementation.
12602         (add_to_chain): The first non-disabled group in the chain's group
12603         list will be the entry point for the chain. Because buffers can
12604         accumulate in loop elements' peer bufpens, we preferentially
12605         schedule loop groups before get groups to avoid unnecessary
12606         execution of get-based groups when the bufpens are already full.
12607         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
12608         (get_group_schedule_function): Ditto.
12609         (loop_group_schedule_function): Ditto.
12610         (gst_opt_scheduler_loop_wrapper): Ditto.
12611         (gst_opt_scheduler_iterate): Ditto.
12612
12613         I understand the opt scheduler now, yippee!
12614
12615         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
12616         (gst_pad_get_name, gst_pad_set_chain_function) 
12617         (gst_pad_set_get_function, gst_pad_set_event_function) 
12618         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
12619         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
12620         (gst_pad_set_query_function, gst_pad_get_query_types) 
12621         (gst_pad_get_query_types_default) 
12622         (gst_pad_set_internal_link_function) 
12623         (gst_pad_set_formats_function, gst_pad_set_link_function) 
12624         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
12625         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
12626         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
12627         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
12628         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
12629         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
12630         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
12631         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
12632         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
12633         (gst_pad_event_default_dispatch, gst_pad_event_default) 
12634         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
12635         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
12636         (gst_pad_get_formats_default, gst_pad_get_formats): Better
12637         argument checks, and some doc fixes.
12638
12639         (gst_pad_custom_new_from_template): Um, does anyone
12640         use these functions? Actually make a custom pad instead of a
12641         normal one.
12642         (gst_pad_try_set_caps): Transpose some checks.
12643         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
12644         the pad is in negotiation.
12645         (gst_pad_try_relink_filtered): Use pad_link_prepare.
12646         
12647         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
12648
12649         * gst/gstelement.h: 
12650         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
12651         on the list.
12652
12653 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12654
12655         * gst/gstbin.c: (gst_bin_add):
12656           add error for not being able to add elements
12657
12658 2004-02-22  Julien MOUTTE <julien@moutte.net>
12659
12660         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
12661         audio-codec and video-codec.
12662
12663 2004-02-22  Benjamin Otte  <otte@gnome.org>
12664
12665         reported by: Padraig O'Briain <padraig.obriain@sun.com>
12666
12667         * autogen.sh:
12668           replace test -e with test -x for mkinstalldirs to be more portable.
12669           (fixes #134816)
12670
12671 2004-02-22  Benjamin Otte  <otte@gnome.org>
12672
12673         * gst/gstpad.c:
12674           revert last patch from Andy, it makes gst_pad_can_link_filtered much
12675           too noisy
12676         * gst/gsttag.c: (_gst_tag_initialize):
12677         * gst/gsttag.h:
12678           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
12679         * libs/gst/control/dparam.c: (gst_dparam_attach):
12680         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
12681           check that types for attached dparams match
12682
12683 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12684
12685         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12686         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12687         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
12688           fix errors
12689
12690 2004-02-20  Andy Wingo  <wingo@pobox.com>
12691
12692         * gst/gstbin.c:
12693         * gst/gstbuffer.c:
12694         * gst/gstplugin.c:
12695         * gst/registries/gstxmlregistry.c: 
12696         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
12697
12698         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
12699         (gst_element_add_pad): DEBUG->INFO, some fixes.
12700         (gst_element_get_compatible_pad_template): Just see if the
12701         templates' caps intersect, not if one is a strict subset of the
12702         other. This conforms more to what gst_pad_link_intersect() does.
12703         (gst_element_class_add_pad_template): Don't memcpy the pad
12704         template, just ref it.
12705         (gst_element_get_compatible_pad_filtered): Clean up debug messages
12706
12707         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
12708         (gst_pad_link_filtered): Debug changes.
12709         (gst_pad_link_prepare): New function, consolidated from
12710         can_link_filtered and link_filtered.
12711
12712         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
12713         look more like that of the functions in gstelement.c
12714
12715         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
12716         object, and return the empty string if object is NULL.
12717
12718         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
12719         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
12720         LOG, not DEBUG. We still get flex info on debug.
12721
12722         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
12723         debug string more verbose.
12724         (plugin_times_older_than): DEBUG->LOG.
12725
12726 2004-02-20  Julien MOUTTE <julien@moutte.net>
12727
12728         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
12729         will emit found_tag for each stream they demux with the codec.
12730
12731 2004-02-20  Benjamin Otte  <otte@gnome.org>
12732
12733         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
12734           copy navigation event correctly. Check freeing tag lists. 
12735         * gst/gstthread.c: (gst_thread_change_state):
12736           don't abort() on state changing mess - it might happen because of
12737           bugs.
12738         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
12739           use boxed functions
12740         * gst/gstvalue.h:
12741           fix GST_VALUE_HOLDS_CAPS
12742
12743 2004-02-19  David Schleef  <ds@schleef.org>
12744
12745         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
12746         and use it for GST_FUNCTION.  (bug #134750)
12747
12748 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12749
12750         * po/fr.po:
12751         * po/nl.po:
12752           updating translations
12753
12754 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12755
12756         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
12757
12758 2004-02-18  kost@imn.htwk-leipzig.de
12759
12760         reviewed by: David Schleef  <ds@schleef.org>
12761
12762         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
12763         for libgstcontrol.
12764
12765 2004-02-18  David Schleef  <ds@schleef.org>
12766
12767         * libs/gst/control/dparam.c: (gst_dparam_class_init):
12768         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
12769         (gst_dpsmooth_new): Additional fixes to get double dparams working.
12770         * tools/gst-inspect.c: (print_element_info): Support dumping of
12771         double dparam information.
12772
12773 2004-02-17  David Schleef  <ds@schleef.org>
12774
12775         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
12776         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
12777         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
12778         Use GST_TYPE_CAPS in signal prototype.
12779         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
12780         Convert GST_TYPE_CAPS to boxed.
12781         * gst/gstelement.c: (gst_element_class_init):
12782         Use GST_TYPE_TAG_LIST in signal prototype.
12783         * gst/gstindex.c: (gst_index_class_init):
12784         * gst/gstindex.h:
12785         Add GST_TYPE_INDEX_ENTRY type.
12786         * gst/gstmarshal.list:
12787         Add necessary marshal types.
12788         * gst/gstpad.c: (gst_real_pad_class_init),
12789         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12790         (gst_pad_recover_caps_error):
12791         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
12792         * gst/gststructure.c: (_gst_structure_initialize),
12793         (gst_structure_copy), (_gst_structure_copy_conditional):
12794         * gst/gststructure.h:
12795         Convert GST_TYPE_STRUCTURE to boxed.
12796         * gst/gsttag.c: (gst_tag_list_get_type):
12797         * gst/gsttag.h:
12798         Add GST_TYPE_TAG_LIST type.
12799
12800 2004-02-17  Julien MOUTTE  <julien@moutte.net>
12801
12802         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
12803         to what we agreed with david.
12804         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
12805
12806 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12807
12808         * po/nl.po: update translation
12809
12810 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12811
12812         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
12813           throw an error if spider is trying to play a mime type there is
12814           no decoder for
12815         * po/POTFILES.in:
12816           add gst/autoplug/gstspider.c for translation
12817
12818 2004-02-17  Julien MOUTTE  <julien@moutte.net>
12819
12820         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
12821         silently when the pad is negotiating.
12822
12823 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12824
12825         * docs/faq/Makefile.am:
12826           add script to run gstreamer uninstalled 
12827         * docs/faq/faq.xml:
12828         * docs/faq/developing.xml:
12829         * docs/faq/gst-uninstalled:
12830           extract script to run gstreamer uninstalled
12831         * docs/manuals.mak:
12832           add EXTRA_SOURCES variable for Makefile.am's to set to
12833           use additional SOURCE files for the doc build
12834
12835 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12836
12837         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
12838
12839 2004-02-15  Julien MOUTTE  <julien@moutte.net>
12840
12841         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
12842         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
12843         an error was thrown by osssink. Basically a state change failure for
12844         an element in a different scheduling group was considered as
12845         successful, which means that caps nego was going on and weird stuff
12846         happened. Like I wrote in the comment there, if someone wants to
12847         revert that please drop me a mail explaining why because I really see
12848         no point in keeping that broken behaviour there.
12849         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
12850         be empty, we then return NULL which will trigger a nice error when 
12851         pulling from the pad.
12852
12853 2004-02-13  David Schleef  <ds@schleef.org>
12854
12855         * libs/gst/control/dparam.c: (gst_dparam_class_init),
12856         (gst_dparam_get_property), (gst_dparam_set_property),
12857         (gst_dparam_do_update_default):
12858         * libs/gst/control/dparam.h:
12859         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
12860         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
12861         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
12862         (gst_dpsmooth_do_update_double):
12863         * libs/gst/control/dparam_smooth.h:
12864         * libs/gst/control/dparammanager.c:
12865         (gst_dpman_inline_direct_update):
12866         Add support for double dparams.
12867
12868 2004-02-13  David Schleef  <ds@schleef.org>
12869
12870         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
12871         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
12872
12873 2004-02-13  Mattias Wadman  <mattias@sudac.org>
12874
12875         reviewed by: David Schleef  <ds@schleef.org>
12876
12877         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
12878         (gst_fdsrc_init), (gst_fdsrc_set_property),
12879         (gst_fdsrc_get_property), (gst_fdsrc_get):
12880         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
12881         and sends an EOS event if file descriptor reading times out.
12882
12883 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12884
12885         * configure.ac:
12886           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
12887
12888 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12889
12890         * configure.ac: pass required libxml version as argument
12891         (bug reported by Christophe Fergeau)
12892
12893 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12894   
12895         * docs/gst/gstreamer-docs.sgml:
12896         * docs/gst/tmpl/gstxml.sgml:
12897         * docs/libs/gstreamer-libs-docs.sgml:
12898           version API docs
12899
12900 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12901
12902         * gst/gstinfo.c:
12903         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
12904         (gst_registry_pool_feature_filter):
12905         * gst/gstthread.c: (gst_thread_class_init):
12906         * gst/gstvalue.c:
12907           add includes exposed by building without libxml
12908         * gst/indexers/Makefile.am:
12909           do not build fileindex when LOADSAVE disabled; we should have
12910           a better libxml check later since fileindex depends on xml, not
12911           LOADSAVE or REGISTRY
12912         * libs/gst/control/Makefile.am:
12913           link with m
12914         * tools/Makefile.am:
12915           fix wrong source code for gst-xmlinspect
12916
12917 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12918
12919         * configure.ac:
12920           fix gcov help output
12921           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
12922         * docs/random/release:
12923           some updated releasing notes
12924         * gstreamer.spec.in:
12925           more updates
12926
12927 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12928
12929         * docs/faq/faq.xml:
12930         * docs/manual/manual.xml:
12931         * docs/pwg/pwg.xml:
12932         * docs/pwg/titlepage.xml:
12933           put version in documentation
12934
12935 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12936
12937         * tools/Makefile.am: fix man page installation
12938
12939 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12940
12941         * configure.ac:
12942           don't check for libxml when load/save and registry disabled (#105844)
12943         * gstreamer.spec.in:
12944           sync with fedora candidate spec
12945
12946 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12947
12948         * po/fr.po:
12949         * po/nl.po:
12950           replace multidisksrc with multifilesrc
12951
12952 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12953
12954         * po/POTFILES.in:
12955           update to multidisksrc => multifilesrc file renaming (#134145)
12956
12957 2004-02-11  David Schleef  <ds@schleef.org>
12958
12959         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
12960         * docs/gst/tmpl/gstpadtemplate.sgml: same
12961         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
12962         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
12963         fixing dance.
12964         * gst/gstutils.c: Remove disabled code that uses GstProps.
12965         * gst/registries/gstxmlregistry.h: same
12966         * docs/random/ds/0.9-suggested-changes: random notes
12967
12968 2004-02-11  kost@imn.htwk-leipzig.de
12969
12970         reviewed by: David Schleef  <ds@schleef.org>
12971
12972         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
12973         initialisation of clock (bug #134128)
12974
12975 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12976
12977         * configure.ac:
12978         * gst/elements/Makefile.am:
12979         * gst/elements/gstelements.c:
12980         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
12981         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
12982         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
12983         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
12984         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
12985         * gst/elements/gstmultifilesrc.h:
12986           rename multidisksrc to multifilesrc (part of #122200)
12987
12988 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12989
12990         * docs/manuals.mak:
12991           fix automake complaints
12992         * gst-element-check.m4:
12993           fix unquotedness
12994
12995 2004-02-11  David Schleef  <ds@schleef.org>
12996
12997         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
12998         * gst/gstatomic_impl.h: Disable sparc implementation.
12999
13000 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
13001
13002         * gst-element-check.m4:
13003           fix underquoted macros as reported by automake 1.8.x (#133800)
13004         * configure.ac:
13005           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
13006           by autopoint (fixes #132996)
13007
13008 2004-02-10  Andy Wingo  <wingo@pobox.com>
13009
13010         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
13011         way to do inheritance.
13012         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
13013         (gst_pad_get_query_types, gst_pad_get_query_types_default):
13014         Routine docs.
13015         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
13016         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
13017         doc.
13018         (gst_pad_unlink, gst_pad_is_linked): Docs.
13019         (gst_pad_renegotiate): A brief description of capsnego.
13020         (gst_pad_try_set_caps): Document.
13021         (gst_pad_try_set_caps_nonfixed): Document.
13022         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
13023         (gst_pad_set_parent): Deprecated (although not out of the API).
13024         (gst_pad_get_parent): Deprecated, although many plugins use this.
13025         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
13026         are private and will go away in 0.9.
13027         (gst_pad_perform_negotiate): Doc.
13028         (gst_pad_link_unnegotiate): I think this is meant to be static.
13029         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
13030         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
13031         (gst_pad_get_peer): Doc updates.
13032         (gst_pad_caps_change_notify): Doc.
13033         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
13034         (gst_ghost_pad_new): Doc fixes.
13035
13036         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
13037         (gst_object_check_uniqueness): 
13038
13039         * gst/gstelement.c (gst_element_add_pad) 
13040         (gst_element_add_ghost_pad, gst_element_remove_pad) 
13041         (gst_element_remove_ghost_pad, gst_element_get_pad) 
13042         (gst_element_get_static_pad, gst_element_get_pad_list) 
13043         (gst_element_class_get_pad_template_list) 
13044         (gst_element_class_get_pad_template): Work on the docs.
13045         (gst_element_get_pad_template_list): Uses the class method.
13046         (gst_element_get_compatible_pad_template): Docs, and consolidate
13047         some test conditions. 
13048         (gst_element_get_pad_from_template): New static function.
13049         (gst_element_request_compatible_pad): Docs, and work with
13050         non-request compatible templates. 
13051         (gst_element_get_compatible_pad_filtered): Docs and remove
13052         redundant checks.
13053         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
13054         (gst_element_link_filtered, gst_element_link_many) 
13055         (gst_element_link, gst_element_link_pads) 
13056         (gst_element_unlink_many): Docs.
13057
13058 2004-02-05  Andy Wingo  <wingo@pobox.com>
13059
13060         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
13061         s/pointer/boxed/.
13062
13063         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
13064
13065         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
13066         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
13067         with the type=GST_TYPE_CAPS. This allows language bindings to know
13068         what kind of data they're dealing with.
13069
13070         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
13071         to NULL when g_value_init is called. GstCaps, which rolls its own
13072         type implementation, now does the same instead of allocating empty
13073         caps.
13074         (_gst_caps_initialize, _gst_caps_collect_value,
13075         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
13076         table methods. This allows G_VALUE_COLLECT to work.
13077
13078 2004-02-05  Andy Wingo  <wingo@pobox.com>
13079
13080         * configure.ac:
13081         * testsuite/Makefile.am (SUBDIRS): 
13082         * testsuite/ghostpads/Makefile.am: 
13083         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
13084
13085         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
13086         These two routines are the only ones that set
13087         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
13088         pad template. They should be made static, depending on ABI needs.
13089         (gst_real_pad_dispose): Handle the case of ghost pads without a
13090         parent. Assert after dealing with ghost pads that the ghost pad
13091         list is empty.
13092         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
13093         set after creation.
13094         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
13095         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
13096         functions. set_property will call add_ghost_pad/remove_ghost_pad
13097         as appropriate.
13098         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
13099
13100         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
13101         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
13102         (gst_element_remove_pad): Handle ghost pads as well.
13103         (gst_element_remove_ghost_pad): Deprecated (could be removed,
13104         depending on API-stability needs).
13105
13106 2004-02-05  Andy Wingo  <wingo@pobox.com>
13107
13108         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
13109         of course they're const
13110
13111 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
13112
13113         * tools/Makefile.am:
13114         * tools/gst-feedback:
13115         * tools/gst-feedback-0.7:
13116           make gst-feedback versioned too for consistency
13117
13118 2004-02-11  David Schleef  <ds@schleef.org>
13119
13120         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
13121         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
13122
13123 2004-02-10  Julien MOUTTE <julien@moutte.net>
13124
13125         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
13126         the structure does not contain a valid tag list. Adding a safety check
13127         to remove a noisy warning in that case.
13128
13129 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13130
13131         * gst/gst.c: fix name to be in line with others
13132
13133 2004-02-09  Julien MOUTTE <julien@moutte.net>
13134
13135         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
13136         not shout that loud when len is 0. Just return 0 silently.
13137
13138 2004-02-09  Julien MOUTTE  <julien@moutte.net>
13139
13140         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
13141         because data_unref has one and I prefer the debug to be symetric.
13142         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
13143         were refed when added to the queue and unrefed only once when the queue
13144         was flushed. Now the flush handler unref the buffers two times : first
13145         unref for the ref added when pushing in the queue's tail and second
13146         unref to destroy the flushed buffer.
13147
13148 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
13149
13150         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
13151
13152 2004-02-06  David Schleef  <ds@schleef.org>
13153
13154         * docs/random/ds/0.9-suggested-changes: Random ramblings
13155         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
13156         to int before printing.
13157         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
13158         * gst/parse/parse.l: same.  See bug #129600
13159
13160 2004-02-06  David Schleef  <ds@schleef.org>
13161
13162         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
13163         (gst_index_add_entry), (gst_index_add_associationv),
13164         (gst_index_add_association): Add gst_index_add_associationv()
13165         and clean up gst_index_add_association(). #127133
13166
13167 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
13168
13169         * autogen.sh: check out common with right tag if CVS/Tag exists
13170
13171 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
13172
13173         * testsuite/ghostpads/ghostpads.c: (main):
13174           fix testsuite from segfaulting
13175
13176 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
13177
13178         * Makefile.am: add release target
13179         * configure.ac: bump nano to 1
13180         * docs/random/release:
13181
13182 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13183
13184         * gst/gstcaps.h:
13185         * gst/gstelement.c: (gst_element_base_class_init),
13186         (gst_element_class_set_details), (gst_element_clear_pad_caps):
13187         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
13188         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
13189         (gst_real_pad_dispose):
13190         * gst/gststructure.c: (gst_structure_free),
13191         (gst_structure_from_string):
13192           put reverted patch back in
13193         * gst/gstelement.c: (gst_element_remove_pad):
13194           free explicit caps if they're set
13195         * gst/gstpad.c: (_gst_pad_default_fixate_func):
13196           copy the structure when fixating
13197
13198 2004-02-05  David Schleef  <ds@schleef.org>
13199
13200         * gst/gstmarshal.list:
13201         * gst/gstpad.c: (gst_real_pad_class_init),
13202         (_gst_real_pad_fixate_accumulator):
13203         Revert POINTER->BOXED change in signal marshaller.
13204
13205 === release 0.7.4 ===
13206                                                                                 
13207 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
13208                                                                                 
13209         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
13210         * configure.ac: changed for release
13211
13212 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
13213
13214         * gstreamer.spec.in:
13215           bump required version of gtk-doc
13216
13217 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
13218
13219         * gst/gstcaps.h:
13220         * gst/gstelement.c: (gst_element_base_class_init),
13221         (gst_element_class_set_details), (gst_element_clear_pad_caps):
13222         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
13223         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
13224         (gst_real_pad_dispose):
13225         * gst/gststructure.c: (gst_structure_free),
13226         (gst_structure_from_string):
13227           revert patch that breaks applications, reapply after release
13228           to get this fixed properly
13229
13230 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13231
13232         * gst/gsttag.c: (_gst_tag_initialize):
13233         * gst/gsttag.h:
13234           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
13235
13236 2004-02-04  David Schleef  <ds@schleef.org>
13237
13238         Fix some memleaks:
13239         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
13240         (gst_spider_plug_from_srcpad):
13241         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
13242
13243 2004-02-04  David Schleef  <ds@schleef.org>
13244
13245         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
13246         a GstRealPad before accessing its structure members.
13247
13248 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13249
13250         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
13251         (gst_clock_get_speed):
13252         * gst/gstclock.h:
13253           reset padding, remove unused fields
13254
13255 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13256
13257         * gst/autoplug/gstspideridentity.c:
13258         (gst_spider_identity_sink_loop_type_finding):
13259           use get_allowed_caps, not get_caps (fixes #132519)
13260         * gst/elements/gsttypefind.c: (stop_typefinding):
13261           use correct order when sending buffers and seeking
13262
13263 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
13264
13265         * configure.ac:
13266         * gst/gstelement.h:
13267         * gst/gstpad.h:
13268         * gst/gstqueue.h:
13269           upgrade libtool CURRENT, reset padding
13270
13271 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
13272
13273         * configure.ac:
13274           bump to prerelease
13275           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
13276
13277 2004-02-04  David Schleef  <ds@schleef.org>
13278
13279         * docs/random/ds/0.9-suggested-changes: random notes
13280         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
13281         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
13282         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
13283         expansion.
13284         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
13285         (gst_filesink_get_query_types): same
13286         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
13287         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
13288         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
13289         to use new GST_PTR_FORMAT.
13290         * gst/gstelement.h: deprecate function factory macros
13291         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
13292         These are our last variadic macros that can't be replaced with
13293         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
13294         attempting to deprecate gst_element_clock_wait().
13295         * gst/gstevent.h: same
13296         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
13297         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
13298         * gst/gstpad.h: deprecate function factory macros similar to above.
13299
13300 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
13301
13302         * configure.ac:
13303         * tools/Makefile.am:
13304         * tools/gst-run.c: (popt_callback), (hash_print_key),
13305         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
13306         (get_candidates), (main):
13307           add new source file to generate non-versioned wrapper binaries
13308           for our tools.
13309
13310 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13311
13312         * gst/gstevent.c: (_gst_event_free):
13313           actually break; inside the switch statement
13314         * gst/parse/grammar.y:
13315           fix memleak where GValues weren't unset
13316
13317 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13318
13319         * gst/gststructure.c: (gst_structure_from_string):
13320           fix huge memleak
13321         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
13322         (new_entry), (gst_type_find_element_chain):
13323         * gst/gstelement.c: (gst_element_base_class_init),
13324         (gst_element_class_set_details):
13325         * gst/gstpad.c: (gst_pad_can_link_filtered):
13326           fix smaller memleaks
13327         * gst/gstpad.c: (gst_real_pad_dispose):
13328           check that explicit caps are gone
13329         * gst/gststructure.c: (gst_structure_free):
13330           actually free the structure
13331         * gst/gstelement.c: (gst_element_clear_pad_caps):
13332           unset explicit caps
13333
13334 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
13335
13336         * tools/Makefile.am:
13337           use AM_CFLAGS since all the CFLAGS are the same
13338           use AM_LDFAGS
13339
13340 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
13341
13342         * docs/manual/gnome.xml:
13343           expand example a little
13344         * gst/gst.c: (gst_init_with_popt_table),
13345         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
13346           make sure popt option displays are done with right textdomain
13347           use GstPoptOption type
13348         * gst/gst.h:
13349           create GstPoptOption type
13350
13351 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
13352
13353         * gst/gsterror.c: (_gst_stream_errors_init):
13354         * gst/gsterror.h:
13355           adding error type for no codec
13356         * po/POTFILES.in:
13357           add gst-inspect
13358         * po/nl.po:
13359           update dutch translation
13360         * tools/gst-inspect.c: (print_element_list), (main):
13361           do proper internationalization
13362         * tools/gst-launch.c: (idle_func):
13363           remove commented out function call
13364
13365 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
13366
13367         * docs/README:
13368           add some error fixing notes
13369         * docs/gst/gstreamer-sections.txt:
13370           remove double entries
13371         * docs/gst/tmpl/gstbin.sgml:
13372         * docs/gst/tmpl/gstclock.sgml:
13373           remove override
13374         * docs/gst/tmpl/gstelement.sgml:
13375         * docs/gst/tmpl/gstindex.sgml:
13376         * docs/gst/tmpl/gstobject.sgml:
13377         * docs/gst/tmpl/gstpadtemplate.sgml:
13378         * docs/gst/tmpl/gstreamer-unused.sgml:
13379         * docs/gst/tmpl/gsttag.sgml:
13380         * docs/gst/tmpl/gstthread.sgml:
13381         * docs/gst/tmpl/gstxml.sgml:
13382         * gst/gsttag.h:
13383           sync header prototypes with c decls
13384         * gst/gsttaginterface.c:
13385           fix doc headers
13386
13387 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13388
13389         * gst/parse/Makefile.am:
13390         * gst/gstobject.h:
13391           get rid of gstmarshal.h dependency. It's not needed.
13392         * gst/gst.h:
13393         * gst/elements/gstfakesink.c:
13394         * gst/elements/gstfakesrc.c:
13395         * gst/elements/gstidentity.c:
13396         * gst/gstbin.c:
13397         * gst/gstelement.c:
13398         * gst/gstindex.c:
13399         * gst/gstobject.c:
13400         * gst/gstpad.c:
13401         * gst/gstthread.c:
13402         * gst/gstxml.c:
13403         * libs/gst/control/dparam.c:
13404         * libs/gst/control/dparammanager.c:
13405           include gstmarshal.h.
13406         Fixes #132045
13407
13408 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13409
13410         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
13411         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
13412         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
13413         * gst/elements/gstfilesrc.h:
13414           don't ref the filesrc when creating mmaped buffers. Don't keep a
13415           list of not-yet-destroyed buffers.
13416         * gst/gstbuffer.h:
13417           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
13418
13419 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
13420
13421         * gst/gst.c: (init_pre):
13422           remove textdomain
13423
13424 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13425
13426         * docs/pwg/advanced-events.xml:
13427         * docs/pwg/advanced-scheduling.xml:
13428         * docs/pwg/intro-basics.xml:
13429         * docs/pwg/other-manager.xml:
13430         * docs/pwg/other-nton.xml:
13431         * docs/pwg/other-ntoone.xml:
13432         * docs/pwg/other-oneton.xml:
13433         * docs/pwg/pwg.xml:
13434           All sort of documentation... Forgot what. Point is that I want this
13435           in before I leave. The 'other-*' will be the last section and will
13436           explain issues specific to these type of elements.
13437
13438 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13439
13440         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
13441         (gst_filesrc_get_read):
13442           set all the values on buffers that we can
13443
13444 2004-02-02  David Schleef  <ds@schleef.org>
13445
13446         Change usage of isblah() to g_ascii_isblah() to be more locale
13447         independent.  (#133076)
13448         * gst/gsturi.c: (gst_uri_protocol_check_internal):
13449         * gst/gstutils.c:
13450         * gst/parse/parse.l:
13451
13452 2004-02-02  Jon Trowbridge  <trow@gnu.org>
13453
13454         reviewed by: David Schleef  <ds@schleef.org>
13455
13456         Fix memory leaks:
13457         * gst/gstcaps.c: (gst_caps_to_string):
13458         * gst/registries/gstxmlregistry.c:
13459         (gst_xml_registry_add_path_list_func),
13460         (gst_xml_registry_parse_padtemplate):
13461
13462 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
13463
13464         * gst/gstelement.c: (gst_element_default_error):
13465           suffix error messages with period
13466
13467 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
13468
13469         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13470         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13471         * gst/gsterror.c: (gst_error_get_message):
13472           Suffix with dots
13473         * po/fr.po:
13474         * po/nl.po:
13475           Update translation files
13476
13477 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
13478
13479         * gst/autoplug/gstspideridentity.c:
13480         (gst_spider_identity_sink_loop_type_finding):
13481         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13482         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13483         (gst_filesink_close_file), (gst_filesink_handle_event),
13484         (gst_filesink_chain):
13485         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
13486         (gst_filesrc_get_read), (gst_filesrc_open_file):
13487         * gst/elements/gstidentity.c: (gst_identity_chain):
13488         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13489         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13490         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13491         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13492         * gst/gsterror.c: (_gst_core_errors_init),
13493         (_gst_library_errors_init), (_gst_resource_errors_init),
13494         (_gst_stream_errors_init), (gst_error_get_message):
13495         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13496         (gst_pad_recover_caps_error), (gst_pad_pull):
13497         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13498         * gst/schedulers/gstbasicscheduler.c:
13499         (gst_basic_scheduler_chainhandler_proxy),
13500         (gst_basic_scheduler_gethandler_proxy),
13501         (gst_basic_scheduler_cothreaded_chain):
13502           Suffix error messages with period.
13503           Use (NULL) instead of NULL
13504
13505 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
13506
13507         * docs/gst/tmpl/gstelement.sgml:
13508         * docs/gst/tmpl/gstxml.sgml:
13509         * gst/gstelement.c: (gst_element_error_full):
13510           add element path to error
13511
13512 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13513
13514         * docs/random/mimetypes:
13515           update raw int/float info
13516         * gst/gsttag.c: (_gst_tag_initialize):
13517         * gst/gsttag.h:
13518           add GST_TAG_ENCODER
13519
13520 2004-01-30  David Schleef  <ds@schleef.org>
13521
13522         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
13523           missing (#132991)
13524
13525 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
13526
13527         reviewed by Benjamin Otte 
13528           parts of the patch submitted in bug #113913
13529
13530         * configure.ac:
13531           use AC_C_INLINE. Use = instead of == with test
13532         * examples/plugins/example.c:
13533         * gst/autoplug/gstspideridentity.c:
13534         * gst/elements/gstfdsrc.c:
13535         * gst/elements/gstfilesrc.c:
13536         * gst/elements/gstidentity.c:
13537         * gst/elements/gstmultidisksrc.c:
13538         * gst/elements/gststatistics.c:
13539         * gst/gstelement.c:
13540         * gst/gstobject.c:
13541         * gst/gstpad.c:
13542         * gst/gstpipeline.c:
13543         * gst/gstthread.c:
13544           don't end enums with a comma
13545         * gst/gstindex.c: (gst_index_compare_func):
13546           do explicit casting to gint
13547         * gst/gsttrace.c: (gst_trace_text_flush):
13548           #define strsize as a macro
13549
13550 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
13551
13552         * docs/README:
13553         * docs/gst/gstreamer-docs.sgml:
13554         * docs/gst/gstreamer-sections.txt:
13555         * docs/gst/tmpl/gstelement.sgml:
13556         * docs/gst/tmpl/gsterror.sgml:
13557         * docs/gst/tmpl/gstinterface.sgml:
13558         * docs/gst/tmpl/gstreamer-unused.sgml:
13559         * docs/gst/tmpl/gststructure.sgml:
13560         * docs/gst/tmpl/gsttag.sgml:
13561         * docs/gst/tmpl/gsttaginterface.sgml:
13562         * docs/gst/tmpl/gstvalue.sgml:
13563         make sure all API ends up in the built docs
13564         * gst/gstinterface.c:
13565         * gst/gststructure.c: (gst_structure_id_set_value),
13566         (gst_structure_set_value), (gst_structure_id_get_value):
13567         * gst/gststructure.h:
13568         * gst/gstvalue.h:
13569         sync .h with .c declarations
13570
13571 2004-01-30  Julien Moutte  <julien@moutte.net>
13572
13573         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
13574         Ronald will fix riffread.
13575
13576 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13577
13578         * docs/pwg/advanced-interfaces.xml:
13579           Added tuner interface docs.
13580
13581 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13582
13583         * docs/random/mimetypes:
13584           correct Theora information
13585         * gst/gstelement.h:
13586           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
13587
13588 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
13589
13590         * gst/gstelement.c: (gst_element_error_full):
13591         * gst/gstelement.h:
13592           GST_ELEMENT_ERROR in enum -> _IN_ERROR
13593
13594 2004-01-29  Julien MOUTTE  <julien@moutte.net>
13595
13596         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
13597         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
13598         again and even before DISCONT.
13599         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
13600         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
13601         bytestream so that it's not stopping to fill the bytestream if events
13602         different than EOS or DISCONT are received. Instead it process them so
13603         that they go downstream.
13604
13605 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
13606
13607         * docs/gst/tmpl/gstelement.sgml:
13608         * docs/gst/tmpl/gstreamer-unused.sgml:
13609         * docs/gst/tmpl/gstxml.sgml:
13610         * gst/autoplug/gstspideridentity.c:
13611         (gst_spider_identity_sink_loop_type_finding):
13612         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13613         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13614         (gst_filesink_close_file), (gst_filesink_handle_event),
13615         (gst_filesink_chain):
13616         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
13617         (gst_filesrc_get_read), (gst_filesrc_open_file):
13618         * gst/elements/gstidentity.c: (gst_identity_chain):
13619         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13620         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13621         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13622         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13623         * gst/gstelement.h:
13624         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13625         (gst_pad_recover_caps_error), (gst_pad_pull):
13626         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13627         * gst/schedulers/gstbasicscheduler.c:
13628         (gst_basic_scheduler_chainhandler_proxy),
13629         (gst_basic_scheduler_gethandler_proxy),
13630         (gst_basic_scheduler_cothreaded_chain):
13631           gst_element_error -> GST_ELEMENT_ERROR
13632
13633 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
13634
13635         * docs/Makefile.am:
13636         * docs/gst/tmpl/gstelement.sgml:
13637         * docs/gst/tmpl/gstxml.sgml:
13638         * docs/manuals.mak:
13639         * docs/pwg/advanced-request.xml:
13640         * docs/pwg/advanced-scheduling.xml:
13641         * docs/pwg/advanced-tagging.xml:
13642           fix non-validating docbook using CDATA
13643           make sure make check-local gets run first to check if it validates
13644
13645 2004-01-29  Julien MOUTTE <julien@moutte.net>
13646
13647         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
13648         handling (up and downstream).
13649         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
13650         my_filter thing.
13651
13652 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13653
13654         * docs/pwg/advanced-tagging.xml:
13655           Add docs about tag writing.
13656
13657 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13658
13659         * docs/pwg/advanced-tagging.xml:
13660           Add a part about tag reading and application signalling... Tag
13661           writing still needs to be documented.
13662         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
13663           We can set file locations in READY, too.
13664
13665 2004-01-29  Julien MOUTTE <julien@moutte.net>
13666
13667         * docs/random/ds/element-checklist: Adding some notes about src
13668         events.
13669
13670 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13671
13672         * docs/random/mimetypes:
13673           Update docs to point to correct elements for various mimetypes, and
13674           some more errors pointed out by St??phane LOEUILLET (aka LeRoutier)
13675           <stephane.loeuillet@tiscali.fr>.
13676
13677 2004-01-28  David Schleef  <ds@schleef.org>
13678
13679         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
13680
13681 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13682
13683         * docs/random/mimetypes:
13684           update docs for audio/x-raw-float. Add "buffer-frames=0 means
13685           undefined"
13686         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
13687           make it only work in NULL.
13688         * gst/gstcaps.c:
13689           don't posion NULL caps
13690         * gst/gstelement.c: (gst_element_set_time):
13691           add debugging statement
13692         * gst/gstelement.c: (gst_element_emit_found_tag),
13693         (gst_element_found_tag_func), (gst_element_found_tags):
13694         * gst/gstelement.h:
13695           These functions take const taglists
13696         * gst/gstpad.c: (gst_pad_proxy_getcaps):
13697           fix memleak
13698         * gst/gstpad.c: (gst_pad_event_default):
13699           make more effort on handling discont and clocks, g_warn if everything
13700           fails
13701         * gst/gststructure.c: (gst_structure_remove_fields),
13702         (gst_structure_remove_fields_valist):
13703         * gst/gststructure.h:
13704           add gst_structure_remove_fields(_valist)
13705         * gst/gsttag.c:
13706           fix doc glitch
13707
13708 2004-01-28  David Schleef  <ds@schleef.org>
13709
13710         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
13711         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
13712         Fix memory leakage of gst_caps_to_string().
13713
13714         Use GST_PTR_FORMAT instead of gst_caps_to_string():
13715         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
13716         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
13717         (gst_spider_identity_sink_loop_type_finding):
13718         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
13719         (find_suggest):
13720         * gst/gstpad.c: (gst_pad_try_relink_filtered),
13721         (gst_pad_set_explicit_caps):
13722         * gst/parse/grammar.y:
13723
13724 2004-01-28  David Schleef  <ds@schleef.org>
13725
13726         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
13727         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
13728         * docs/random/ds/0.9-suggested-changes: Notes from Company.
13729         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
13730         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
13731         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
13732         (gst_debug_log_default), (_gst_info_printf_extension),
13733         (_gst_info_printf_extension_arginfo):  Add printf extension.
13734         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
13735         * gst/gststructure.c: (gst_structure_to_string),
13736         (_gst_structure_parse_value): Use gst_value_deserialize() and
13737         remove old code.
13738         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
13739         (gst_value_deserialize_boolean), (gst_strtoi),
13740         (gst_value_deserialize_int), (gst_value_deserialize_double),
13741         (gst_value_deserialize_string), (gst_value_deserialize): Implement
13742         a bunch of deserialize functions and gst_value_deserialize.
13743         * gst/gstvalue.h: er, _de_serialize, not unserialize
13744         * testsuite/caps/string-conversions.c: (main): We don't currently
13745         handle (float) in caps, so convert these to (double).
13746         * testsuite/debug/Makefile.am: Add new test for the printf extension
13747         * testsuite/debug/printf_extension.c: (main): same
13748
13749 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13750
13751         * docs/random/company/time:
13752           Add some docs about clocking and time
13753
13754 2004-01-28  Julien MOUTTE <julien@moutte.net>
13755
13756         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
13757
13758 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13759
13760         * docs/pwg/advanced-clock.xml:
13761         * docs/pwg/advanced-dparams.xml:
13762         * docs/pwg/advanced-events.xml:
13763         * docs/pwg/advanced-interfaces.xml:
13764         * docs/pwg/advanced-midi.xml:
13765         * docs/pwg/advanced-request.xml:
13766         * docs/pwg/advanced-scheduling.xml:
13767         * docs/pwg/advanced-tagging.xml:
13768         * docs/pwg/advanced-types.xml:
13769         * docs/pwg/appendix-checklist.xml:
13770         * docs/pwg/building-boiler.xml:
13771         * docs/pwg/building-chainfn.xml:
13772         * docs/pwg/building-filterfactory.xml:
13773         * docs/pwg/building-pads.xml:
13774         * docs/pwg/building-props.xml:
13775         * docs/pwg/building-signals.xml:
13776         * docs/pwg/building-state.xml:
13777         * docs/pwg/building-testapp.xml:
13778         * docs/pwg/intro-basics.xml:
13779         * docs/pwg/intro-preface.xml:
13780         * docs/pwg/other-autoplugger.xml:
13781         * docs/pwg/other-sink.xml:
13782         * docs/pwg/other-source.xml:
13783         * docs/pwg/titlepage.xml:
13784           fix up id's
13785
13786 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13787
13788         * docs/95NonPath:
13789         * docs/HACKING:
13790         * docs/README:
13791         * docs/building-the-docs-on-debian:
13792           collect relevant bits of doc info
13793
13794 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13795
13796         * docs/pwg/advanced_tagging.xml:
13797           Half-assed commit so Thomas can re-arrange document IDs here to be
13798           consistent, too.
13799
13800 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13801
13802         * docs/manual/autoplugging.xml:
13803         * docs/manual/bins-api.xml:
13804         * docs/manual/bins.xml:
13805         * docs/manual/buffers-api.xml:
13806         * docs/manual/buffers.xml:
13807         * docs/manual/clocks.xml:
13808         * docs/manual/components.xml:
13809         * docs/manual/cothreads.xml:
13810         * docs/manual/debugging.xml:
13811         * docs/manual/dparams-app.xml:
13812         * docs/manual/dynamic.xml:
13813         * docs/manual/elements-api.xml:
13814         * docs/manual/elements.xml:
13815         * docs/manual/factories.xml:
13816         * docs/manual/gnome.xml:
13817         * docs/manual/goals.xml:
13818         * docs/manual/helloworld.xml:
13819         * docs/manual/helloworld2.xml:
13820         * docs/manual/init-api.xml:
13821         * docs/manual/intro.xml:
13822         * docs/manual/links-api.xml:
13823         * docs/manual/links.xml:
13824         * docs/manual/manual.xml:
13825         * docs/manual/motivation.xml:
13826         * docs/manual/pads-api.xml:
13827         * docs/manual/pads.xml:
13828         * docs/manual/plugins-api.xml:
13829         * docs/manual/plugins.xml:
13830         * docs/manual/programs.xml:
13831         * docs/manual/queues.xml:
13832         * docs/manual/quotes.xml:
13833         * docs/manual/schedulers.xml:
13834         * docs/manual/states-api.xml:
13835         * docs/manual/states.xml:
13836         * docs/manual/threads.xml:
13837         * docs/manual/typedetection.xml:
13838         * docs/manual/xml.xml:
13839           use chapter, part, section or misc as id starts for all bits
13840
13841 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13842
13843         * docs/gst/gstreamer-sections.txt:
13844           Fix up TITLE of the sections
13845
13846 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13847
13848         * docs/pwg/advanced_interfaces.xml:
13849           Add documentation on propertyprobing.
13850         * docs/pwg/advanced_events.xml:
13851         * docs/pwg/advanced_tagging.xml:
13852         * docs/pwg/building_boiler.xml:
13853         * docs/pwg/building_filterfactory.xml:
13854         * docs/pwg/pwg.xml:
13855           Move filterfactory and tagging into their own chapter, add a chapter
13856           on events. all these are empty placeholders that will be filled in
13857           some day.
13858
13859 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13860
13861         * docs/pwg/advanced_interfaces.xml:
13862           Docs for mixer interface. Also a check for website uploading.
13863
13864 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13865
13866         * docs/HACKING:
13867         * docs/Makefile.am:
13868         * docs/faq/Makefile.am:
13869         * docs/gst/Makefile.am:
13870         * docs/gst/tmpl/gstelement.sgml:
13871         * docs/gst/tmpl/gstplugin.sgml:
13872         * docs/gst/tmpl/gstreamer-unused.sgml:
13873         * docs/libs/Makefile.am:
13874         * docs/manual/Makefile.am:
13875         * docs/manuals.mak:
13876         * docs/pwg/Makefile.am:
13877         * docs/upload.mak:
13878           Separate out upload target and make it similar for
13879           both docbook and gtk-doc docs
13880
13881 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13882
13883         * docs/manuals.mak:
13884           Fix upload target to work with freedesktop
13885
13886 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13887
13888         * docs/pwg/advanced_types.xml:
13889           Add notes on creating your own types.
13890         * docs/pwg/building_boiler.xml:
13891         * docs/pwg/building_pads.xml:
13892         * docs/pwg/building_state.xml:
13893           Add some stuff about how to retrieve values from structures, how
13894           that relates to types and change layout slightly again to be almost
13895           perfect.
13896
13897 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13898
13899         * docs/pwg/advanced_dparams.xml:
13900         * docs/pwg/advanced_scheduling.xml:
13901           Change index layout slightly.
13902
13903 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13904
13905         * docs/pwg/advanced_clock.xml:
13906         * docs/pwg/advanced_interfaces.xml:
13907         * docs/pwg/advanced_midi.xml:
13908           General placeholders for now.
13909         * docs/pwg/advanced_request.xml:
13910           Explanation about sometimes and request pads.
13911         * docs/pwg/advanced_scheduling.xml:
13912           Concept of bytestream, loopfunctions and schedulers.
13913         * docs/pwg/building_boiler.xml:
13914           Add something about plugin-init.
13915
13916 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13917
13918         * docs/pwg/building_pads.xml:
13919           Fix broken docbook
13920
13921 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13922
13923         * docs/pwg/advanced_interfaces.xml:
13924         * docs/pwg/pwg.xml:
13925           Add as a placeholder for future filling-in.
13926         * docs/pwg/basics_autoplugging.xml:
13927         * docs/pwg/basics_buffers.xml:
13928         * docs/pwg/basics_elements.xml:
13929         * docs/pwg/basics_events.xml:
13930         * docs/pwg/basics_plugins.xml:
13931         * docs/pwg/basics_types.xml:
13932           Remove, because unused (this is all in intro_basics.xml).
13933         * docs/pwg/building_signals.xml:
13934           Short intro to signals + reference to GObject docs - we really
13935           shouldn't go into these sort of things to deply because we don't
13936           use them that extensively anyway.
13937         * docs/pwg/building_state.xml:
13938           Explanation of states. Benjamin, please check.
13939         * docs/pwg/building_testapp.xml:
13940           Put everything in one page - putting only a few lines of content
13941           per page doesn't really make sense.
13942
13943           Time to get into the advanced topics. ;).
13944
13945 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13946
13947         * docs/pwg/advanced_types.xml:
13948           Finish documenting the current state of mimetypes.
13949         * docs/pwg/building_boiler.xml:
13950         * docs/pwg/building_chainfn.xml:
13951         * docs/pwg/building_pads.xml:
13952         * docs/pwg/building_props.xml:
13953         * docs/pwg/building_testapp.xml:
13954           Start documenting the "how to build a simple audio filter" part
13955           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
13956           states and (maybe?) a short introduction to capsnego in the chapter
13957           on pads (building_pads.xml). Capsnego should probably be explained
13958           fully in advanced_capsnego.xml or so.
13959
13960 2004-01-26  David Schleef  <ds@schleef.org>
13961
13962         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
13963         * gst/gstpad.h: Add new function to allow element to (somewhat)
13964         specify non-fixed caps on a pad.
13965         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
13966         that I added a few weeks ago.
13967
13968 2004-01-26  David Schleef  <ds@schleef.org>
13969
13970         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
13971           making try_set_caps() work with non-fixed caps.
13972
13973 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13974
13975         * docs/pwg/advanced_types.xml:
13976         * docs/pwg/intro_basics.xml:
13977         * docs/pwg/intro_preface.xml:
13978         * docs/pwg/pwg.xml:
13979         * docs/pwg/titlepage.xml:
13980           First try to resurrect the PWG. I'm halfway integrating the mimetypes
13981           in here (docs/random/mimetypes), and will from there on work on both
13982           updating outdated parts and adding missing parts.
13983           That doesn't mean I'll fix it completely, but I'll try at least. ;).
13984
13985 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
13986
13987         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
13988           policy is set
13989
13990 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13991
13992         * gst/gstelement.h:
13993           remove gst_element_factory_get_version. It doesn't exist anymore.
13994         * gst/gstplugin.c:
13995         * gst/gstplugin.h:
13996           remove gst_plugin_set_name and change gst_plugin_get_longname to
13997           gst_plugin_get_description to match code.
13998         * gst/gsterror.h:
13999           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
14000         * gst/gstpad.c: (gst_pad_try_set_caps):
14001           make it work with nonfixed caps.
14002           Note that even in the nonfixed case the link function of the pad
14003           that tries to set caps isn't called.
14004
14005 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14006
14007         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
14008           fix bug where buffer was not assembled correctly
14009         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
14010           silence by default
14011         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
14012           only seek if there's no more buffers that could work without seeking
14013
14014 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14015
14016         * gst/gsttag.c: (_gst_tag_initialize):
14017         * gst/gsttag.h:
14018           Add application tag (for encoding/muxing app).
14019
14020 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
14021
14022         * autogen.sh:
14023           make autopoint force, and libtoolize not copy
14024         * common/m4/as-docbook.m4:
14025           added docbook xml catalog setup check
14026         * common/m4/gst-doc.m4:
14027           use docbook check
14028
14029 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
14030
14031         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
14032         * gst/gsttag.h:
14033           add GstTagFlag
14034
14035 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14036
14037         * docs/gst/gstreamer-sections.txt:
14038         * docs/gst/tmpl/gst.sgml:
14039         * docs/gst/tmpl/gstbuffer.sgml:
14040         * docs/gst/tmpl/gstclock.sgml:
14041         * docs/gst/tmpl/gstelement.sgml:
14042         * docs/gst/tmpl/gstreamer-unused.sgml:
14043         * docs/gst/tmpl/gstxml.sgml:
14044           sync latest API changes to docs
14045
14046 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14047
14048         * gst/gstpluginfeature.c:
14049           fix doc snippet
14050         * tools/gst-inspect.c: (print_element_list):
14051           fix output of typefind
14052           add GPL header
14053         * tools/gst-launch.c:
14054           add GPL header
14055
14056 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14057
14058         * gst/elements/Makefile.am:
14059         * gst/elements/gstelements.c:
14060         * gst/elements/gsttypefindelement.c:
14061         * gst/elements/gsttypefindelement.h:
14062         * po/POTFILES.in:
14063         * po/fr.po:
14064         * po/nl.po:
14065           renamed gsttypefindelement to gsttypefind, conserving CVS history
14066
14067 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14068
14069         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
14070         * gst/gsttag.h:
14071           add some tags used in ogg as well
14072           fix _ in replaygain tags
14073
14074 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14075
14076         * gst/gsterror.h:
14077           fix wrong GST_LIBRARY_ERROR_ENCODE addition
14078
14079 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14080
14081         * gst/gstelement.c: (gst_element_error_full):
14082         * gst/gstelement.h:
14083           change _extended to _full
14084
14085 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14086
14087         reviewed by: <delete if not using a buddy>
14088
14089         * docs/gst/tmpl/gst.sgml:
14090         * docs/gst/tmpl/gstbuffer.sgml:
14091         * docs/gst/tmpl/gstclock.sgml:
14092         * docs/gst/tmpl/gstelement.sgml:
14093         * docs/gst/tmpl/gstreamer-unused.sgml:
14094         * docs/gst/tmpl/gstxml.sgml:
14095         * gst/gstelement.c: (gst_element_error_full):
14096         * gst/gstelement.h:
14097
14098 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
14099
14100         * gst/gstelement.h: fix _gst_element_error_printf prototype
14101
14102 2004-01-20  David Schleef  <ds@schleef.org>
14103
14104         * gst/gststructure.c: (gst_structure_to_string):
14105         Convert function to use gst_value_serialize().
14106         * gst/gstvalue.c: (gst_value_serialize_list),
14107         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
14108         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
14109         (gst_value_serialize_int), (gst_value_serialize_double),
14110         (gst_string_wrap), (gst_value_serialize_string),
14111         (gst_value_serialize), (gst_value_deserialize):
14112         * gst/gstvalue.h:
14113         Add implementations for serialize.
14114
14115 2004-01-20  Julien MOUTTE  <julien@moutte.net>
14116
14117         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
14118         we want to keep that one in the future or change xvidenc.c to use 
14119         another error.
14120
14121 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14122
14123         * gst/gstelement.c: (_gst_element_error_printf):
14124         * gst/gstelement.h:
14125           privatise function
14126
14127 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14128
14129         * docs/random/error:
14130           doc explaining error system
14131         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
14132           cleanup
14133
14134 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14135
14136         * gst/gst-i18n-app.h:
14137         * gst/gst-i18n-lib.h:
14138           remove inclusion of config.h
14139         * po/POTFILES.in:
14140         * po/nl.po:
14141           add gst/gstelement.c
14142
14143 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14144
14145         * po/nl.po: updated Dutch translation
14146
14147 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14148
14149         * gst/gsterror.c: (_gst_core_errors_init),
14150         (_gst_library_errors_init), (_gst_resource_errors_init),
14151         (_gst_stream_errors_init):
14152         remove ending punctuation dots
14153
14154 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14155
14156         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
14157         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
14158         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
14159         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
14160         (gst_pipefilter_chain), (gst_pipefilter_open_file):
14161         use GST_ERROR_SYSTEM
14162
14163 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14164
14165         * gst/gstelement.c: (gst_element_error_printf),
14166         (gst_element_error_extended):
14167         * gst/gstelement.h:
14168           add a helper printf function so we can have NULL values passed.
14169
14170 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
14171
14172         * gst/gstelement.h:
14173           add G_STMT macros to gst_element_error, which isn't strictly
14174           necessary but people tell me to anyway.
14175
14176 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
14177
14178         * gst/Makefile.am:
14179         * gst/autoplug/gstspideridentity.c:
14180         (gst_spider_identity_sink_loop_type_finding):
14181         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
14182         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
14183         (gst_filesink_close_file), (gst_filesink_handle_event),
14184         (gst_filesink_chain):
14185         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
14186         (gst_filesrc_map_region), (gst_filesrc_get_read),
14187         (gst_filesrc_open_file):
14188         * gst/elements/gstidentity.c: (gst_identity_chain):
14189         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
14190         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
14191         (gst_pipefilter_chain), (gst_pipefilter_open_file):
14192         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
14193         * gst/gst.h:
14194         * gst/gst_private.h:
14195         * gst/gstelement.c: (gst_element_class_init),
14196         (gst_element_default_error), (gst_element_error_func),
14197         (gst_element_error_extended):
14198         * gst/gstelement.h:
14199         * gst/gsterror.c: (_gst_core_errors_init),
14200         (_gst_library_errors_init), (_gst_resource_errors_init),
14201         (_gst_stream_errors_init), (gst_error_get_message):
14202         * gst/gsterror.h:
14203         * gst/gstinfo.c: (_gst_debug_init):
14204         * gst/gstmarshal.list:
14205         * gst/gstpad.c: (gst_pad_set_explicit_caps),
14206         (gst_pad_recover_caps_error), (gst_pad_pull):
14207         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
14208         * gst/schedulers/gstbasicscheduler.c:
14209         (gst_basic_scheduler_chainhandler_proxy),
14210         (gst_basic_scheduler_gethandler_proxy),
14211         (gst_basic_scheduler_cothreaded_chain):
14212         * po/POTFILES.in:
14213         * po/fr.po:
14214         * po/nl.po:
14215           change error signal
14216           add error categories
14217
14218 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
14219
14220         * gst/gsttag.c: (_gst_tag_initialize):
14221         * gst/gsttag.h:
14222         Add replaygain tag
14223
14224 2004-01-18  Colin Walters  <walters@verbum.org>
14225
14226         * examples/retag/retag.c: Call gst_init before processing
14227         program args.  Add g_assert to _link_many call.
14228
14229 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14230
14231         * gst/gstpad.c: (gst_pad_alloc_buffer):
14232           Return a newly allocated buffer when the pad has no peer.
14233
14234 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14235
14236         * gst/gstclock.c: (gst_clock_get_time):
14237           make it compile with gcc 2.95 again.
14238           Patch by Scott Wheeler
14239
14240 2004-01-15  David Schleef  <ds@schleef.org>
14241
14242         * gst/gstcaps.h:
14243         Added gst_caps_is_simple() macro.
14244         * testsuite/caps/caps.c: (test1):
14245         * testsuite/caps/intersect2.c: (main):
14246         * testsuite/caps/intersection.c: (main):
14247         Fixes to make 'make check' work again after removing
14248         gst_caps_is_chained().
14249
14250 2004-01-15  Leif Johnson <leif@ambient.2y.net>
14251
14252         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
14253         and additions to the MIDI document.
14254
14255 2004-01-15  David Schleef  <ds@schleef.org>
14256
14257         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
14258         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
14259         of GST_RPAD_, since we don't know if it's a real or ghost pad.
14260
14261 2004-01-15  David Schleef  <ds@schleef.org>
14262
14263         * gst/gstqueue.c:
14264         * gst/gstqueue.h:
14265         Fix the spelling of "treshold" and make min_threshold actually
14266         affect the queue.
14267
14268 2004-01-15  David Schleef  <ds@schleef.org>
14269
14270         * gst/gstcaps.c:
14271         Add lots of documentation.
14272         * gst/gstcaps.h:
14273         Deprecate a few functions.
14274         * gst/gstpad.c:
14275         Removed use of deprecated functions.
14276
14277 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14278
14279         * gst/gstpad.c: (gst_pad_is_linked):
14280         * gst/gstpad.h:
14281           implement gst_pad_is_linked
14282         * gst/gstelement.h:
14283           reserve space for initiate_state_change
14284
14285 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14286
14287         * gst/autoplug/gstspideridentity.c:
14288         (gst_spider_identity_sink_loop_type_finding):
14289           break infinite loop by just returning instead of looping
14290         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
14291           set event time difference correctly. Set it to 1 second instead
14292           of 100ms to be more tolerant
14293         * gst/gstelement.c: (gst_element_set_time):
14294           add debugging output
14295
14296 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14297
14298         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
14299           query if buffers are inside the pool, ignore events
14300
14301 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14302
14303         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
14304         (gst_clock_set_speed), (gst_clock_set_active),
14305         (gst_clock_is_active), (gst_clock_reset),
14306         (gst_clock_handle_discont):
14307         * gst/gstclock.h:
14308           deprecate old interface and disable functions that aren't in use
14309           anymore.
14310         * gst/gstelement.h:
14311         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
14312         (gst_element_set_time), (gst_element_adjust_time):
14313           add concept of "element time" and functions to get/set this time.
14314         * gst/gstelement.c: (gst_element_change_state):
14315           update element time correctly.
14316         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
14317           This is a debug message, not a g_critical.
14318         * gst/gstpad.c: (gst_pad_event_default):
14319           handle discontinuous events right with element time.
14320         * gst/gstscheduler.c: (gst_scheduler_state_transition):
14321           update to clocking fixes.
14322           set clocks on elements in READY=>PAUSED. The old behaviour caused
14323           a wrong element time on the first element that started playing.
14324         * gst/schedulers/gstbasicscheduler.c:
14325         (gst_basic_scheduler_class_init):
14326         * gst/schedulers/gstoptimalscheduler.c:
14327         (gst_opt_scheduler_class_init):
14328           remove code that just implements the default behaviour.
14329         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
14330           update to use new clocking functions
14331         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
14332         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
14333           update to test new element time.
14334         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
14335           use _get_allowed_caps instead of _get_caps. This catches filtered
14336           caps correctly.
14337         * testsuite/debug/commandline.c:
14338           update for new GST_DEBUG syntax.
14339         * testsuite/threads/Makefile.am:
14340           disable a test that only works sometimes.
14341
14342 2004-01-13  Julien MOUTTE <julien@moutte.net>
14343
14344         * po/LINGUAS: Adding fr.
14345         * po/fr.po: Adding french translation.
14346
14347 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14348
14349         * gst/parse/grammar.y:
14350         * po/POTFILES.in:
14351         * po/nl.po:
14352         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
14353           translate parsing error messages
14354
14355 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14356
14357         * po/POTFILES.in: adding gst-launch
14358         * po/nl.po: updated translation, all 99 strings translated
14359         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
14360         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
14361           fix strings for translation
14362
14363 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14364
14365         * gst/gst.c:
14366           - capitalize beginnings of popt options
14367           - fix strings for translation
14368           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
14369
14370 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14371
14372         * po/README: add some notes on how to update translations
14373
14374 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14375
14376         * ABOUT-NLS: removed, is autogenerated from autopoint
14377         * autogen.sh: add autopoint stuff
14378         * configure.ac: fix up gettext stuff
14379         * gst/Makefile.am: add i18n headers to noinst_HEADERS
14380         * gst/elements/gsttypefindelement.c: add header include
14381         * gst/gettext.h: add header, copy from system-installed header
14382         * gst/gst-i18n-app.h: to be included by each app having translations
14383         * gst/gst-i18n-lib.h: to be included by each lib having translations
14384         * gst/gst.c: (init_pre): fix up gettext calls
14385         * gst/gst_private.h: remove i18n stuff, moving to separate headers
14386         * po/LINGUAS: the new way to specify translations present
14387         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
14388         * po/Makevars: the variables filled in for GStreamer
14389         * po/POTFILES.in: added new files with translations
14390         * po/de.po: has new strings
14391         * po/nl.po: readded, has new strings
14392
14393 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14394
14395         * gst/gsttag.c: fix some strings marked for translation
14396
14397 2004-01-13  Iain <iain@prettypeople.org>
14398
14399         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
14400         group when we add an element to it, cos we unref it when we remove one
14401
14402 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
14403
14404         * testsuite/debug/commandline.c: (debug_not_reached):
14405         * testsuite/debug/output.c: (check_message):
14406           fix testsuite
14407
14408 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14409
14410         * examples/cutter/.cvsignore:
14411         * examples/helloworld/.cvsignore:
14412         * examples/launch/.cvsignore:
14413         * examples/manual/.cvsignore:
14414         * examples/mixer/.cvsignore:
14415         * examples/pingpong/.cvsignore:
14416         * examples/plugins/.cvsignore:
14417         * examples/queue/.cvsignore:
14418         * examples/queue2/.cvsignore:
14419         * examples/queue3/.cvsignore:
14420         * examples/queue4/.cvsignore:
14421         * examples/retag/.cvsignore:
14422         * examples/thread/.cvsignore:
14423         * examples/typefind/.cvsignore:
14424         * examples/xml/.cvsignore:
14425         * gst/.cvsignore:
14426         * gst/autoplug/.cvsignore:
14427         * gst/elements/.cvsignore:
14428         * gst/indexers/.cvsignore:
14429         * gst/parse/.cvsignore:
14430         * gst/registries/.cvsignore:
14431         * gst/schedulers/.cvsignore:
14432         * libs/gst/bytestream/.cvsignore:
14433         * libs/gst/control/.cvsignore:
14434         * libs/gst/getbits/.cvsignore:
14435         * tests/.cvsignore:
14436         * tests/bufspeed/.cvsignore:
14437         * tests/instantiate/.cvsignore:
14438         * tests/memchunk/.cvsignore:
14439         * tests/muxing/.cvsignore:
14440         * tests/sched/.cvsignore:
14441         * tests/seeking/.cvsignore:
14442         * tests/threadstate/.cvsignore:
14443         * testsuite/.cvsignore:
14444         * testsuite/caps/.cvsignore:
14445         * testsuite/cleanup/.cvsignore:
14446         * testsuite/dynparams/.cvsignore:
14447         * testsuite/plugin/.cvsignore:
14448         * tools/.cvsignore:
14449           update - this is huge, because it includes *.bb, *.bbg and *.da files
14450           which are generated for gcov.
14451
14452 2004-01-11  David Schleef  <ds@schleef.org>
14453
14454         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
14455         a function to parse integers in ways that strto[u]l() does not.
14456
14457 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14458
14459         * tools/gst-inspect.c: (print_caps):
14460           improve output of caps a bit
14461
14462 2004-01-11  David Schleef  <ds@schleef.org>
14463
14464         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
14465         inherit correct flags (READONLY and DONTKEEP).
14466
14467 2004-01-11  David Schleef  <ds@schleef.org>
14468
14469         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
14470         (gst_filesrc_map_region):
14471         * gst/gstbuffer.c: (_gst_buffer_initialize),
14472         (_gst_buffer_sub_free), (gst_buffer_default_copy),
14473         (gst_buffer_new), (gst_buffer_create_sub),
14474         (gst_buffer_is_span_fast), (gst_buffer_span):
14475         * gst/gstbuffer.h:
14476         Change GstBuffer private structure element names. (all files)
14477         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
14478         (gst_queue_link):
14479         * gst/gstqueue.h:
14480         Implement getcaps/pad_link functions that handle the case where
14481         there are data in the queue.
14482
14483 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14484
14485         * gst/elements/gstbufferstore.c:
14486           initialize debugging structure correctly
14487         * gst/elements/gsttee.c: (gst_tee_set_property):
14488           g_object_notify when property was changed
14489         * gst/elements/gsttypefindelement.c:
14490         (gst_type_find_element_change_state):
14491           clear caps correctly
14492
14493 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14494
14495         * gst/gstqueue.c: (gst_queue_init):
14496           Use better defaults for when a queue should block. This
14497           gets rid of jerky playback for quite a few files.
14498           It takes more memory.
14499
14500 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
14501
14502         (gst_xml_registry_parse_padtemplate):
14503           make critical message slightly more useful
14504
14505 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14506
14507         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
14508         (gst_debug_message_get), (gst_debug_log_default):
14509         * gst/gstinfo.h:
14510           Change gst_debug_log(_valist) to take a const format string.
14511           Change prototype of log function and functions using those to 
14512           take a GstDebugMessage instead of a string that requires using
14513           gst_debug_message_get.
14514
14515 2004-01-08  David Schleef  <ds@schleef.org>
14516
14517         * Makefile.am:
14518         * configure.ac:
14519         Add option --enable-gcov to build GStreamer with -fprofile-arcs
14520         and -ftest-coverage, which allows gcov to show information about
14521         testsuite coverage.
14522
14523 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14524
14525         * gst/gstutils.h:
14526           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
14527           GST_PARENT_CALL_WITH_DEFAULT
14528         * gst/elements/gstaggregator.c: 
14529         * gst/elements/gstbufferstore.c: 
14530         * gst/elements/gstfakesink.c: 
14531         * gst/elements/gstfakesrc.c: 
14532         * gst/elements/gstfdsink.c: 
14533         * gst/elements/gstfdsrc.c: 
14534         * gst/elements/gstfilesink.c: 
14535         * gst/elements/gstfilesrc.c: 
14536         * gst/elements/gstidentity.c: 
14537         * gst/elements/gstmd5sink.c: 
14538         * gst/elements/gstmultidisksrc.c:
14539         * gst/elements/gstpipefilter.c: 
14540         * gst/elements/gstshaper.c:
14541         * gst/elements/gststatistics.c:
14542         * gst/elements/gsttee.c:
14543         * gst/elements/gsttypefindelement.c:
14544           use them.
14545
14546 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
14547
14548         * docs/gst/gstreamer-docs.sgml: remove props
14549         * docs/gst/gstreamer-sections.txt: remove props
14550         * docs/gst/tmpl/gst.sgml:
14551         * docs/gst/tmpl/gstbin.sgml:
14552         * docs/gst/tmpl/gstbuffer.sgml:
14553         * docs/gst/tmpl/gstcaps.sgml:
14554         * docs/gst/tmpl/gstclock.sgml:
14555         * docs/gst/tmpl/gstelement.sgml:
14556         * docs/gst/tmpl/gstindex.sgml:
14557         * docs/gst/tmpl/gstobject.sgml:
14558         * docs/gst/tmpl/gstpad.sgml:
14559         * docs/gst/tmpl/gstpadtemplate.sgml:
14560         * docs/gst/tmpl/gstreamer-unused.sgml:
14561         * docs/gst/tmpl/gstthread.sgml:
14562         * docs/gst/tmpl/gstxml.sgml:
14563           sync with code reorganization
14564
14565 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
14566
14567         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
14568         Make the 'Could not find compatible pad' message more informative.
14569
14570 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14571                                                                                 
14572         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
14573           Fix for if we pass NULL as property to location.
14574         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
14575         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
14576           Fix for instantiate-test (see below).
14577         * gst/gststructure.c: (_gst_structure_parse_value):
14578           Fix compile error on gcc-2.96.
14579         * configure.ac:
14580         * tests/Makefile.am:
14581         * tests/instantiate/Makefile.am:
14582         * tests/instantiate/create.c: (create_all_elements), (main):
14583           Add a test that instantiates all elements. This makes it easy to
14584           track dead code for old API/design (like setting event functions
14585           on sink pads and so on).
14586
14587 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
14588
14589         * gst/gstcaps.c: (gst_caps_append_structure):
14590           Move the poisoning to allow a NULL structure
14591         * gst/gstevent.c: (_gst_event_free):
14592           When freeing a navigation event, free the structure
14593           also
14594
14595 2004-01-04  David Schleef  <ds@schleef.org>
14596
14597         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
14598         Remove usage of gst_pad_proxy_fixate.
14599         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
14600         (gst_caps_split_one), (gst_caps_replace):
14601         Add poisoning code.
14602         * gst/gstmarshal.list:
14603         Add pointer__pointer for fixate signal
14604         * gst/gstpad.c: (gst_real_pad_class_init),
14605         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
14606         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
14607         (gst_pad_set_explicit_caps), (gst_pad_template_new):
14608         Add poisoning code. Add fixate signal on RealPad. Change
14609         set_explicit_caps() to take const GstCaps, like try_set_caps().
14610         * gst/gstpad.h:
14611         * testsuite/caps/Makefile.am:
14612         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
14613
14614 2004-01-03  David Schleef  <ds@schleef.org>
14615
14616         * gst/elements/gsttypefindelement.c:
14617         (gst_type_find_element_have_type), (gst_type_find_element_init):
14618         Use gst_pad_use_explicit_caps for src pad.
14619         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
14620         before using it.
14621
14622 2004-01-03  David Schleef  <ds@schleef.org>
14623
14624         * gst/gstelement.c: (gst_element_link_pads_filtered),
14625         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
14626         that linking was successful.
14627         * gst/gstpad.c: (gst_pad_link_free),
14628         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
14629         (gst_pad_link_try), (gst_pad_link_unnegotiate),
14630         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
14631         GstPadLinkReturn correctly between functions, and don't fail
14632         when DELAYED is used (DELAYED is very important).  Better
14633         cleanup on unlinking and unnegotiation.  Should fix some spider
14634         bugs.
14635
14636 2004-01-02  David Schleef  <ds@schleef.org>
14637
14638         * gst/gstelement.c: (gst_element_class_init),
14639         (gst_element_base_class_init): ->padtemplates should be cleared
14640         in base_init, since we need to have a fresh list for every
14641         class.  (Alternately, we chould copy the list and share the
14642         actual pad templates (not the list), but that would require
14643         changing every plugin to move pad template registration from
14644         base_init to class_init.)
14645
14646 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14647
14648         * gst/gstelement.c: (gst_element_class_add_pad_template):
14649           Refuse registering a pad template if another pad template
14650           with the same name already exists (#114715).
14651
14652 2004-01-02  David Schleef  <ds@schleef.org>
14653
14654         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
14655         (gst_caps_is_equal_fixed): Add new function.
14656         * gst/gstcaps.h: ditto.
14657         * gst/gstpad.c: (gst_real_pad_class_init),
14658         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
14659         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
14660         check new caps against existing caps -- if they're the same, return
14661         OK without renegotiating.  caps-nego-failed signal fixed so that
14662         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
14663         to save an extra caps copy.  Don't complete negotiation if a pad
14664         link function returns DELAYED.
14665
14666 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14667
14668         * gst/gstpad.c: (gst_pad_try_relink_filtered):
14669           Fix wrong g_return_if_fail
14670
14671 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
14672
14673         * gst/gstbin.c: (gst_bin_class_init):
14674         Change the marshalling of element_added/element_removed
14675         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
14676         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
14677
14678 2004-01-01  David Schleef  <ds@schleef.org>
14679
14680         * gst/gstpad.c: (gst_pad_set_explicit_caps),
14681         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
14682         (gst_pad_use_explicit_caps):
14683         * gst/gstpad.h:
14684         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
14685         to use an internal getcaps and link fuction so that negotiation
14686         always results in the explicitly set caps.
14687         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
14688         are particularly useful for decoders.
14689
14690 2003-12-31  David Schleef  <ds@schleef.org>
14691
14692         * gst/elements/gstidentity.c: (gst_identity_class_init),
14693         (gst_identity_init), (gst_identity_chain),
14694         (gst_identity_set_property), (gst_identity_get_property):
14695         * gst/elements/gstidentity.h:
14696         * gst/gstqueue.c: (gst_queue_init):
14697           Negotiation fixes.
14698
14699 2003-12-31  David Schleef  <ds@schleef.org>
14700
14701         * gst/gstcaps.c: (gst_caps_intersect),
14702         (_gst_caps_normalize_foreach), (gst_caps_normalize):
14703           Implement gst_caps_normalize().
14704         * testsuite/caps/normalisation.c: (main):
14705           Add an additional test
14706
14707 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14708
14709         * gst/gstqueue.c: (gst_queue_init):
14710           use gst_pad_proxy_getcaps()
14711
14712 2003-12-31  David Schleef  <ds@schleef.org>
14713
14714         * gst/elements/gstshaper.c: (gst_shaper_link):
14715         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
14716         * gst/gstqueue.c: (gst_queue_link):
14717           Negotiation fixes.
14718
14719 2003-12-31  David Schleef  <ds@schleef.org>
14720
14721         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
14722         * gst/gstpad.h: Add functions that are useful as default pad
14723         link and fixate functions for elements.
14724
14725 2003-12-30  David Schleef  <ds@schleef.org>
14726
14727         * gst/gstpad.c: (gst_pad_link_try):
14728           Fix segfault when attempting to return to old caps
14729
14730 2003-12-29  David Schleef  <ds@schleef.org>
14731
14732         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
14733         (gst_caps_structure_simplify), (gst_caps_simplify):
14734         * gst/gstcaps.h:
14735           Add simplify function
14736         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
14737         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
14738         * gst/gstpad.h:
14739           Copy over srcnotify, sinknotify when calling old pad_link
14740           functions.  Add new is_negotiated() function.
14741         * gst/gststructure.c: (gst_structure_copy):
14742           Fix an incredibly stupid bug that should have been noticed
14743           weeks ago.  _copy() returned the argument, not the new copy.
14744
14745 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14746
14747         * gst/gstcaps.c: (gst_caps_append):
14748           add sanity checks
14749         * gst/gstcaps.h: (gst_caps_debug):
14750           remove, it doesn't exist anymore.
14751         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
14752         (gst_element_threadsafe_properties_post_run):
14753           make debugging messages not clutter up THREAD debug category
14754         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
14755         (gst_element_change_state):
14756           update to new caps API
14757         * gst/gstinterface.c: (gst_implements_interface_cast):
14758           don't put vital code in g_return_if_fail
14759         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
14760         (gst_pad_link_filtered):
14761           add pst_pad_try_link and use it.
14762         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
14763           implement correctly, deprecate first one.
14764         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
14765           add and implement.
14766         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
14767           implement.
14768         (gst_pad_get_negotiated_caps):
14769           add and implement. Make GST_PAD_CAPS call this function.
14770         (gst_pad_get_caps):
14771           remove unneeded check..
14772         (gst_pad_recover_caps_error):
14773           disable, always return FALSE.
14774         (gst_real_pad_dispose):
14775           don't free caps and appfilter anymore, they're unused.
14776         * gst/gstpad.h:
14777           Reflect changes mentioned above.
14778         * gst/gstsystemclock.c: (gst_system_clock_wait):
14779           Make 'clock is way behind' a debugging message.
14780         * gst/gstthread.c: (gst_thread_change_state):
14781           Fix debugging message
14782
14783 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
14784
14785         * gst/gstinfo.h:
14786           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
14787         * docs/gst/tmpl/gstreamer-unused.sgml:
14788           removed all traces of cvs conflicts
14789
14790 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14791
14792         * configure.ac:
14793         * gst/schedulers/cothreads_compat.h:
14794         * libs/Makefile.am:
14795           remove last instances of wingo cothread usage
14796
14797 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14798
14799         * gst/gstplugin.c:
14800         * gst/gstversion.h.in:
14801         * gst/parse/grammar.y:
14802           change comment block from /** to /* when not gtk-doc comments
14803
14804 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14805
14806         * gst/gst.c: whitespace and doc style fixes
14807
14808 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14809
14810         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
14811
14812 2003-12-24  Colin Walters  <walters@verbum.org>
14813
14814         * gst/elements/gsttypefindelement.c:
14815           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
14816           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
14817           Don't double-free caps.
14818
14819 2003-12-23  David Schleef  <ds@schleef.org>
14820
14821         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
14822           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
14823           Many little fixes and additions of debug statements to
14824           get rhythmbox working.
14825
14826 2003-12-23  Colin Walters  <walters@verbum.org>
14827
14828         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
14829         Use GST_PAD_LINK_SUCCESSFUL.
14830
14831 2003-12-23  David Schleef  <ds@schleef.org>
14832
14833         * gst/elements/gstaggregator.c:
14834         * gst/elements/gsttee.c:
14835           Use gst_pad_proxy_getcaps().
14836         * gst/gstpad.c:
14837         * gst/gstpad.h:
14838           Add gst_pad_proxy_getcaps(), which filter elements can use
14839           as a generic getcaps implementation.
14840           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
14841           was advertised.
14842
14843 2003-12-23  David Schleef  <ds@schleef.org>
14844
14845         * gst/gstpad.c:
14846           Rearrange/rewrite much of the pad negotiation code, since it
14847           resembled pasta.  This actually changes the way some
14848           negotiation works, since the previous code was inconsistent
14849           depending on how it was invoked.  Add (internal) structure
14850           GstPadLink, which is used to hold some information (more in
14851           the future) about the link between two pads.  Fixes a number
14852           of bugs, including random lossage of filter caps when the
14853           initial negotiation is delayed.  A few functions are still
14854           unimplemented.
14855         * gst/gstpad.h:
14856           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
14857           these when testing GstPadLinkReturn values instead of comparing
14858           directly.
14859
14860 2003-12-23  David Schleef  <ds@schleef.org>
14861
14862         * gst/gstvalue.c: 
14863         * gst/gstvalue.h:
14864           Rearrange lots of code.  Change registration of compare function
14865           into registration of compare/serialize/deserialize functions.
14866           Doesn't include implementation of gst_value_[de]serialize(),
14867           but that should be easy.
14868
14869 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
14870
14871         * docs/gst/gstreamer-sections.txt:
14872         * docs/gst/tmpl/gstprops.sgml: removed
14873         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
14874           David removed props and caps code, so let's remove their docs as well.
14875           Removed all no longer existing symbols from gstreamer-sections.txt
14876           
14877 2003-12-22  Colin Walters  <walters@verbum.org>
14878
14879         * gst/gsttaginterface.c, gst/gsttaginterface.h,
14880           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
14881           of tags directly.
14882
14883 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14884
14885         * gst/elements/gstelements.c:
14886           Set ranks of elements to NONE, so the autoplugger doesn't use them.
14887         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
14888           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
14889           gst_caps (peer).
14890
14891 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14892
14893         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
14894         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
14895         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
14896         (gst_spider_identity_sink_loop_type_finding):
14897         * gst/autoplug/gstspideridentity.h:
14898           Fix autoplugging in spider element, so it works with new caps.
14899           This was mainly caused by identifying empty caps incorrectly.
14900
14901 2003-12-22  David Schleef  <ds@schleef.org>
14902
14903         * gststructure.c, gstvalue.c, gstvalue.h: Add
14904           gst_value_init_and_copy() and use it, to avoid silly mistakes in
14905           using g_value_copy()
14906
14907 2003-12-21  David Schleef  <ds@schleef.org>
14908
14909         * many, many files: Merge CAPS branch.  This includes:
14910           - implemention of GstValue and several GstValue types
14911           - implemention of GstStructure
14912           - entire rewrite of GstCaps
14913           - removal of GstProps
14914           - many changes to GstPad to compensate for new caps paradigm
14915           - removal of GstBufferpool
14916         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
14917         gstvalue.h, gst/gstcaps[2]*.[ch]:
14918           - rename gstcaps2.[ch] to gstcaps.[ch]
14919
14920 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14921
14922         * gst/gstqueue.c: (gst_queue_handle_pending_events),
14923         (gst_queue_chain), (gst_queue_handle_src_event):
14924           implement timeout for sending events. Workaround for if the
14925           pipeline on this queue is not passing any data.
14926
14927 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
14928                                                                                 
14929         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
14930         * moved CVS to freedesktop.org