docs/libs/Makefile.am: Change sinclude to include
[platform/upstream/gstreamer.git] / ChangeLog
1 2004-04-19  David Schleef  <ds@schleef.org>
2
3         * docs/libs/Makefile.am: Change sinclude to include
4         * docs/gst/Makefile.am: same
5         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
6
7 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8
9         * po/LINGUAS:
10         * po/uk.po:
11           Added Ukrainian translation (Maxim V. Dziumanenko)
12
13 2004-04-19  Johan Dahlin  <johan@gnome.org>
14
15         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
16         checking here, do it before calling the function.
17         Clean up, use for loops instead of while loops while iterating
18         over lists.
19
20         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
21         in debug message.
22         (gst_spider_create_and_plug): Improve debug message.
23         General: Replace while loops which iterates over GLists with for
24         loops. Which are much cleaner, improves readability, especially
25         for gst_spider_identity_plug
26
27         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
28         fixes bug 140477
29
30 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
31
32         * po/LINGUAS:
33         * po/tr.po:
34           Added Turkish translation (Baris Cicek)
35
36 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
37
38         * docs/faq/troubleshooting.xml:
39           Mention gst-register in the FAQ (fixes 139045).
40
41 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
42
43         * docs/gst/gstreamer-sections.txt:
44
45 2004-04-17  Benjamin Otte  <otte@gnome.org>
46
47         * gst/gstelement.c: (gst_element_dispose):
48           simplify
49         * gst/gstpad.c: (gst_pad_call_chain_function):
50           don't create loads of events due to bad macro usage
51
52 2004-04-16  David Schleef  <ds@schleef.org>
53
54         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
55         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
56         * gst/gstvalue.c: (gst_value_serialize_buffer),
57         (gst_value_deserialize_buffer), (gst_type_is_fixed),
58         (_gst_value_initialize): Create a new function gst_type_is_fixed()
59         to indicate types that are fixed wrt caps or not.  Switching to
60         this function fixes (bug #140298).
61         * gst/gstvalue.h:
62
63 2004-04-16  David Schleef  <ds@schleef.org>
64
65         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
66         for GST_UNALIGNED_ACESS, since we essentially know which archs
67         are ok.
68
69 2004-04-17  Benjamin Otte  <otte@gnome.org>
70
71         * docs/gst/Makefile.am:
72           ignore gst/parse directory when building docs (fixes #140205)
73
74 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
75
76         * testsuite/refcounting/mem.c: (vmsize):
77           do error checking
78
79 2004-04-16  Johan Dahlin  <johan@gnome.org>
80
81         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
82         and gst_pad_call_get_function.
83
84 2004-04-15  David Schleef  <ds@schleef.org>
85
86         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
87         checks if we can access unaligned memory.
88         * configure.ac: Use it.
89
90 2004-04-16  Benjamin Otte  <otte@gnome.org>
91
92         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
93         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
94         * gst/elements/gstfilesrc.h:
95           s/seek_happened/need_discont/ and require discont before sending any
96           data
97
98 2004-04-15  David Schleef  <ds@schleef.org>
99
100         * gst/gstvalue.c: (gst_value_serialize_buffer),
101         (gst_value_deserialize_buffer), (_gst_value_initialize):
102         Register these types as fundamental types. (bug #140015)
103
104 2004-04-16  Benjamin Otte  <otte@gnome.org>
105
106         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
107         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
108         (gst_pad_pull):
109           implement enforcing discont events before buffers are passed. This
110           allows state changes of only some elements and later correctly going
111           on where they left off (or in short: you can now set audio sinks to
112           NULL to release the device when the pipeline is paused)
113         * gst/gstpad.c: (gst_pad_call_chain_function),
114         (gst_pad_call_get_function):
115         * gst/gstpad.h:
116           add gst_pad_call_chain_function and gst_pad_call_get_function for
117           scheduler interaction. They are required because of the changes
118           above.
119         * gst/schedulers/entryscheduler.c: (get_buffer),
120         (gst_entry_scheduler_chain_wrapper),
121         (gst_entry_scheduler_get_wrapper),
122         (gst_entry_scheduler_state_transition),
123         (gst_entry_scheduler_pad_link):
124         * gst/schedulers/gstbasicscheduler.c:
125         (gst_basic_scheduler_chain_wrapper),
126         (gst_basic_scheduler_src_wrapper),
127         (gst_basic_scheduler_chainhandler_proxy),
128         (gst_basic_scheduler_gethandler_proxy),
129         (gst_basic_scheduler_cothreaded_chain),
130         (gst_basic_scheduler_chain_elements):
131         * gst/schedulers/gstoptimalscheduler.c:
132         (get_group_schedule_function), (pad_clear_queued),
133         (gst_opt_scheduler_pad_link):
134           use the new functions instead of calling get/chain-functions
135           directly.
136
137 2004-04-15  David Schleef  <ds@schleef.org>
138
139         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
140         * docs/gst/tmpl/gstinfo.sgml: same
141         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
142         gtk-doc put here.
143         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
144         * examples/queue/queue.c: (main):  We iterate pipelines, not
145         bins.  (bug #139996)
146
147 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
148
149         * docs/pwg/advanced-types.xml:
150           Add MS RLE support. Also document Qt RLE although I have no sample
151           files for that yet. And document an extra property for ADPCM.
152
153 2004-04-15  David Schleef  <ds@schleef.org>
154
155         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
156         (_gst_plugin_fault_handler_setup):  Disable more stuff on
157         Windows.
158
159 2004-04-15  David Schleef  <ds@schleef.org>
160
161         * gst/gstinfo.c: (_gst_debug_init): Change some internal
162         symbol names to not conflict with new gstinfo.h symbols.
163         * gst/gstinfo.h: Add inline functions for all those crazy
164         compilers that don't know how to handle variadic macros (MSVC).
165
166 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
167
168         * configure.ac: bump nano to 1
169
170 === release 0.8.1 ===
171
172 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
173
174         * NEWS:
175         * RELEASE:
176         * configure.ac:
177           releasing 0.8.1, "Snow Brigade"
178
179 2004-04-14  David Schleef  <ds@schleef.org>
180
181         * testsuite/Makefile.am: define tests_ignore
182         * testsuite/Rules: Added new tests_ignore, which get compiled,
183         but not run (generally because they're inconsistent or have
184         heisenbugs).  Now we can ensure all the .c files compile in
185         testsuite/.
186         * testsuite/bins/Makefile.am: define tests_ignore
187         * testsuite/bytestream/Makefile.am:
188         * testsuite/caps/Makefile.am:
189         * testsuite/clock/Makefile.am:
190         * testsuite/debug/Makefile.am:
191         * testsuite/debug/global.c: (gst_debug_log_one),
192         (gst_debug_log_two): Fix compilation problem.
193         * testsuite/dynparams/Makefile.am:
194         * testsuite/elements/Makefile.am:
195         * testsuite/ghostpads/Makefile.am:
196         * testsuite/indexers/Makefile.am:
197         * testsuite/parse/Makefile.am:
198         * testsuite/plugin/Makefile.am:
199         * testsuite/refcounting/Makefile.am:
200         * testsuite/refcounting/element_pad.c: (main): Don't return leak
201         results, because it's not calculated correctly.
202         * testsuite/refcounting/pad.c: (main): same
203         * testsuite/states/Makefile.am:
204         * testsuite/tags/Makefile.am:
205         * testsuite/threads/Makefile.am:
206
207 2004-04-14  David Schleef  <ds@schleef.org>
208
209         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
210         generating bad code around the cpu detection asm code.
211
212 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
213
214         * tools/gst-inspect.c: (print_element_info):
215           print numeric version of rank as well, since we added some - 1
216           rank values to elements
217
218 2004-04-13  David Schleef  <ds@schleef.org>
219
220         * configure.ac:  Disable various code when compiling for MinGW.
221         * gst/elements/Makefile.am:
222         * gst/elements/gstelements.c:
223         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
224         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
225         * gst/registries/gstxmlregistry.c: (make_dir):
226
227 2004-04-13  David Schleef  <ds@schleef.org>
228
229         * gst/Makefile.am:
230         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
231         assembly.
232         * gst/gstcpuid_i386.s: remove
233
234 2004-04-13  David Schleef  <ds@schleef.org>
235
236         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
237         seems to think it needs to be done.
238         * docs/gst/tmpl/gstfakesink.sgml:
239         * docs/gst/tmpl/gstfakesrc.sgml:
240         * docs/gst/tmpl/gstfdsink.sgml:
241         * docs/gst/tmpl/gstfdsrc.sgml:
242         * docs/gst/tmpl/gstfilesink.sgml:
243         * docs/gst/tmpl/gstfilesrc.sgml:
244         * docs/gst/tmpl/gstidentity.sgml:
245         * docs/gst/tmpl/gstmd5sink.sgml:
246         * docs/gst/tmpl/gstmultifilesrc.sgml:
247         * docs/gst/tmpl/gstpipefilter.sgml:
248         * docs/gst/tmpl/gstshaper.sgml:
249         * docs/gst/tmpl/gstspider.sgml:
250         * docs/gst/tmpl/gstspideridentity.sgml:
251         * docs/gst/tmpl/gststatistics.sgml:
252         * docs/gst/tmpl/gsttee.sgml:
253         * docs/gst/tmpl/gsttypefind.sgml:
254         * docs/gst/tmpl/gstutils.sgml:
255
256 2004-04-13  David Schleef  <ds@schleef.org>
257
258         * configure.ac: Changes to remove POSIXisms (mmap in this case)
259         and to build DLLs on Windows.
260         * gst/Makefile.am:
261         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
262         (gst_filesrc_open_file):
263         * gst/schedulers/Makefile.am:
264
265 2004-04-13  David Schleef  <ds@schleef.org>
266
267         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
268         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
269         fixating lists.
270
271 2004-04-12  David Schleef  <ds@schleef.org>
272
273         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
274         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
275         to using it.
276         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
277         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
278         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
279         * gst/gststructure.c: (gst_structure_set_valist),
280         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
281         support for buffers.
282         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
283         intended to be const.
284         * gst/gsttag.h: same
285         * gst/gstvalue.c: (gst_value_serialize_buffer),
286         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
287         to (de)serialize buffers.
288         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
289         * testsuite/caps/string-conversions.c: (main):
290         * testsuite/caps/value_serialize.c: add new test
291
292 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
293
294         * docs/pwg/advanced-types.xml:
295           Document MS video 1 (video/x-msvideocodec) mimetype/format.
296
297 2004-04-11  Benjamin Otte  <otte@gnome.org>
298
299         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
300           rename categories to basic_*
301         * gst/schedulers/gstbasicscheduler.c: 
302         (gst_basic_scheduler_chain_wrapper),
303         (gst_basic_scheduler_chainhandler_proxy),
304         (gst_basic_scheduler_gethandler_proxy),
305         (gst_basic_scheduler_eventhandler_proxy):
306           debugging category fixes - put common stuff in log category
307         * gst/schedulers/gstbasicscheduler.c: 
308         (gst_basic_scheduler_chain_elements):
309           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
310           active and linking two active chains
311
312 2004-04-10  Benjamin Otte  <otte@gnome.org>
313
314         * docs/pwg/intro-preface.xml:
315           fix dead links and remove reference to Wiki
316
317 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
318
319         * gst/schedulers/gstbasicscheduler.c:
320           make sure we can switch back to the main function if we're still in
321           the main function (supposed to fix #139617)
322         * gst/schedulers/gthread-cothreads.h:
323           don't throw an error when switching to the same cothread
324
325 2004-04-09  Benjamin Otte  <otte@gnome.org>
326
327         * gst/gstbin.c: (gst_bin_get_type):
328         * gst/gstclock.c: (gst_clock_get_type):
329         * gst/gstindex.c: (gst_index_get_type):
330         * gst/gstobject.c: (gst_object_get_type),
331         (gst_signal_object_get_type):
332         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
333         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
334         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
335         * gst/gstqueue.c: (gst_queue_get_type):
336         * gst/gstregistry.c: (gst_registry_get_type):
337         * gst/gstsystemclock.c: (gst_system_clock_get_type):
338         * gst/gstthread.c: (gst_thread_get_type):
339           don't use memchunks for these objects, use malloc instead
340
341 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
342
343         * docs/gst/.cvsignore:
344         * docs/gst/Makefile.am:
345         * docs/gst/gstreamer-sections.txt:
346         * docs/gst/tmpl/gstaggregator.sgml:
347         * docs/gst/tmpl/gstbuffer.sgml:
348         * docs/gst/tmpl/gstclock.sgml:
349         * docs/gst/tmpl/gstelement.sgml:
350         * docs/gst/tmpl/gstfakesink.sgml:
351         * docs/gst/tmpl/gstfakesrc.sgml:
352         * docs/gst/tmpl/gstfdsink.sgml:
353         * docs/gst/tmpl/gstfdsrc.sgml:
354         * docs/gst/tmpl/gstfilesink.sgml:
355         * docs/gst/tmpl/gstfilesrc.sgml:
356         * docs/gst/tmpl/gstidentity.sgml:
357         * docs/gst/tmpl/gstindex.sgml:
358         * docs/gst/tmpl/gstinfo.sgml:
359         * docs/gst/tmpl/gstmd5sink.sgml:
360         * docs/gst/tmpl/gstmultifilesrc.sgml:
361         * docs/gst/tmpl/gstpad.sgml:
362         * docs/gst/tmpl/gstpipefilter.sgml:
363         * docs/gst/tmpl/gstpipeline.sgml:
364         * docs/gst/tmpl/gstpluginfeature.sgml:
365         * docs/gst/tmpl/gstqueue.sgml:
366         * docs/gst/tmpl/gstregistry.sgml:
367         * docs/gst/tmpl/gstscheduler.sgml:
368         * docs/gst/tmpl/gstshaper.sgml:
369         * docs/gst/tmpl/gstspider.sgml:
370         * docs/gst/tmpl/gstspideridentity.sgml:
371         * docs/gst/tmpl/gststatistics.sgml:
372         * docs/gst/tmpl/gstsystemclock.sgml:
373         * docs/gst/tmpl/gsttee.sgml:
374         * docs/gst/tmpl/gstthread.sgml:
375         * docs/gst/tmpl/gsttypefind.sgml:
376         * docs/gst/tmpl/gstutils.sgml:
377           further doc build fixes
378
379 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
380
381         * docs/gst/Makefile.am:
382           make docs exit on scanning problems
383           fix nonsrcdir build issues
384         * docs/gst/gstreamer-sections.txt:
385           adding stuff from -unused
386         * gst/gstqueue.h:
387           create GstQueueSize
388         * gst/schedulers/cothreads_compat.h:
389           fix cothread warnings
390
391 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
392
393         * docs/gst/gstreamer-sections.txt:
394           remove defines deprecated by Benjamin
395
396 2004-04-07  Benjamin Otte  <otte@gnome.org>
397
398         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
399           when the buffer is complete, don't check if other buffers are needed
400         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
401           check that the offset is >0 so we don't try to read before the
402           beginning of the file
403         * gst/gstpad.c: (gst_pad_set_pad_template):
404           sink the template, so we don't end up with 130k pad templates
405
406 2004-04-06  Benjamin Otte  <otte@gnome.org>
407
408         * gst/autoplug/gstspider.c: (gst_spider_link_add):
409           don't ref the element, adding already reffed it. And we didn't unref
410           it later anyway... (huge memleak when you used many spider elements)
411         * gst/gstelement.c: (gst_element_base_class_finalize):
412         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
413         (gst_element_register):
414         * gst/gsturi.c: (gst_element_make_from_uri):
415           use gst_object_(un)ref instead of g_object(un)ref
416
417 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
418
419         * gst/gstbuffer.h:
420           remove macro that wouldn't work anymore because struct member has
421           been removed.
422         * gst/schedulers/entryscheduler.c: (schedule_forward):
423           fix segfault for unconnected pads
424         
425 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
426
427         reviewed by David Schleef <ds@schleef.org>
428
429         * gst/gstinfo.h:
430           *_FORMAT modifiers should require putting a % in front of them for
431           consistency reasons.
432
433 2004-04-05  Colin Walters  <walters@redhat.com>
434
435         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
436         space.
437
438 2004-04-05  Benjamin Otte  <otte@gnome.org>
439
440         * configure.ac:
441         * gst/Makefile.am:
442         * gst/gst_private.h:
443         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
444           add support for detecting if GStreamer runs inside valgrind.
445           requires valgrind (d'oh) and --enable-debug for correct cdetection.
446           print a big message in valgrind that GStreamer has detected it's
447           running inside and might now use different code.
448         * gst/gstmemchunk.c: (populate), (free_area),
449         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
450         (gst_mem_chunk_free):
451           flag memchunks for valgrind, so it can detect leaking of chunks.
452           This allows detecting leaks of GstBuffer and GstEvent correctly
453           inside valgrind.
454
455 2004-04-05  David Schleef  <ds@schleef.org>
456
457         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
458           jensgr@gmx.net (Jens Granseuer)
459
460 2004-04-05  David Schleef  <ds@schleef.org>
461
462         * gst/gstbuffer.c: (_gst_buffer_sub_free),
463         (gst_buffer_default_free), (gst_buffer_default_copy),
464         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
465         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
466         structures in one place.
467
468 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
469
470         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
471
472 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
473
474         * testsuite/elements/Makefile.am:
475           disable test until it stops breaking make distcheck
476
477 2004-04-05  Johan Dahlin  <johan@gnome.org>
478
479         * po/sv.po: Updated translation
480
481 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
482
483         * gst/gstplugin.c: (gst_plugin_load_file):
484           fix segfault for when original plugin was loaded statically
485
486 2004-04-05  Benjamin Otte  <otte@gnome.org>
487
488         * testsuite/debug/category.c: (main):
489         * testsuite/debug/commandline.c: (main):
490         * testsuite/debug/output.c: (main):
491           fix tests to work again with debugging enabled
492
493 2004-04-05  Benjamin Otte  <otte@gnome.org>
494
495         * gst/schedulers/gstbasicscheduler.c:
496         (gst_basic_scheduler_pad_link):
497           fix to work with recent scheduling changes
498
499 2004-04-05  Benjamin Otte  <otte@gnome.org>
500
501         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
502         prepareChangeLog doesn't work when cvs indents):
503           don't throw an error when no element can be scheduled, there's too
504           many weird reasons why it doesn't work. Return STOPPED instead.
505           decoupled elemts' schedulability doesn't depend on bufpens.
506
507 2004-04-04  Benjamin Otte  <otte@gnome.org>
508
509         * gst/schedulers/gstbasicscheduler.c:
510         (gst_basic_scheduler_pad_select):
511           fix uninitialized variable warnings
512
513 2004-04-04  Benjamin Otte  <otte@gnome.org>
514
515         * gst/gstpad.c: (gst_pad_collect_valist):
516           fix uninitialized variable warning
517         * gst/schedulers/entryscheduler.c: (schedule_forward):
518           fix shadowed variable
519
520 2004-04-04  Benjamin Otte  <otte@gnome.org>
521
522         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
523         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
524         (gst_pad_select):
525         * gst/gstpad.h:
526         * gst/gstscheduler.c: (gst_scheduler_pad_select),
527         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
528         * gst/gstscheduler.h:
529           implement gst_pad_collect as replacement for gst_pad_select.
530           deprecate gst_pad_select and gst_scheduler_(un)lock_element
531           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
532           new pad_select, lock and unlock calls.
533         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
534         * gst/cothreads.h:
535         * gst/schedulers/cothreads_compat.h:
536         * gst/schedulers/gthread-cothreads.h:
537           remove unused cothread_lock and cothread_unlock calls
538         * gst/schedulers/entryscheduler.c:
539         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
540         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
541         (gst_entry_scheduler_pad_select):
542           update to new API
543         * gst/schedulers/gstbasicscheduler.c:
544         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
545         (gst_basic_scheduler_pad_select):
546           remove useless lock and unlock calls, update pad_select to new API
547           (untested)
548         * gst/schedulers/gstoptimalscheduler.c:
549         (gst_opt_scheduler_class_init):
550           remove useless select, lock and unlock function calls
551         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
552           use gst_pad_collect instead of gst_pad_select
553
554 2004-04-04  Benjamin Otte  <otte@gnome.org>
555
556         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
557         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
558         (schedule_next_element), (print_entry):
559           add can_schedule_pad to handle element states.
560           add schedule_forward to select the correct entry to schedule next
561
562 2004-04-03  Benjamin Otte  <otte@gnome.org>
563
564         * gst/schedulers/entryscheduler.c: 
565           remove unused variable, fix error inside Rb, fix compile warning in
566           unreachable code
567
568 2004-04-03  Benjamin Otte  <otte@gnome.org>
569
570         * gst/schedulers/entryscheduler.c:
571           completely revamp the inner workings, so it's a lot easier to
572           understand and extend
573
574 2004-04-03  Andy Wingo  <wingo@pobox.com>
575
576         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
577         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
578         This allows better introspection of pipeline topology.
579         (add_to_chain): Don't do trickery to put loop elements first;
580         rather, queue a chain sort by marking the chain as dirty.
581         (remove_from_chain): Mark the chain dirty.
582         (sort_chain): New function. Sorts the group list so that terminal
583         sinks are first. This means elements on the sink side will be
584         preferentially sscheduled before elements on the src side of the
585         pipeline.
586         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
587         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
588         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
589         (group_inc_link): Change argument and variable names to match the
590         new link structure member names (src and sink).
591         (group_dec_link): Add some description
592
593 2004-04-03  Benjamin Otte  <otte@gnome.org>
594
595         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
596         * gst/gstinfo.h:
597         * testsuite/debug/category.c: (main):
598         * testsuite/debug/commandline.c: (main):
599         * testsuite/debug/output.c: (main):
600         * testsuite/debug/printf_extension.c: (main):
601           fix to successfully build and test with --disable-gst-debug
602           configure switch (fixes #138705)
603
604 2004-04-03  Benjamin Otte  <otte@gnome.org>
605
606         * docs/pwg/building-boiler.xml:
607           add cvs login line and s/anonymous/anoncvs/
608
609 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
610
611         reviewed by Benjamin Otte  <otte@gnome.org>
612
613         * gst/gststructure.c: (gst_structure_free):
614           memleak fix: free fields array (partial fix for #134839)
615
616 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
617
618         * docs/random/ds/0.9-suggested-changes:
619           Add a note to change handoff use in fakesrc to be usable in
620           a more generic way (fakesrc should be renamed to appsrc or so).
621         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
622           Change signal type to scope, so we can fill the buffer in the
623           handoff handler (that's the whole use of this signal...).
624
625 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
626
627         * docs/pwg/other-ntoone.xml:
628           Document muxers and n-to-1 elements.
629
630 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
631
632         * gst/registries/gstxmlregistry.c
633         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
634         determine if a file is a G_MODULE. The old one discards paths
635         containing "so" somewhere in the middle. My home directory is
636         called "soto". Go figure...
637
638 2004-03-31  David Schleef  <ds@schleef.org>
639
640         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
641         to eventually deprecate gst_buffer_merge().  (bug: #136408)
642         * gst/gstbuffer.h:
643
644 2004-03-31  David Schleef  <ds@schleef.org>
645
646         * gst/gstvalue.c: (gst_value_union_int_int_range),
647         (gst_value_union_int_range_int_range), (gst_value_can_union),
648         (gst_value_union), (_gst_value_initialize):  Add some union
649         implementations.  We didn't have any previously.
650         * testsuite/caps/Makefile.am:
651         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
652         (gst_audioscale_getcaps), (test_caps), (main): A little test
653         that is the same as the caps manipulation in audioscale.
654
655 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
656
657         * docs/faq/general.xml:
658           add entry about "does gst support format X?"
659
660 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
661
662         * gst/gstthread.c:
663           fix docs
664         * gst/gstutils.h:
665           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
666
667 2004-03-30  Benjamin Otte  <otte@gnome.org>
668
669         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
670           set the offset of the buffer to the requested offset
671         * gst/elements/gsttypefind.c: (stop_typefinding):
672           revert patch 1.18 (which I unfortunately don't know the reason for).
673           This is needed to allow downstream elements to seek. Otherwise
674           typefind might overwrite a previous seek by downstream elements.
675           This lead to errors with id3tag and typefind on some mp3s.
676         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
677         (gst_entry_scheduler_iterate):
678           be more verbose when debugging
679
680 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
681
682         * gst/gstcaps.c: (gst_caps_from_string_inplace):
683           make sure we don't get NULL strings
684
685 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
686
687         * gst/gstcaps.c:
688         * gst/gstelement.c:
689         * gst/gstelementfactory.c: (gst_element_factory_get_type):
690         * gst/gstindex.c: (gst_index_resolver_get_type),
691         (gst_index_get_type), (gst_index_factory_get_type):
692         * gst/gstinfo.c:
693         * gst/gstpad.c:
694         * gst/gstplugin.c:
695         * gst/gsturi.c: (gst_uri_handler_get_type):
696         * gst/gstvalue.c:
697           first batch of documentation fixes
698
699 2004-03-29  David Schleef  <ds@schleef.org>
700
701         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
702         * docs/gst/gstreamer-docs.sgml:  More hacking
703         * docs/gst/gstreamer-sections.txt:
704         * docs/gst/tmpl/cothreads_compat.sgml:
705         * docs/gst/tmpl/gstcaps.sgml:
706         * docs/gst/tmpl/gstclock.sgml:
707         * docs/gst/tmpl/gstelement.sgml:
708         * docs/gst/tmpl/gstevent.sgml:
709         * docs/gst/tmpl/gstpad.sgml:
710         * docs/gst/tmpl/gstutils.sgml:
711         * docs/gst/tmpl/gstxml.sgml:
712         * docs/gst/tmpl/gthread-cothreads.sgml:
713         * docs/random/ds/0.9-suggested-changes:
714         * gst/elements/gstfakesink.h: doc fixes
715         * gst/elements/gstfakesrc.h: doc fixes
716         * gst/gstcaps.c: doc fixes
717         * gst/gstcaps.h: doc fixes
718         * gst/gstelement.c: doc fixes
719         * gst/gstelement.h: doc fixes
720         * gst/gstindex.c: doc fixes
721         * gst/gstinfo.c: doc fixes
722         * gst/gstpad.c: doc fixes
723         * gst/gstpad.h: doc fixes
724         * gst/gstplugin.c: doc fixes
725         * gst/gsttypefind.h: doc fixes
726         * gst/gsturi.c: doc fixes
727         * gst/gstvalue.c: doc fixes
728
729 2004-03-29  Colin Walters  <walters@redhat.com>
730
731         * gst/registries/gstxmlregistry.c (get_time)
732         (plugin_times_older_than_recurse):
733         Use the result of stat to determine whether a path is a file,
734         so we don't attempt to opendir() files.
735
736 2004-03-29  Benjamin Otte  <otte@gnome.org>
737
738         * gst/gstpad.c: (gst_pad_set_explicit_caps):
739           print caps in debugging output when setting caps failed
740         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
741         (schedule_next_element), (get_buffer), (run_chainhandler),
742         (element_may_start), (gst_entry_scheduler_chain_handler),
743         (gst_entry_scheduler_get_handler),
744         (gst_entry_scheduler_state_transition),
745         (gst_entry_scheduler_pad_link):
746           make this scheduler a testcase for mandatory
747           discont-before-first-buffer which is needed if we want to allow apps
748           to release the sound device.
749           add SCHED_ASSERT macro to print scheduler state before an assertion
750           triggers.
751
752 2004-03-29  Benjamin Otte  <otte@gnome.org>
753
754         * COPYING:
755           replace by LGPL (former COPYING.LIB). The core is completely
756           licensed LGPL.
757         * COPYING.LIB:
758           remove
759
760 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
761
762         * po/af.po:
763         * po/sv.po:
764           updated Afrikaans and Swedish
765
766 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
767
768         * po/LINGUAS:
769         * po/az.po:
770           adding Azerbaijani (Mətin Əmirov)
771
772 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
773
774         * gst/gstelement.h: 
775         * gst/gstelement.c (gst_element_set_time_delay): New function for
776         setting element time taking into account a hardware buffering
777         delay.
778         (gst_element_set_time): Now just an invocation of
779         gst_element_set_time_delay.
780         * gst/gstclock.h: 
781         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
782         allowing to set event times in the future.
783         (gst_clock_get_event_time): Now just an invocation of
784         gst_clock_get_event_time_delay.
785
786 2004-03-28  Benjamin Otte  <otte@gnome.org>
787
788         * gst/gstbin.c: (gst_bin_set_element_sched),
789         (gst_bin_unset_element_sched):
790           don't add decoupled elements to schedulers - otherwise it's
791           impossible to control if a link to a decoupled element was already
792           removed from a scheduler or not.
793         * gst/schedulers/cothreads_compat.h:
794         * gst/schedulers/gthread-cothreads.h:
795           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
796           is no "unused" warning.
797         * gst/schedulers/Makefile.am:
798         * gst/schedulers/entryscheduler.c:
799           add new scheduler, based on ideas from talking to David and Martin.
800           It's supposed to be small and correct. Currently it's also slow (but
801           it's not noticable)
802         * examples/retag/retag.c: (main):
803         * testsuite/bytestream/test1.c: (main):
804           fix missing NULLs at end of variadic functions
805         * testsuite/elements/.cvsignore:
806           update
807
808 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
809
810         * gst/gstevent.h:
811         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
812
813 2004-03-25  David Schleef  <ds@schleef.org>
814
815         * docs/gst/gstreamer-sections.txt:  More doc hacking.
816         * docs/gst/tmpl/gstaggregator.sgml:
817         * docs/gst/tmpl/gstautoplugfactory.sgml:
818         * docs/gst/tmpl/gstbin.sgml:
819         * docs/gst/tmpl/gstbuffer.sgml:
820         * docs/gst/tmpl/gstbufferstore.sgml:
821         * docs/gst/tmpl/gstfakesink.sgml:
822         * docs/gst/tmpl/gstfakesrc.sgml:
823         * docs/gst/tmpl/gstmd5sink.sgml:
824         * docs/gst/tmpl/gstreamer-unused.sgml:
825         * docs/gst/tmpl/gstsearchfuncs.sgml:
826         * docs/gst/tmpl/gstshaper.sgml:
827         * docs/gst/tmpl/gstspider.sgml:
828         * docs/gst/tmpl/gsttee.sgml:
829         * docs/gst/tmpl/gstutils.sgml:
830         * docs/gst/tmpl/gstvalue.sgml:
831         * docs/gst/tmpl/gstxml.sgml:
832         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
833         and we don't support it.
834         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
835         (gst_use_threads), (gst_has_threads): same
836         * gst/gstthreaddummy.c: same
837         * gst/autoplug/gstspider.c: Make gst_spider_details static.
838         * gst/autoplug/gstspider.h: same
839         * gst/elements/gstaggregator.h: Remove bogus function from header
840         * gst/elements/gstfakesink.h: same
841         * gst/elements/gstfakesrc.h: same
842         * gst/elements/gstmd5sink.h: same
843         * gst/elements/gstshaper.h: same
844         * gst/elements/gsttee.h: same
845         * gst/gstbin.c: doc fixes
846         * gst/gstbin.h: Remove unused definition.
847         * gst/gstbuffer.c: doc fixes
848         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
849         * gst/gstfilter.c: doc fixes
850         * gst/gsttag.c: doc fixes
851         * gst/gstvalue.c: doc fixes
852
853 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
854
855         * docs/pwg/advanced-types.xml:
856           Document typefinding.
857         * docs/pwg/other-oneton.xml:
858           Document one-to-n elements, demuxers and parsers.
859
860 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
861
862         reviewed by: David Schleef  <ds@schleef.org>
863
864         * configure.ac: Check bison version (bug #127838)
865
866 2004-03-25  David Schleef  <ds@schleef.org>
867
868         * docs/gst/gstreamer-docs.sgml: More fine tuning.
869         * docs/gst/gstreamer-sections.txt:
870         * docs/gst/tmpl/gstautoplug.sgml:
871         * docs/gst/tmpl/gststaticautoplug.sgml:
872         * docs/gst/tmpl/gststaticautoplugrender.sgml:
873         * docs/gst/tmpl/gstutils.sgml:
874         * docs/gst/tmpl/gstxml.sgml:
875
876 2004-03-24  David Schleef  <ds@schleef.org>
877
878         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
879         manual being such complete crap, that I decided to do major
880         hacking of it.  This checkin replaces any fine tuning that
881         may have been done previously, with the benefit of actually
882         being complete for much of the API that was changed since
883         0.6.  Further fine tuning will occur shortly.  (bug #134721)
884         * docs/gst/gstreamer-sections.txt:
885         * docs/gst/tmpl/GstBin.sgml:
886         * docs/gst/tmpl/GstBuffer.sgml:
887         * docs/gst/tmpl/GstCaps.sgml:
888         * docs/gst/tmpl/GstClock.sgml:
889         * docs/gst/tmpl/GstCompat.sgml:
890         * docs/gst/tmpl/GstData.sgml:
891         * docs/gst/tmpl/GstElement.sgml:
892         * docs/gst/tmpl/GstEvent.sgml:
893         * docs/gst/tmpl/GstIndex.sgml:
894         * docs/gst/tmpl/GstStructure.sgml:
895         * docs/gst/tmpl/GstTag.sgml:
896         * docs/gst/tmpl/cothreads.sgml:
897         * docs/gst/tmpl/cothreads_compat.sgml:
898         * docs/gst/tmpl/gettext.sgml:
899         * docs/gst/tmpl/grammar.tab.sgml:
900         * docs/gst/tmpl/gst-i18n-app.sgml:
901         * docs/gst/tmpl/gst-i18n-lib.sgml:
902         * docs/gst/tmpl/gst.sgml:
903         * docs/gst/tmpl/gst_private.sgml:
904         * docs/gst/tmpl/gstaggregator.sgml:
905         * docs/gst/tmpl/gstarch.sgml:
906         * docs/gst/tmpl/gstatomic.sgml:
907         * docs/gst/tmpl/gstatomic_impl.sgml:
908         * docs/gst/tmpl/gstbin.sgml:
909         * docs/gst/tmpl/gstbuffer.sgml:
910         * docs/gst/tmpl/gstbufferstore.sgml:
911         * docs/gst/tmpl/gstcaps.sgml:
912         * docs/gst/tmpl/gstclock.sgml:
913         * docs/gst/tmpl/gstcompat.sgml:
914         * docs/gst/tmpl/gstconfig.sgml:
915         * docs/gst/tmpl/gstcpu.sgml:
916         * docs/gst/tmpl/gstdata.sgml:
917         * docs/gst/tmpl/gstdata_private.sgml:
918         * docs/gst/tmpl/gstelement.sgml:
919         * docs/gst/tmpl/gstenumtypes.sgml:
920         * docs/gst/tmpl/gsterror.sgml:
921         * docs/gst/tmpl/gstevent.sgml:
922         * docs/gst/tmpl/gstfakesink.sgml:
923         * docs/gst/tmpl/gstfakesrc.sgml:
924         * docs/gst/tmpl/gstfilesink.sgml:
925         * docs/gst/tmpl/gstfilter.sgml:
926         * docs/gst/tmpl/gstindex.sgml:
927         * docs/gst/tmpl/gstinfo.sgml:
928         * docs/gst/tmpl/gstinterface.sgml:
929         * docs/gst/tmpl/gstlog.sgml:
930         * docs/gst/tmpl/gstmacros.sgml:
931         * docs/gst/tmpl/gstmarshal.sgml:
932         * docs/gst/tmpl/gstmd5sink.sgml:
933         * docs/gst/tmpl/gstmultifilesrc.sgml:
934         * docs/gst/tmpl/gstobject.sgml:
935         * docs/gst/tmpl/gstpad.sgml:
936         * docs/gst/tmpl/gstparse.sgml:
937         * docs/gst/tmpl/gstpipeline.sgml:
938         * docs/gst/tmpl/gstplugin.sgml:
939         * docs/gst/tmpl/gstpluginfeature.sgml:
940         * docs/gst/tmpl/gstqueue.sgml:
941         * docs/gst/tmpl/gstreamer-unused.sgml:
942         * docs/gst/tmpl/gstregistry.sgml:
943         * docs/gst/tmpl/gstregistrypool.sgml:
944         * docs/gst/tmpl/gstscheduler.sgml:
945         * docs/gst/tmpl/gstsearchfuncs.sgml:
946         * docs/gst/tmpl/gstshaper.sgml:
947         * docs/gst/tmpl/gstspider.sgml:
948         * docs/gst/tmpl/gstspideridentity.sgml:
949         * docs/gst/tmpl/gststructure.sgml:
950         * docs/gst/tmpl/gstsystemclock.sgml:
951         * docs/gst/tmpl/gsttag.sgml:
952         * docs/gst/tmpl/gsttaginterface.sgml:
953         * docs/gst/tmpl/gsttee.sgml:
954         * docs/gst/tmpl/gstthread.sgml:
955         * docs/gst/tmpl/gsttrace.sgml:
956         * docs/gst/tmpl/gsttrashstack.sgml:
957         * docs/gst/tmpl/gsttypefind.sgml:
958         * docs/gst/tmpl/gsttypes.sgml:
959         * docs/gst/tmpl/gsturi.sgml:
960         * docs/gst/tmpl/gsturitype.sgml:
961         * docs/gst/tmpl/gstutils.sgml:
962         * docs/gst/tmpl/gstvalue.sgml:
963         * docs/gst/tmpl/gstversion.sgml:
964         * docs/gst/tmpl/gstxml.sgml:
965         * docs/gst/tmpl/gstxmlregistry.sgml:
966         * docs/gst/tmpl/gthread-cothreads.sgml:
967         * docs/gst/tmpl/types.sgml:
968
969 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
970
971         * docs/pwg/other-sink.xml:
972         * docs/pwg/other-source.xml:
973           Documentation on how to write source and sink elements. Other
974           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
975           manager, autoplugger) are all still pending.
976
977 2004-03-25  Benjamin Otte  <otte@gnome.org>
978
979         * testsuite/elements/Makefile.am:
980         * testsuite/elements/gst-compprep-check:
981           add check to make sure gst-compprep works
982         * testsuite/elements/gst-inspect-check.in:
983           improve initialization output
984         * testsuite/Makefile.am:
985         * testsuite/gst-inspect-check:
986           remove old file
987
988 2004-03-24  David Schleef  <ds@schleef.org>
989
990         * testsuite/elements/Makefile.am:
991         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
992         to the testsuite.
993
994 2004-03-24  Benjamin Otte  <otte@gnome.org>
995
996         * libs/gst/control/dparam.c: (gst_dparam_attach),
997         (gst_dparam_detach):
998         * libs/gst/control/dparammanager.c: (gst_dpman_init):
999           fix lvalue casts for real
1000
1001 2004-03-24  Benjamin Otte  <otte@gnome.org>
1002
1003         * gst/schedulers/gstbasicscheduler.c:
1004         (gst_basic_scheduler_src_wrapper):
1005         * gst/schedulers/gstoptimalscheduler.c:
1006         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
1007         (pad_clear_queued), (gst_opt_scheduler_add_element),
1008         (gst_opt_scheduler_remove_element):
1009           fix GStreamer to not have issues with lvalue casts anymore (fixes
1010           #136841)
1011
1012 2004-03-24  Benjamin Otte  <otte@gnome.org>
1013
1014         * gst/gstelement.c:
1015           add documentation about a gobject quirk where the object hasn't the
1016           correct class pointer set on initialization
1017         * gst/schedulers/gstbasicscheduler.c:
1018         (gst_basic_scheduler_src_wrapper):
1019           make sure to not run into an infinite loop
1020
1021 2004-03-22  Benjamin Otte  <otte@gnome.org>
1022
1023         * gst/gstutils.c: (gst_util_dump_mem):
1024         * gst/gstutils.h:
1025           first argument of gst_util_dump_mem should be const
1026
1027 2004-03-22  Johan Dahlin  <johan@gnome.org>
1028
1029         * gst/gstvalue.h: Clean up a little bit.
1030
1031 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
1032
1033         reviewed by Benjamin Otte  <otte@gnome.org>
1034
1035         * gst/autoplug/gstspider.c: (gst_spider_dispose):
1036         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
1037         (gst_aggregator_class_init), (gst_aggregator_init):
1038         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
1039         (gst_filesrc_dispose), (gst_filesrc_set_location):
1040         * gst/elements/gstidentity.c: (gst_identity_finalize),
1041         (gst_identity_class_init), (gst_identity_chain):
1042         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
1043         * gst/elements/gststatistics.c: (gst_statistics_finalize),
1044         (gst_statistics_class_init):
1045         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
1046         (gst_tee_get_property):
1047           clean up used memory in this elements correctly on teardown (closes
1048           #137279)
1049
1050 2004-03-20  Colin Walters  <walters@redhat.com>
1051
1052         * gst/registries/gstxmlregistry.c:
1053         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
1054         registry saving atomic.
1055
1056 2004-03-20  Colin Walters  <walters@redhat.com>
1057
1058         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
1059         Just use
1060         access() instead of actually creating and deleting files.
1061
1062 2004-03-18  David Schleef  <ds@schleef.org>
1063
1064         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
1065         (bug #137625)
1066
1067 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
1068
1069         * po/sv.po: updated translation (Christian Rose)
1070
1071 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
1072
1073         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
1074         (gst_filesink_get_query_types), (_do_init),
1075         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
1076           return FALSE silently
1077         * po/af.po: updated translation (Petri Jooste)
1078
1079 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
1080
1081         * Makefile.am:
1082         * configure.ac:
1083           dist common properly
1084         * po/af.po:
1085         * po/fr.po:
1086         * po/nl.po:
1087         * po/sr.po:
1088         * po/sv.po:
1089           refreshing translations
1090
1091 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1092
1093         * po/LINGUAS:
1094         * po/sv.po:
1095         * po/af.po:
1096           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
1097
1098 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1099
1100         * Makefile.am: use common/release.mak
1101
1102 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1103
1104         * docs/faq/gst-uninstalled:
1105           adding gst-monkeysaudio to the list of possible plugin dirs
1106
1107 2004-03-16  David Schleef  <ds@schleef.org>
1108
1109         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
1110         (gst_init_check_with_popt_table):  Fix some gettext strings to
1111         make them easier to translate.  Required making the strings
1112         non-const.
1113
1114 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
1115
1116         * configure.ac: bump nano to 1
1117
1118 === release 0.8.0 ===
1119
1120 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
1121
1122         * configure.ac: release 0.8.0, "Executive Slacks"
1123
1124 2004-03-16  Johan Dahlin  <johan@gnome.org>
1125
1126         * gst/schedulers/gstoptimalscheduler.c
1127         (gst_opt_scheduler_pad_unlink): Remove double ;,
1128         spotted by Scott Wheeler
1129
1130 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
1131
1132         * configure.ac: bump libtool version
1133
1134 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
1135
1136         * gst/gstcaps.h:
1137         * gst/gststructure.h:
1138           add reserved padding
1139
1140 2004-03-15  Benjamin Otte  <otte@gnome.org>
1141
1142         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
1143           set the first parameter for select call correctly.
1144           (fixes #137230)
1145
1146 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
1147
1148         * *.c,*.h: don't mix tabs and spaces
1149
1150 2004-03-15  Johan Dahlin  <johan@gnome.org>
1151
1152         * gst/schedulers/gstoptimalscheduler.c
1153         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
1154         crash on MPEG playback. My boolean arithmetic is a bit rusty.
1155
1156         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
1157         
1158 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
1159
1160         * testsuite/Rules:
1161           fix gst-register rules
1162
1163 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
1164
1165         * testsuite/Rules:
1166           use versioned gst-register
1167
1168 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
1169
1170         * docs/libs/gstreamer-libs-sections.txt:
1171           remove </SUBSECTION>
1172         * gst/gstplugin.c:
1173         * gst/gstregistry.c: (gst_registry_add_plugin):
1174         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
1175         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
1176           add debugging and fix some comment blocks
1177
1178 2004-03-15  Johan Dahlin  <johan@gnome.org>
1179
1180         * *.h: Revert indent changes.
1181         
1182 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1183
1184         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
1185           g_error_free the g_error
1186         * tools/gst-feedback-m.m:
1187           check for other versions of gstreamer
1188         * tools/gst-indent:
1189           use sh, not bash
1190
1191 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1192
1193         * tools/gst-register.c: do not spill paths when registries are not
1194           writable, until we fix the "user running gst-register" case.
1195
1196 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1197
1198         * *.c, *.h: commit of gst-indent run on core
1199
1200 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1201
1202         * tools/gst-indent:
1203         * tools/Makefile.am:
1204           add our indentation style as a script
1205
1206 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1207
1208         * po/sr.po:
1209         * po/LINGUAS:
1210           added Serbian translation
1211
1212 2004-03-13  Benjamin Otte  <otte@gnome.org>
1213
1214         * gst/gstelement.c:
1215           add documentation note about gst_element_found_tags_for_pad not
1216           being usable in getfunctions. (see #137042)
1217
1218 2004-03-12  David Schleef  <ds@schleef.org>
1219
1220         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
1221         change API right now!  Readd gst_caps_is_simple() macro.
1222         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
1223         uninitialized variable.  I'd bet this caused crashes.
1224         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
1225
1226 2004-03-12  Johan Dahlin  <johan@gnome.org>
1227
1228         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
1229         * gst/gstcaps.h: Clean up
1230
1231         * gst/gst.c (init_post): call gst_caps_get_type() instead of
1232         _gst_caps_initalize()
1233
1234         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
1235         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
1236
1237         * gst/gststructure.c (gst_structure_get_type): Ditto
1238
1239         * gst/gststructure.h: Ditto
1240         
1241 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
1242
1243         * gst/gstqueue.c: (gst_queue_init):
1244           Reset default max. values in queues. Reason is simply to avoid
1245           braindead use. If you want wider values, use the properties. The
1246           default is supposed to always work. Wider values would make this
1247           beast a memory hog by default (250 full-PAL RGB32 video frames?
1248           That's 440 MB! No thank you).
1249
1250 2004-03-10  David Schleef  <ds@schleef.org>
1251
1252         * tools/gst-run.c: (main):  Fix crash when no relevant tools
1253         were found.  (bug #136793)
1254
1255 2004-03-10  Johan Dahlin  <johan@gnome.org>
1256
1257         * gst/schedulers/gstoptimalscheduler.c
1258         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
1259         links to elements within the same group, so we can finally remove
1260         that annoying warning. Refactor the code a little bit
1261         (group_dec_links_for_element): Split out
1262
1263 2004-03-09  David Schleef  <ds@schleef.org>
1264
1265         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
1266         (bug #134863)
1267
1268 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1269
1270         * configure.ac: first bug fix due to major/minor bump
1271
1272 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1273
1274         * configure.ac: bump nano to 1
1275
1276 === release 0.7.6 ===
1277
1278 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1279
1280         * NEWS:
1281         * RELEASE:
1282         * configure.ac:
1283           releasing 0.7.6, "Almost"
1284         * po/fr.po:
1285         * po/nl.po:
1286         * tools/Makefile.am:
1287         * tools/gst-feedback-m.m:
1288           unversioned source
1289
1290 2004-03-09  Johan Dahlin  <johan@gnome.org>
1291
1292         Reviewed by: Thomas Vander Stichele
1293
1294         * gst/gstelement.c (gst_element_class_init): register second
1295         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
1296         language bindings can (de)marshall correctly.
1297
1298         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
1299
1300         * gst/gsterror.c (gst_g_error_get_type): New function
1301
1302         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
1303         with VOID:OBJECT,OBJECT,STRING 
1304
1305 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
1306
1307         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
1308         Free a leaked g_timer on early returns.
1309
1310 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
1311
1312         * docs/pwg/advanced-types.xml:
1313           Add cinepak description.
1314
1315 2004-03-07  David Schleef  <ds@schleef.org>
1316
1317         * docs/random/mimetypes:  Added cinepak description
1318
1319 2004-03-07  Andy Wingo  <wingo@pobox.com>
1320
1321         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
1322
1323         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
1324         there are no links to other groups when a group is destroyed.
1325         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
1326         removed from a group, make sure the link count to elements linked
1327         to other pads is appropriately decremented. This really fixes
1328         #135672.
1329
1330         The 1.60->1.61 patch has been reapplied in light of this fix.
1331
1332         * gst/gstelement.c (gst_element_dispose): Really protect against
1333         multiple invocations this time.
1334
1335 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1336
1337         * docs/gst/gstreamer-sections.txt:
1338         * docs/gst/tmpl/gsttag.sgml:
1339           remove some deprecated functions, document some existing ones
1340         * gst/gsttag.c: (gst_tag_get_flag):
1341         * gst/gsttag.h:
1342           add accessor function
1343
1344 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1345
1346         * docs/gst/gstreamer-sections.txt:
1347         * docs/gst/tmpl/gsttag.sgml:
1348         * docs/gst/tmpl/gstxml.sgml:
1349         * gst/gsttag.c: (gst_tag_get_flag):
1350         * gst/gsttag.h:
1351
1352 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
1353
1354         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
1355         leak
1356
1357 2004-03-05  David Schleef  <ds@schleef.org>
1358
1359         * REQUIREMENTS: Add bison and flex.
1360         * configure.ac: Fix comment about bison.
1361         * docs/random/ds/0.9-suggested-changes: yer ma
1362         * tools/gst-inspect.c: (print_element_info):  Fix warning.
1363
1364 2004-03-05  Benjamin Otte  <otte@gnome.org>
1365
1366         * gst/gstelement.c: (gst_element_error_full):
1367           revert recent recursive state changing commit - messing with other
1368           elements' states is evil and should be done by apps only.
1369
1370 2004-03-05  Benjamin Otte  <otte@gnome.org>
1371
1372         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
1373           check for empty intersection instead of NULL caps
1374         (gst_element_get_compatible_pad_filtered):
1375           remove old workaround that is only a bug nowadays
1376
1377 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
1378
1379         * gst/gstelement.c: (gst_element_error_full):
1380           make elements try to recursively change state to PAUSED on all
1381           parents after an error to suppress ensuing warnings
1382         * gst/parse/grammar.y:
1383           make it check if it was able to sync the state, and throw an error
1384           if not, so stuff like
1385           oggdemux ! vorbisdec ! osssink gets caught
1386
1387 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
1388
1389         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
1390           it contains lib64; use AS_AC_EXPAND to handle it properly
1391
1392 2004-03-05  David Schleef  <ds@schleef.org>
1393
1394         * gst/gstcpuid_i386.s:  Remove unused code
1395         * libs/gst/getbits/getbits.c: (gst_getbits_init),
1396         (gst_getbits_newbuf): Remove MMX code
1397         * libs/gst/getbits/getbits.h: Remove MMX code
1398
1399 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
1400
1401         * debian/.cvsignore:
1402         * debian/README.Debian:
1403         * debian/changelog:
1404         * debian/control:
1405         * debian/control.in:
1406         * debian/copyright:
1407         * debian/gstreamer-core-libs-dev.files:
1408         * debian/gstreamer-core-libs.files:
1409         * debian/gstreamer-core.files:
1410         * debian/gstreamer-core.postinst:
1411         * debian/gstreamer-core.postrm:
1412         * debian/gstreamer-doc.files:
1413         * debian/gstreamer-doc.links:
1414         * debian/gstreamer-doc.lintian:
1415         * debian/gstreamer-runtime.files:
1416         * debian/gstreamer-runtime.manpages:
1417         * debian/gstreamer-runtime.postinst:
1418         * debian/gstreamer-runtime.postrm:
1419         * debian/gstreamer-tools.files:
1420         * debian/gstreamer-tools.manpages:
1421         * debian/libgstreamer-dev.files:
1422         * debian/libgstreamer0.4.1.files:
1423         * debian/libgstreamerVERSION.files:
1424         * debian/rules:
1425         Debian package info not maintained here.
1426
1427 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
1428
1429         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
1430         * gst/gstbin.c: (gst_bin_class_init):
1431         * gst/gstelement.c: (gst_element_class_init):
1432         * gst/gstindex.c: (gst_index_class_init):
1433         * gst/gstobject.c: (gst_object_class_init),
1434         (gst_signal_object_class_init):
1435         * gst/gstpad.c: (gst_pad_template_class_init):
1436         * gst/gstregistry.c: (gst_registry_class_init):
1437         * gst/gsturi.c: (gst_uri_handler_base_init):
1438         * gst/gstxml.c: (gst_xml_class_init):
1439         * libs/gst/control/dparam.c: (gst_dparam_class_init):
1440         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
1441           make all signal names use dashes instead of underscore
1442
1443 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1444
1445         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
1446
1447 2004-03-03  Benjamin Otte  <otte@gnome.org>
1448
1449         * gst/schedulers/gstoptimalscheduler.c:
1450           revert last commit by Andy Wingo. It causes segfaults on unreffing
1451           in Rhythmbox. (see bug #135672)
1452
1453 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
1454
1455         * po/fr.po: fix typo
1456
1457 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
1458
1459         * tools/gst-inspect.c: (main): 
1460         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
1461
1462 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1463
1464         * configure.ac:
1465           get GLIB_ONLY and POPT flags for the nonversioned binaries
1466         * tools/Makefile.am:
1467           use them
1468
1469 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1470
1471         * gst/gst.c: (init_post):
1472           change so that GST_REGISTRY now is where the global registry gets
1473           saved, since that is where plugins now get attached to first, and
1474           spilled over to the user registry.  Note that in the case of using
1475           GST_REGISTRY env var, we don't want to affect any real registries
1476           beyond the one given by this var, and thus we don't set a user
1477           registry to spill to.  So make sure GST_REGISTRY is writable.
1478
1479 2004-03-01  David Schleef  <ds@schleef.org>
1480
1481         * AUTHORS:  Added some names.  Add yourself if you're missing.
1482
1483 2004-03-01  David Schleef  <ds@schleef.org>
1484
1485         * MAINTAINERS: Add
1486
1487 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
1488
1489         * configure.ac:
1490           remove whitespace
1491         * docs/gst/tmpl/gstbuffer.sgml:
1492         * docs/gst/tmpl/gstdata.sgml:
1493         * docs/gst/tmpl/gstreamer-unused.sgml:
1494         * docs/gst/tmpl/gstxml.sgml:
1495           doc update
1496         * docs/manuals.mak:
1497           add a FIXME
1498         * docs/pwg/intro-preface.xml:
1499         * docs/pwg/pwg.xml:
1500           remove GNOME
1501         * gst/gst.c: (init_post):
1502           try GST_PLUGIN_PATH paths for the _global_registry first
1503         * gst/gstelement.h:
1504           add the error message as well, otherwise (null) debug info doesn't
1505           make much sense
1506         * tools/gst-register.c: (main):
1507           spill paths to next registry if this registry is not writable
1508         * po/fr.po:
1509         * po/nl.po:
1510           translation updates
1511
1512 2004-03-01  Johan Dahlin  <johan@gnome.org>
1513
1514         * gst/gstbuffer.c (_gst_buffer_initialize): 
1515         * gst/gstdata.c (gst_data_get_type): 
1516         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
1517         instead of ref, since some applications that uses GBoxed
1518         routines depends on a function that actually returns a copy.
1519
1520 2004-02-27  Benjamin Otte  <otte@gnome.org>
1521
1522         * gst/gstbuffer.h:
1523           remove gst_buffer_free, use gst_data_unref
1524         * gst/gstdata.c: (gst_data_get_type):
1525           use refcounting in GstData GBoxed registration
1526         * gst/gstdata.h:
1527           remove gst_data_free, use gst_data_unref
1528
1529 2004-02-27  Johan Dahlin  <johan@gnome.org>
1530
1531         * gst/gstdata.c (gst_data_get_type): New function, register
1532         GstData as a GBoxed type.
1533
1534         * gst/gstdata.h (GST_TYPE_DATA): New macro
1535
1536 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1537
1538         * Makefile.am:
1539         * gstreamer.spec.in:
1540           put back RELEASE
1541         * gst/Makefile.am:
1542           clean up non-disting of built files
1543         * testsuite/debug/commandline.c:
1544           test fix for option rename
1545
1546 2004-02-26  David Schleef  <ds@schleef.org>
1547
1548         * configure.ac:  We don't really need glib-2.3.  Also remove
1549         some unneeded checks for library functions.
1550         * gst/Makefile.am:  Instead, we need to not dist files created
1551         by glib-genmarshal.
1552
1553 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
1554
1555         * configure.ac:
1556           bump glib required version to 2.3.0 for g_value_takes_boxed
1557
1558  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
1559
1560         * common/m4/gst-docs.m4
1561         change flavour text from enable to disable as enable is our default
1562         closes bug Bug 135304
1563
1564 === release 0.7.5 ===
1565  
1566  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
1567  
1568         * NEWS:
1569           instate NEWS file
1570         * Makefile.am:
1571         * gstreamer.spec.in:
1572         * RELEASE:
1573           put back release
1574         * configure.ac:
1575         * docs/random/release:
1576           more updates
1577
1578 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
1579
1580         * gst/gsttag.c: (_gst_tag_initialize):
1581         * po/fr.po:
1582         * po/nl.po:
1583           remove hyphen from codec tags
1584
1585 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
1586
1587         * gst/parse/Makefile.am:
1588           fix dependency so that a make from a clean build works the first
1589           time
1590
1591 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
1592
1593         * docs/random/release:
1594           update release strategy
1595         * po/fr.po:
1596           auto-update po file
1597         * po/nl.po:
1598           update dutch translation
1599
1600 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
1601
1602         * docs/manual/debugging.xml:
1603         fix manual for new debugging system
1604
1605 2004-02-25  Andy Wingo  <wingo@pobox.com>
1606
1607         * gst/gstpad.c (gst_pad_link_prepare): Re-add
1608         gst_pad_link_prepare. Please email the list with specific reasons
1609         for reverting.
1610
1611 2004-02-24  Andy Wingo  <wingo@pobox.com>
1612
1613         * gst/gstelement.c (gst_element_dispose): Protect against multiple
1614         invocations.
1615
1616         * gst/schedulers/gstoptimalscheduler.c:
1617         I added a mess of prototypes at the top of the file by way of
1618         documentation. Some of the operations on chains and groups were
1619         re-organized.
1620
1621         (create_group): Added a type argument so if the group is enabled,
1622         the setup_group_scheduler knows what to do.
1623         (group_elements): Added a type argument here, too, to be passed on
1624         to create_group.
1625         (group_element_set_enabled): If an unlinked PLAYING element is
1626         added to a bin, we have to create a new group to hold the element,
1627         and this function will be called before the group is added to the
1628         chain. Thus we have a valid case for group->chain==NULL. Instead
1629         of calling chain_group_set_enabled, just set the flag on the group
1630         (the chain's status will be set when the group is added to it).
1631         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
1632         Setup the group scheduler when the group is enabled, not
1633         specifically when an element goes PAUSED->PLAYING. This means
1634         PLAYING elements can be added, linked, and scheduled into a
1635         PLAYING pipeline, as was intended.
1636         (add_to_group): Don't ref the group twice. I don't know when this
1637         double-ref got in here. Removing it has the potential to cause
1638         segfaults if other parts of the scheduler are buggy. If you find
1639         that the scheduler is segfaulting for you, put in an extra ref
1640         here and see if that hacks over the underlying issue. Of course,
1641         then find out what code is unreffing a group it doesn't own...
1642         (create_group): Make the extra refcount floating, and remove it
1643         after adding the element. This means that...
1644         (unref_group): Destroy when the refcount reaches 0, not 1, like
1645         every other refcounted object in the known universe.
1646         (remove_from_group): When a group becomes empty, set it to be not
1647         active, and remove it from its chain. Don't unref it again,
1648         there's no floating reference any more.
1649         (destroy_group): We have to remove the group from the chain in
1650         remove_from_group (rather than here) to break refcounting cycles
1651         (the chain always has a ref on the group). So assert that
1652         group->chain==NULL.
1653         (ref_group_by_count): Removed, it was commented out anyway.
1654         (merge_chains): Use the remove_from_chain and add_to_chain
1655         primitives to do the reparenting, instead of rolling our own
1656         implementation.
1657         (add_to_chain): The first non-disabled group in the chain's group
1658         list will be the entry point for the chain. Because buffers can
1659         accumulate in loop elements' peer bufpens, we preferentially
1660         schedule loop groups before get groups to avoid unnecessary
1661         execution of get-based groups when the bufpens are already full.
1662         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
1663         (get_group_schedule_function): Ditto.
1664         (loop_group_schedule_function): Ditto.
1665         (gst_opt_scheduler_loop_wrapper): Ditto.
1666         (gst_opt_scheduler_iterate): Ditto.
1667
1668         I understand the opt scheduler now, yippee!
1669
1670         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
1671         (gst_pad_get_name, gst_pad_set_chain_function) 
1672         (gst_pad_set_get_function, gst_pad_set_event_function) 
1673         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
1674         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
1675         (gst_pad_set_query_function, gst_pad_get_query_types) 
1676         (gst_pad_get_query_types_default) 
1677         (gst_pad_set_internal_link_function) 
1678         (gst_pad_set_formats_function, gst_pad_set_link_function) 
1679         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
1680         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
1681         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
1682         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
1683         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
1684         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
1685         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
1686         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
1687         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
1688         (gst_pad_event_default_dispatch, gst_pad_event_default) 
1689         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
1690         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
1691         (gst_pad_get_formats_default, gst_pad_get_formats): Better
1692         argument checks, and some doc fixes.
1693
1694         (gst_pad_custom_new_from_template): Um, does anyone
1695         use these functions? Actually make a custom pad instead of a
1696         normal one.
1697         (gst_pad_try_set_caps): Transpose some checks.
1698         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
1699         the pad is in negotiation.
1700         (gst_pad_try_relink_filtered): Use pad_link_prepare.
1701         
1702         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
1703
1704         * gst/gstelement.h: 
1705         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
1706         on the list.
1707
1708 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1709
1710         * gst/gstbin.c: (gst_bin_add):
1711           add error for not being able to add elements
1712
1713 2004-02-22  Julien MOUTTE <julien@moutte.net>
1714
1715         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
1716         audio-codec and video-codec.
1717
1718 2004-02-22  Benjamin Otte  <otte@gnome.org>
1719
1720         reported by: Padraig O'Briain <padraig.obriain@sun.com>
1721
1722         * autogen.sh:
1723           replace test -e with test -x for mkinstalldirs to be more portable.
1724           (fixes #134816)
1725
1726 2004-02-22  Benjamin Otte  <otte@gnome.org>
1727
1728         * gst/gstpad.c:
1729           revert last patch from Andy, it makes gst_pad_can_link_filtered much
1730           too noisy
1731         * gst/gsttag.c: (_gst_tag_initialize):
1732         * gst/gsttag.h:
1733           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
1734         * libs/gst/control/dparam.c: (gst_dparam_attach):
1735         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
1736           check that types for attached dparams match
1737
1738 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1739
1740         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
1741         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
1742         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
1743           fix errors
1744
1745 2004-02-20  Andy Wingo  <wingo@pobox.com>
1746
1747         * gst/gstbin.c:
1748         * gst/gstbuffer.c:
1749         * gst/gstplugin.c:
1750         * gst/registries/gstxmlregistry.c: 
1751         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
1752
1753         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
1754         (gst_element_add_pad): DEBUG->INFO, some fixes.
1755         (gst_element_get_compatible_pad_template): Just see if the
1756         templates' caps intersect, not if one is a strict subset of the
1757         other. This conforms more to what gst_pad_link_intersect() does.
1758         (gst_element_class_add_pad_template): Don't memcpy the pad
1759         template, just ref it.
1760         (gst_element_get_compatible_pad_filtered): Clean up debug messages
1761
1762         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
1763         (gst_pad_link_filtered): Debug changes.
1764         (gst_pad_link_prepare): New function, consolidated from
1765         can_link_filtered and link_filtered.
1766
1767         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
1768         look more like that of the functions in gstelement.c
1769
1770         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
1771         object, and return the empty string if object is NULL.
1772
1773         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
1774         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
1775         LOG, not DEBUG. We still get flex info on debug.
1776
1777         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
1778         debug string more verbose.
1779         (plugin_times_older_than): DEBUG->LOG.
1780
1781 2004-02-20  Julien MOUTTE <julien@moutte.net>
1782
1783         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
1784         will emit found_tag for each stream they demux with the codec.
1785
1786 2004-02-20  Benjamin Otte  <otte@gnome.org>
1787
1788         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
1789           copy navigation event correctly. Check freeing tag lists. 
1790         * gst/gstthread.c: (gst_thread_change_state):
1791           don't abort() on state changing mess - it might happen because of
1792           bugs.
1793         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
1794           use boxed functions
1795         * gst/gstvalue.h:
1796           fix GST_VALUE_HOLDS_CAPS
1797
1798 2004-02-19  David Schleef  <ds@schleef.org>
1799
1800         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
1801         and use it for GST_FUNCTION.  (bug #134750)
1802
1803 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1804
1805         * po/fr.po:
1806         * po/nl.po:
1807           updating translations
1808
1809 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1810
1811         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
1812
1813 2004-02-18  kost@imn.htwk-leipzig.de
1814
1815         reviewed by: David Schleef  <ds@schleef.org>
1816
1817         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
1818         for libgstcontrol.
1819
1820 2004-02-18  David Schleef  <ds@schleef.org>
1821
1822         * libs/gst/control/dparam.c: (gst_dparam_class_init):
1823         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
1824         (gst_dpsmooth_new): Additional fixes to get double dparams working.
1825         * tools/gst-inspect.c: (print_element_info): Support dumping of
1826         double dparam information.
1827
1828 2004-02-17  David Schleef  <ds@schleef.org>
1829
1830         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
1831         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
1832         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
1833         Use GST_TYPE_CAPS in signal prototype.
1834         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
1835         Convert GST_TYPE_CAPS to boxed.
1836         * gst/gstelement.c: (gst_element_class_init):
1837         Use GST_TYPE_TAG_LIST in signal prototype.
1838         * gst/gstindex.c: (gst_index_class_init):
1839         * gst/gstindex.h:
1840         Add GST_TYPE_INDEX_ENTRY type.
1841         * gst/gstmarshal.list:
1842         Add necessary marshal types.
1843         * gst/gstpad.c: (gst_real_pad_class_init),
1844         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
1845         (gst_pad_recover_caps_error):
1846         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
1847         * gst/gststructure.c: (_gst_structure_initialize),
1848         (gst_structure_copy), (_gst_structure_copy_conditional):
1849         * gst/gststructure.h:
1850         Convert GST_TYPE_STRUCTURE to boxed.
1851         * gst/gsttag.c: (gst_tag_list_get_type):
1852         * gst/gsttag.h:
1853         Add GST_TYPE_TAG_LIST type.
1854
1855 2004-02-17  Julien MOUTTE  <julien@moutte.net>
1856
1857         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
1858         to what we agreed with david.
1859         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
1860
1861 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1862
1863         * po/nl.po: update translation
1864
1865 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1866
1867         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
1868           throw an error if spider is trying to play a mime type there is
1869           no decoder for
1870         * po/POTFILES.in:
1871           add gst/autoplug/gstspider.c for translation
1872
1873 2004-02-17  Julien MOUTTE  <julien@moutte.net>
1874
1875         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
1876         silently when the pad is negotiating.
1877
1878 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
1879
1880         * docs/faq/Makefile.am:
1881           add script to run gstreamer uninstalled 
1882         * docs/faq/faq.xml:
1883         * docs/faq/developing.xml:
1884         * docs/faq/gst-uninstalled:
1885           extract script to run gstreamer uninstalled
1886         * docs/manuals.mak:
1887           add EXTRA_SOURCES variable for Makefile.am's to set to
1888           use additional SOURCE files for the doc build
1889
1890 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
1891
1892         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
1893
1894 2004-02-15  Julien MOUTTE  <julien@moutte.net>
1895
1896         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
1897         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
1898         an error was thrown by osssink. Basically a state change failure for
1899         an element in a different scheduling group was considered as
1900         successful, which means that caps nego was going on and weird stuff
1901         happened. Like I wrote in the comment there, if someone wants to
1902         revert that please drop me a mail explaining why because I really see
1903         no point in keeping that broken behaviour there.
1904         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
1905         be empty, we then return NULL which will trigger a nice error when 
1906         pulling from the pad.
1907
1908 2004-02-13  David Schleef  <ds@schleef.org>
1909
1910         * libs/gst/control/dparam.c: (gst_dparam_class_init),
1911         (gst_dparam_get_property), (gst_dparam_set_property),
1912         (gst_dparam_do_update_default):
1913         * libs/gst/control/dparam.h:
1914         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
1915         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
1916         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
1917         (gst_dpsmooth_do_update_double):
1918         * libs/gst/control/dparam_smooth.h:
1919         * libs/gst/control/dparammanager.c:
1920         (gst_dpman_inline_direct_update):
1921         Add support for double dparams.
1922
1923 2004-02-13  David Schleef  <ds@schleef.org>
1924
1925         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
1926         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
1927
1928 2004-02-13  Mattias Wadman  <mattias@sudac.org>
1929
1930         reviewed by: David Schleef  <ds@schleef.org>
1931
1932         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
1933         (gst_fdsrc_init), (gst_fdsrc_set_property),
1934         (gst_fdsrc_get_property), (gst_fdsrc_get):
1935         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
1936         and sends an EOS event if file descriptor reading times out.
1937
1938 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1939
1940         * configure.ac:
1941           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
1942
1943 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1944
1945         * configure.ac: pass required libxml version as argument
1946         (bug reported by Christophe Fergeau)
1947
1948 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1949   
1950         * docs/gst/gstreamer-docs.sgml:
1951         * docs/gst/tmpl/gstxml.sgml:
1952         * docs/libs/gstreamer-libs-docs.sgml:
1953           version API docs
1954
1955 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1956
1957         * gst/gstinfo.c:
1958         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
1959         (gst_registry_pool_feature_filter):
1960         * gst/gstthread.c: (gst_thread_class_init):
1961         * gst/gstvalue.c:
1962           add includes exposed by building without libxml
1963         * gst/indexers/Makefile.am:
1964           do not build fileindex when LOADSAVE disabled; we should have
1965           a better libxml check later since fileindex depends on xml, not
1966           LOADSAVE or REGISTRY
1967         * libs/gst/control/Makefile.am:
1968           link with m
1969         * tools/Makefile.am:
1970           fix wrong source code for gst-xmlinspect
1971
1972 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1973
1974         * configure.ac:
1975           fix gcov help output
1976           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
1977         * docs/random/release:
1978           some updated releasing notes
1979         * gstreamer.spec.in:
1980           more updates
1981
1982 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1983
1984         * docs/faq/faq.xml:
1985         * docs/manual/manual.xml:
1986         * docs/pwg/pwg.xml:
1987         * docs/pwg/titlepage.xml:
1988           put version in documentation
1989
1990 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1991
1992         * tools/Makefile.am: fix man page installation
1993
1994 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1995
1996         * configure.ac:
1997           don't check for libxml when load/save and registry disabled (#105844)
1998         * gstreamer.spec.in:
1999           sync with fedora candidate spec
2000
2001 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2002
2003         * po/fr.po:
2004         * po/nl.po:
2005           replace multidisksrc with multifilesrc
2006
2007 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2008
2009         * po/POTFILES.in:
2010           update to multidisksrc => multifilesrc file renaming (#134145)
2011
2012 2004-02-11  David Schleef  <ds@schleef.org>
2013
2014         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
2015         * docs/gst/tmpl/gstpadtemplate.sgml: same
2016         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
2017         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
2018         fixing dance.
2019         * gst/gstutils.c: Remove disabled code that uses GstProps.
2020         * gst/registries/gstxmlregistry.h: same
2021         * docs/random/ds/0.9-suggested-changes: random notes
2022
2023 2004-02-11  kost@imn.htwk-leipzig.de
2024
2025         reviewed by: David Schleef  <ds@schleef.org>
2026
2027         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
2028         initialisation of clock (bug #134128)
2029
2030 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2031
2032         * configure.ac:
2033         * gst/elements/Makefile.am:
2034         * gst/elements/gstelements.c:
2035         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
2036         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
2037         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
2038         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
2039         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
2040         * gst/elements/gstmultifilesrc.h:
2041           rename multidisksrc to multifilesrc (part of #122200)
2042
2043 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2044
2045         * docs/manuals.mak:
2046           fix automake complaints
2047         * gst-element-check.m4:
2048           fix unquotedness
2049
2050 2004-02-11  David Schleef  <ds@schleef.org>
2051
2052         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
2053         * gst/gstatomic_impl.h: Disable sparc implementation.
2054
2055 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2056
2057         * gst-element-check.m4:
2058           fix underquoted macros as reported by automake 1.8.x (#133800)
2059         * configure.ac:
2060           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
2061           by autopoint (fixes #132996)
2062
2063 2004-02-10  Andy Wingo  <wingo@pobox.com>
2064
2065         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
2066         way to do inheritance.
2067         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
2068         (gst_pad_get_query_types, gst_pad_get_query_types_default):
2069         Routine docs.
2070         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
2071         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
2072         doc.
2073         (gst_pad_unlink, gst_pad_is_linked): Docs.
2074         (gst_pad_renegotiate): A brief description of capsnego.
2075         (gst_pad_try_set_caps): Document.
2076         (gst_pad_try_set_caps_nonfixed): Document.
2077         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
2078         (gst_pad_set_parent): Deprecated (although not out of the API).
2079         (gst_pad_get_parent): Deprecated, although many plugins use this.
2080         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
2081         are private and will go away in 0.9.
2082         (gst_pad_perform_negotiate): Doc.
2083         (gst_pad_link_unnegotiate): I think this is meant to be static.
2084         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
2085         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
2086         (gst_pad_get_peer): Doc updates.
2087         (gst_pad_caps_change_notify): Doc.
2088         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
2089         (gst_ghost_pad_new): Doc fixes.
2090
2091         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
2092         (gst_object_check_uniqueness): 
2093
2094         * gst/gstelement.c (gst_element_add_pad) 
2095         (gst_element_add_ghost_pad, gst_element_remove_pad) 
2096         (gst_element_remove_ghost_pad, gst_element_get_pad) 
2097         (gst_element_get_static_pad, gst_element_get_pad_list) 
2098         (gst_element_class_get_pad_template_list) 
2099         (gst_element_class_get_pad_template): Work on the docs.
2100         (gst_element_get_pad_template_list): Uses the class method.
2101         (gst_element_get_compatible_pad_template): Docs, and consolidate
2102         some test conditions. 
2103         (gst_element_get_pad_from_template): New static function.
2104         (gst_element_request_compatible_pad): Docs, and work with
2105         non-request compatible templates. 
2106         (gst_element_get_compatible_pad_filtered): Docs and remove
2107         redundant checks.
2108         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
2109         (gst_element_link_filtered, gst_element_link_many) 
2110         (gst_element_link, gst_element_link_pads) 
2111         (gst_element_unlink_many): Docs.
2112
2113 2004-02-05  Andy Wingo  <wingo@pobox.com>
2114
2115         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
2116         s/pointer/boxed/.
2117
2118         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
2119
2120         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
2121         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
2122         with the type=GST_TYPE_CAPS. This allows language bindings to know
2123         what kind of data they're dealing with.
2124
2125         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
2126         to NULL when g_value_init is called. GstCaps, which rolls its own
2127         type implementation, now does the same instead of allocating empty
2128         caps.
2129         (_gst_caps_initialize, _gst_caps_collect_value,
2130         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
2131         table methods. This allows G_VALUE_COLLECT to work.
2132
2133 2004-02-05  Andy Wingo  <wingo@pobox.com>
2134
2135         * configure.ac:
2136         * testsuite/Makefile.am (SUBDIRS): 
2137         * testsuite/ghostpads/Makefile.am: 
2138         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
2139
2140         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
2141         These two routines are the only ones that set
2142         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
2143         pad template. They should be made static, depending on ABI needs.
2144         (gst_real_pad_dispose): Handle the case of ghost pads without a
2145         parent. Assert after dealing with ghost pads that the ghost pad
2146         list is empty.
2147         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
2148         set after creation.
2149         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
2150         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
2151         functions. set_property will call add_ghost_pad/remove_ghost_pad
2152         as appropriate.
2153         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
2154
2155         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
2156         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
2157         (gst_element_remove_pad): Handle ghost pads as well.
2158         (gst_element_remove_ghost_pad): Deprecated (could be removed,
2159         depending on API-stability needs).
2160
2161 2004-02-05  Andy Wingo  <wingo@pobox.com>
2162
2163         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
2164         of course they're const
2165
2166 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2167
2168         * tools/Makefile.am:
2169         * tools/gst-feedback:
2170         * tools/gst-feedback-0.7:
2171           make gst-feedback versioned too for consistency
2172
2173 2004-02-11  David Schleef  <ds@schleef.org>
2174
2175         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
2176         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
2177
2178 2004-02-10  Julien MOUTTE <julien@moutte.net>
2179
2180         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
2181         the structure does not contain a valid tag list. Adding a safety check
2182         to remove a noisy warning in that case.
2183
2184 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2185
2186         * gst/gst.c: fix name to be in line with others
2187
2188 2004-02-09  Julien MOUTTE <julien@moutte.net>
2189
2190         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
2191         not shout that loud when len is 0. Just return 0 silently.
2192
2193 2004-02-09  Julien MOUTTE  <julien@moutte.net>
2194
2195         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
2196         because data_unref has one and I prefer the debug to be symetric.
2197         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
2198         were refed when added to the queue and unrefed only once when the queue
2199         was flushed. Now the flush handler unref the buffers two times : first
2200         unref for the ref added when pushing in the queue's tail and second
2201         unref to destroy the flushed buffer.
2202
2203 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2204
2205         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
2206
2207 2004-02-06  David Schleef  <ds@schleef.org>
2208
2209         * docs/random/ds/0.9-suggested-changes: Random ramblings
2210         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
2211         to int before printing.
2212         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
2213         * gst/parse/parse.l: same.  See bug #129600
2214
2215 2004-02-06  David Schleef  <ds@schleef.org>
2216
2217         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
2218         (gst_index_add_entry), (gst_index_add_associationv),
2219         (gst_index_add_association): Add gst_index_add_associationv()
2220         and clean up gst_index_add_association(). #127133
2221
2222 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
2223
2224         * autogen.sh: check out common with right tag if CVS/Tag exists
2225
2226 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
2227
2228         * testsuite/ghostpads/ghostpads.c: (main):
2229           fix testsuite from segfaulting
2230
2231 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
2232
2233         * Makefile.am: add release target
2234         * configure.ac: bump nano to 1
2235         * docs/random/release:
2236
2237 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2238
2239         * gst/gstcaps.h:
2240         * gst/gstelement.c: (gst_element_base_class_init),
2241         (gst_element_class_set_details), (gst_element_clear_pad_caps):
2242         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
2243         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
2244         (gst_real_pad_dispose):
2245         * gst/gststructure.c: (gst_structure_free),
2246         (gst_structure_from_string):
2247           put reverted patch back in
2248         * gst/gstelement.c: (gst_element_remove_pad):
2249           free explicit caps if they're set
2250         * gst/gstpad.c: (_gst_pad_default_fixate_func):
2251           copy the structure when fixating
2252
2253 2004-02-05  David Schleef  <ds@schleef.org>
2254
2255         * gst/gstmarshal.list:
2256         * gst/gstpad.c: (gst_real_pad_class_init),
2257         (_gst_real_pad_fixate_accumulator):
2258         Revert POINTER->BOXED change in signal marshaller.
2259
2260 === release 0.7.4 ===
2261                                                                                 
2262 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
2263                                                                                 
2264         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
2265         * configure.ac: changed for release
2266
2267 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2268
2269         * gstreamer.spec.in:
2270           bump required version of gtk-doc
2271
2272 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
2273
2274         * gst/gstcaps.h:
2275         * gst/gstelement.c: (gst_element_base_class_init),
2276         (gst_element_class_set_details), (gst_element_clear_pad_caps):
2277         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
2278         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
2279         (gst_real_pad_dispose):
2280         * gst/gststructure.c: (gst_structure_free),
2281         (gst_structure_from_string):
2282           revert patch that breaks applications, reapply after release
2283           to get this fixed properly
2284
2285 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2286
2287         * gst/gsttag.c: (_gst_tag_initialize):
2288         * gst/gsttag.h:
2289           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
2290
2291 2004-02-04  David Schleef  <ds@schleef.org>
2292
2293         Fix some memleaks:
2294         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
2295         (gst_spider_plug_from_srcpad):
2296         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
2297
2298 2004-02-04  David Schleef  <ds@schleef.org>
2299
2300         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
2301         a GstRealPad before accessing its structure members.
2302
2303 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2304
2305         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
2306         (gst_clock_get_speed):
2307         * gst/gstclock.h:
2308           reset padding, remove unused fields
2309
2310 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2311
2312         * gst/autoplug/gstspideridentity.c:
2313         (gst_spider_identity_sink_loop_type_finding):
2314           use get_allowed_caps, not get_caps (fixes #132519)
2315         * gst/elements/gsttypefind.c: (stop_typefinding):
2316           use correct order when sending buffers and seeking
2317
2318 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
2319
2320         * configure.ac:
2321         * gst/gstelement.h:
2322         * gst/gstpad.h:
2323         * gst/gstqueue.h:
2324           upgrade libtool CURRENT, reset padding
2325
2326 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
2327
2328         * configure.ac:
2329           bump to prerelease
2330           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
2331
2332 2004-02-04  David Schleef  <ds@schleef.org>
2333
2334         * docs/random/ds/0.9-suggested-changes: random notes
2335         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
2336         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
2337         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
2338         expansion.
2339         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
2340         (gst_filesink_get_query_types): same
2341         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
2342         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
2343         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
2344         to use new GST_PTR_FORMAT.
2345         * gst/gstelement.h: deprecate function factory macros
2346         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
2347         These are our last variadic macros that can't be replaced with
2348         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
2349         attempting to deprecate gst_element_clock_wait().
2350         * gst/gstevent.h: same
2351         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
2352         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
2353         * gst/gstpad.h: deprecate function factory macros similar to above.
2354
2355 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
2356
2357         * configure.ac:
2358         * tools/Makefile.am:
2359         * tools/gst-run.c: (popt_callback), (hash_print_key),
2360         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
2361         (get_candidates), (main):
2362           add new source file to generate non-versioned wrapper binaries
2363           for our tools.
2364
2365 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2366
2367         * gst/gstevent.c: (_gst_event_free):
2368           actually break; inside the switch statement
2369         * gst/parse/grammar.y:
2370           fix memleak where GValues weren't unset
2371
2372 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2373
2374         * gst/gststructure.c: (gst_structure_from_string):
2375           fix huge memleak
2376         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
2377         (new_entry), (gst_type_find_element_chain):
2378         * gst/gstelement.c: (gst_element_base_class_init),
2379         (gst_element_class_set_details):
2380         * gst/gstpad.c: (gst_pad_can_link_filtered):
2381           fix smaller memleaks
2382         * gst/gstpad.c: (gst_real_pad_dispose):
2383           check that explicit caps are gone
2384         * gst/gststructure.c: (gst_structure_free):
2385           actually free the structure
2386         * gst/gstelement.c: (gst_element_clear_pad_caps):
2387           unset explicit caps
2388
2389 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
2390
2391         * tools/Makefile.am:
2392           use AM_CFLAGS since all the CFLAGS are the same
2393           use AM_LDFAGS
2394
2395 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
2396
2397         * docs/manual/gnome.xml:
2398           expand example a little
2399         * gst/gst.c: (gst_init_with_popt_table),
2400         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
2401           make sure popt option displays are done with right textdomain
2402           use GstPoptOption type
2403         * gst/gst.h:
2404           create GstPoptOption type
2405
2406 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
2407
2408         * gst/gsterror.c: (_gst_stream_errors_init):
2409         * gst/gsterror.h:
2410           adding error type for no codec
2411         * po/POTFILES.in:
2412           add gst-inspect
2413         * po/nl.po:
2414           update dutch translation
2415         * tools/gst-inspect.c: (print_element_list), (main):
2416           do proper internationalization
2417         * tools/gst-launch.c: (idle_func):
2418           remove commented out function call
2419
2420 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
2421
2422         * docs/README:
2423           add some error fixing notes
2424         * docs/gst/gstreamer-sections.txt:
2425           remove double entries
2426         * docs/gst/tmpl/gstbin.sgml:
2427         * docs/gst/tmpl/gstclock.sgml:
2428           remove override
2429         * docs/gst/tmpl/gstelement.sgml:
2430         * docs/gst/tmpl/gstindex.sgml:
2431         * docs/gst/tmpl/gstobject.sgml:
2432         * docs/gst/tmpl/gstpadtemplate.sgml:
2433         * docs/gst/tmpl/gstreamer-unused.sgml:
2434         * docs/gst/tmpl/gsttag.sgml:
2435         * docs/gst/tmpl/gstthread.sgml:
2436         * docs/gst/tmpl/gstxml.sgml:
2437         * gst/gsttag.h:
2438           sync header prototypes with c decls
2439         * gst/gsttaginterface.c:
2440           fix doc headers
2441
2442 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2443
2444         * gst/parse/Makefile.am:
2445         * gst/gstobject.h:
2446           get rid of gstmarshal.h dependency. It's not needed.
2447         * gst/gst.h:
2448         * gst/elements/gstfakesink.c:
2449         * gst/elements/gstfakesrc.c:
2450         * gst/elements/gstidentity.c:
2451         * gst/gstbin.c:
2452         * gst/gstelement.c:
2453         * gst/gstindex.c:
2454         * gst/gstobject.c:
2455         * gst/gstpad.c:
2456         * gst/gstthread.c:
2457         * gst/gstxml.c:
2458         * libs/gst/control/dparam.c:
2459         * libs/gst/control/dparammanager.c:
2460           include gstmarshal.h.
2461         Fixes #132045
2462
2463 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2464
2465         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
2466         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
2467         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
2468         * gst/elements/gstfilesrc.h:
2469           don't ref the filesrc when creating mmaped buffers. Don't keep a
2470           list of not-yet-destroyed buffers.
2471         * gst/gstbuffer.h:
2472           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
2473
2474 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2475
2476         * gst/gst.c: (init_pre):
2477           remove textdomain
2478
2479 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
2480
2481         * docs/pwg/advanced-events.xml:
2482         * docs/pwg/advanced-scheduling.xml:
2483         * docs/pwg/intro-basics.xml:
2484         * docs/pwg/other-manager.xml:
2485         * docs/pwg/other-nton.xml:
2486         * docs/pwg/other-ntoone.xml:
2487         * docs/pwg/other-oneton.xml:
2488         * docs/pwg/pwg.xml:
2489           All sort of documentation... Forgot what. Point is that I want this
2490           in before I leave. The 'other-*' will be the last section and will
2491           explain issues specific to these type of elements.
2492
2493 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2494
2495         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
2496         (gst_filesrc_get_read):
2497           set all the values on buffers that we can
2498
2499 2004-02-02  David Schleef  <ds@schleef.org>
2500
2501         Change usage of isblah() to g_ascii_isblah() to be more locale
2502         independent.  (#133076)
2503         * gst/gsturi.c: (gst_uri_protocol_check_internal):
2504         * gst/gstutils.c:
2505         * gst/parse/parse.l:
2506
2507 2004-02-02  Jon Trowbridge  <trow@gnu.org>
2508
2509         reviewed by: David Schleef  <ds@schleef.org>
2510
2511         Fix memory leaks:
2512         * gst/gstcaps.c: (gst_caps_to_string):
2513         * gst/registries/gstxmlregistry.c:
2514         (gst_xml_registry_add_path_list_func),
2515         (gst_xml_registry_parse_padtemplate):
2516
2517 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2518
2519         * gst/gstelement.c: (gst_element_default_error):
2520           suffix error messages with period
2521
2522 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
2523
2524         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
2525         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
2526         * gst/gsterror.c: (gst_error_get_message):
2527           Suffix with dots
2528         * po/fr.po:
2529         * po/nl.po:
2530           Update translation files
2531
2532 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
2533
2534         * gst/autoplug/gstspideridentity.c:
2535         (gst_spider_identity_sink_loop_type_finding):
2536         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
2537         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
2538         (gst_filesink_close_file), (gst_filesink_handle_event),
2539         (gst_filesink_chain):
2540         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
2541         (gst_filesrc_get_read), (gst_filesrc_open_file):
2542         * gst/elements/gstidentity.c: (gst_identity_chain):
2543         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
2544         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
2545         (gst_pipefilter_chain), (gst_pipefilter_open_file):
2546         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
2547         * gst/gsterror.c: (_gst_core_errors_init),
2548         (_gst_library_errors_init), (_gst_resource_errors_init),
2549         (_gst_stream_errors_init), (gst_error_get_message):
2550         * gst/gstpad.c: (gst_pad_set_explicit_caps),
2551         (gst_pad_recover_caps_error), (gst_pad_pull):
2552         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2553         * gst/schedulers/gstbasicscheduler.c:
2554         (gst_basic_scheduler_chainhandler_proxy),
2555         (gst_basic_scheduler_gethandler_proxy),
2556         (gst_basic_scheduler_cothreaded_chain):
2557           Suffix error messages with period.
2558           Use (NULL) instead of NULL
2559
2560 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
2561
2562         * docs/gst/tmpl/gstelement.sgml:
2563         * docs/gst/tmpl/gstxml.sgml:
2564         * gst/gstelement.c: (gst_element_error_full):
2565           add element path to error
2566
2567 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2568
2569         * docs/random/mimetypes:
2570           update raw int/float info
2571         * gst/gsttag.c: (_gst_tag_initialize):
2572         * gst/gsttag.h:
2573           add GST_TAG_ENCODER
2574
2575 2004-01-30  David Schleef  <ds@schleef.org>
2576
2577         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
2578           missing (#132991)
2579
2580 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
2581
2582         reviewed by Benjamin Otte 
2583           parts of the patch submitted in bug #113913
2584
2585         * configure.ac:
2586           use AC_C_INLINE. Use = instead of == with test
2587         * examples/plugins/example.c:
2588         * gst/autoplug/gstspideridentity.c:
2589         * gst/elements/gstfdsrc.c:
2590         * gst/elements/gstfilesrc.c:
2591         * gst/elements/gstidentity.c:
2592         * gst/elements/gstmultidisksrc.c:
2593         * gst/elements/gststatistics.c:
2594         * gst/gstelement.c:
2595         * gst/gstobject.c:
2596         * gst/gstpad.c:
2597         * gst/gstpipeline.c:
2598         * gst/gstthread.c:
2599           don't end enums with a comma
2600         * gst/gstindex.c: (gst_index_compare_func):
2601           do explicit casting to gint
2602         * gst/gsttrace.c: (gst_trace_text_flush):
2603           #define strsize as a macro
2604
2605 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
2606
2607         * docs/README:
2608         * docs/gst/gstreamer-docs.sgml:
2609         * docs/gst/gstreamer-sections.txt:
2610         * docs/gst/tmpl/gstelement.sgml:
2611         * docs/gst/tmpl/gsterror.sgml:
2612         * docs/gst/tmpl/gstinterface.sgml:
2613         * docs/gst/tmpl/gstreamer-unused.sgml:
2614         * docs/gst/tmpl/gststructure.sgml:
2615         * docs/gst/tmpl/gsttag.sgml:
2616         * docs/gst/tmpl/gsttaginterface.sgml:
2617         * docs/gst/tmpl/gstvalue.sgml:
2618         make sure all API ends up in the built docs
2619         * gst/gstinterface.c:
2620         * gst/gststructure.c: (gst_structure_id_set_value),
2621         (gst_structure_set_value), (gst_structure_id_get_value):
2622         * gst/gststructure.h:
2623         * gst/gstvalue.h:
2624         sync .h with .c declarations
2625
2626 2004-01-30  Julien Moutte  <julien@moutte.net>
2627
2628         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
2629         Ronald will fix riffread.
2630
2631 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
2632
2633         * docs/pwg/advanced-interfaces.xml:
2634           Added tuner interface docs.
2635
2636 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2637
2638         * docs/random/mimetypes:
2639           correct Theora information
2640         * gst/gstelement.h:
2641           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
2642
2643 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2644
2645         * gst/gstelement.c: (gst_element_error_full):
2646         * gst/gstelement.h:
2647           GST_ELEMENT_ERROR in enum -> _IN_ERROR
2648
2649 2004-01-29  Julien MOUTTE  <julien@moutte.net>
2650
2651         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
2652         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
2653         again and even before DISCONT.
2654         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
2655         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
2656         bytestream so that it's not stopping to fill the bytestream if events
2657         different than EOS or DISCONT are received. Instead it process them so
2658         that they go downstream.
2659
2660 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2661
2662         * docs/gst/tmpl/gstelement.sgml:
2663         * docs/gst/tmpl/gstreamer-unused.sgml:
2664         * docs/gst/tmpl/gstxml.sgml:
2665         * gst/autoplug/gstspideridentity.c:
2666         (gst_spider_identity_sink_loop_type_finding):
2667         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
2668         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
2669         (gst_filesink_close_file), (gst_filesink_handle_event),
2670         (gst_filesink_chain):
2671         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
2672         (gst_filesrc_get_read), (gst_filesrc_open_file):
2673         * gst/elements/gstidentity.c: (gst_identity_chain):
2674         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
2675         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
2676         (gst_pipefilter_chain), (gst_pipefilter_open_file):
2677         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
2678         * gst/gstelement.h:
2679         * gst/gstpad.c: (gst_pad_set_explicit_caps),
2680         (gst_pad_recover_caps_error), (gst_pad_pull):
2681         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2682         * gst/schedulers/gstbasicscheduler.c:
2683         (gst_basic_scheduler_chainhandler_proxy),
2684         (gst_basic_scheduler_gethandler_proxy),
2685         (gst_basic_scheduler_cothreaded_chain):
2686           gst_element_error -> GST_ELEMENT_ERROR
2687
2688 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2689
2690         * docs/Makefile.am:
2691         * docs/gst/tmpl/gstelement.sgml:
2692         * docs/gst/tmpl/gstxml.sgml:
2693         * docs/manuals.mak:
2694         * docs/pwg/advanced-request.xml:
2695         * docs/pwg/advanced-scheduling.xml:
2696         * docs/pwg/advanced-tagging.xml:
2697           fix non-validating docbook using CDATA
2698           make sure make check-local gets run first to check if it validates
2699
2700 2004-01-29  Julien MOUTTE <julien@moutte.net>
2701
2702         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
2703         handling (up and downstream).
2704         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
2705         my_filter thing.
2706
2707 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
2708
2709         * docs/pwg/advanced-tagging.xml:
2710           Add docs about tag writing.
2711
2712 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
2713
2714         * docs/pwg/advanced-tagging.xml:
2715           Add a part about tag reading and application signalling... Tag
2716           writing still needs to be documented.
2717         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
2718           We can set file locations in READY, too.
2719
2720 2004-01-29  Julien MOUTTE <julien@moutte.net>
2721
2722         * docs/random/ds/element-checklist: Adding some notes about src
2723         events.
2724
2725 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
2726
2727         * docs/random/mimetypes:
2728           Update docs to point to correct elements for various mimetypes, and
2729           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
2730           <stephane.loeuillet@tiscali.fr>.
2731
2732 2004-01-28  David Schleef  <ds@schleef.org>
2733
2734         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
2735
2736 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2737
2738         * docs/random/mimetypes:
2739           update docs for audio/x-raw-float. Add "buffer-frames=0 means
2740           undefined"
2741         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
2742           make it only work in NULL.
2743         * gst/gstcaps.c:
2744           don't posion NULL caps
2745         * gst/gstelement.c: (gst_element_set_time):
2746           add debugging statement
2747         * gst/gstelement.c: (gst_element_emit_found_tag),
2748         (gst_element_found_tag_func), (gst_element_found_tags):
2749         * gst/gstelement.h:
2750           These functions take const taglists
2751         * gst/gstpad.c: (gst_pad_proxy_getcaps):
2752           fix memleak
2753         * gst/gstpad.c: (gst_pad_event_default):
2754           make more effort on handling discont and clocks, g_warn if everything
2755           fails
2756         * gst/gststructure.c: (gst_structure_remove_fields),
2757         (gst_structure_remove_fields_valist):
2758         * gst/gststructure.h:
2759           add gst_structure_remove_fields(_valist)
2760         * gst/gsttag.c:
2761           fix doc glitch
2762
2763 2004-01-28  David Schleef  <ds@schleef.org>
2764
2765         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
2766         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
2767         Fix memory leakage of gst_caps_to_string().
2768
2769         Use GST_PTR_FORMAT instead of gst_caps_to_string():
2770         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
2771         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
2772         (gst_spider_identity_sink_loop_type_finding):
2773         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
2774         (find_suggest):
2775         * gst/gstpad.c: (gst_pad_try_relink_filtered),
2776         (gst_pad_set_explicit_caps):
2777         * gst/parse/grammar.y:
2778
2779 2004-01-28  David Schleef  <ds@schleef.org>
2780
2781         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
2782         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
2783         * docs/random/ds/0.9-suggested-changes: Notes from Company.
2784         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
2785         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
2786         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
2787         (gst_debug_log_default), (_gst_info_printf_extension),
2788         (_gst_info_printf_extension_arginfo):  Add printf extension.
2789         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
2790         * gst/gststructure.c: (gst_structure_to_string),
2791         (_gst_structure_parse_value): Use gst_value_deserialize() and
2792         remove old code.
2793         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
2794         (gst_value_deserialize_boolean), (gst_strtoi),
2795         (gst_value_deserialize_int), (gst_value_deserialize_double),
2796         (gst_value_deserialize_string), (gst_value_deserialize): Implement
2797         a bunch of deserialize functions and gst_value_deserialize.
2798         * gst/gstvalue.h: er, _de_serialize, not unserialize
2799         * testsuite/caps/string-conversions.c: (main): We don't currently
2800         handle (float) in caps, so convert these to (double).
2801         * testsuite/debug/Makefile.am: Add new test for the printf extension
2802         * testsuite/debug/printf_extension.c: (main): same
2803
2804 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2805
2806         * docs/random/company/time:
2807           Add some docs about clocking and time
2808
2809 2004-01-28  Julien MOUTTE <julien@moutte.net>
2810
2811         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
2812
2813 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
2814
2815         * docs/pwg/advanced-clock.xml:
2816         * docs/pwg/advanced-dparams.xml:
2817         * docs/pwg/advanced-events.xml:
2818         * docs/pwg/advanced-interfaces.xml:
2819         * docs/pwg/advanced-midi.xml:
2820         * docs/pwg/advanced-request.xml:
2821         * docs/pwg/advanced-scheduling.xml:
2822         * docs/pwg/advanced-tagging.xml:
2823         * docs/pwg/advanced-types.xml:
2824         * docs/pwg/appendix-checklist.xml:
2825         * docs/pwg/building-boiler.xml:
2826         * docs/pwg/building-chainfn.xml:
2827         * docs/pwg/building-filterfactory.xml:
2828         * docs/pwg/building-pads.xml:
2829         * docs/pwg/building-props.xml:
2830         * docs/pwg/building-signals.xml:
2831         * docs/pwg/building-state.xml:
2832         * docs/pwg/building-testapp.xml:
2833         * docs/pwg/intro-basics.xml:
2834         * docs/pwg/intro-preface.xml:
2835         * docs/pwg/other-autoplugger.xml:
2836         * docs/pwg/other-sink.xml:
2837         * docs/pwg/other-source.xml:
2838         * docs/pwg/titlepage.xml:
2839           fix up id's
2840
2841 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
2842
2843         * docs/95NonPath:
2844         * docs/HACKING:
2845         * docs/README:
2846         * docs/building-the-docs-on-debian:
2847           collect relevant bits of doc info
2848
2849 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
2850
2851         * docs/pwg/advanced_tagging.xml:
2852           Half-assed commit so Thomas can re-arrange document IDs here to be
2853           consistent, too.
2854
2855 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
2856
2857         * docs/manual/autoplugging.xml:
2858         * docs/manual/bins-api.xml:
2859         * docs/manual/bins.xml:
2860         * docs/manual/buffers-api.xml:
2861         * docs/manual/buffers.xml:
2862         * docs/manual/clocks.xml:
2863         * docs/manual/components.xml:
2864         * docs/manual/cothreads.xml:
2865         * docs/manual/debugging.xml:
2866         * docs/manual/dparams-app.xml:
2867         * docs/manual/dynamic.xml:
2868         * docs/manual/elements-api.xml:
2869         * docs/manual/elements.xml:
2870         * docs/manual/factories.xml:
2871         * docs/manual/gnome.xml:
2872         * docs/manual/goals.xml:
2873         * docs/manual/helloworld.xml:
2874         * docs/manual/helloworld2.xml:
2875         * docs/manual/init-api.xml:
2876         * docs/manual/intro.xml:
2877         * docs/manual/links-api.xml:
2878         * docs/manual/links.xml:
2879         * docs/manual/manual.xml:
2880         * docs/manual/motivation.xml:
2881         * docs/manual/pads-api.xml:
2882         * docs/manual/pads.xml:
2883         * docs/manual/plugins-api.xml:
2884         * docs/manual/plugins.xml:
2885         * docs/manual/programs.xml:
2886         * docs/manual/queues.xml:
2887         * docs/manual/quotes.xml:
2888         * docs/manual/schedulers.xml:
2889         * docs/manual/states-api.xml:
2890         * docs/manual/states.xml:
2891         * docs/manual/threads.xml:
2892         * docs/manual/typedetection.xml:
2893         * docs/manual/xml.xml:
2894           use chapter, part, section or misc as id starts for all bits
2895
2896 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
2897
2898         * docs/gst/gstreamer-sections.txt:
2899           Fix up TITLE of the sections
2900
2901 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
2902
2903         * docs/pwg/advanced_interfaces.xml:
2904           Add documentation on propertyprobing.
2905         * docs/pwg/advanced_events.xml:
2906         * docs/pwg/advanced_tagging.xml:
2907         * docs/pwg/building_boiler.xml:
2908         * docs/pwg/building_filterfactory.xml:
2909         * docs/pwg/pwg.xml:
2910           Move filterfactory and tagging into their own chapter, add a chapter
2911           on events. all these are empty placeholders that will be filled in
2912           some day.
2913
2914 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
2915
2916         * docs/pwg/advanced_interfaces.xml:
2917           Docs for mixer interface. Also a check for website uploading.
2918
2919 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
2920
2921         * docs/HACKING:
2922         * docs/Makefile.am:
2923         * docs/faq/Makefile.am:
2924         * docs/gst/Makefile.am:
2925         * docs/gst/tmpl/gstelement.sgml:
2926         * docs/gst/tmpl/gstplugin.sgml:
2927         * docs/gst/tmpl/gstreamer-unused.sgml:
2928         * docs/libs/Makefile.am:
2929         * docs/manual/Makefile.am:
2930         * docs/manuals.mak:
2931         * docs/pwg/Makefile.am:
2932         * docs/upload.mak:
2933           Separate out upload target and make it similar for
2934           both docbook and gtk-doc docs
2935
2936 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
2937
2938         * docs/manuals.mak:
2939           Fix upload target to work with freedesktop
2940
2941 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
2942
2943         * docs/pwg/advanced_types.xml:
2944           Add notes on creating your own types.
2945         * docs/pwg/building_boiler.xml:
2946         * docs/pwg/building_pads.xml:
2947         * docs/pwg/building_state.xml:
2948           Add some stuff about how to retrieve values from structures, how
2949           that relates to types and change layout slightly again to be almost
2950           perfect.
2951
2952 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
2953
2954         * docs/pwg/advanced_dparams.xml:
2955         * docs/pwg/advanced_scheduling.xml:
2956           Change index layout slightly.
2957
2958 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
2959
2960         * docs/pwg/advanced_clock.xml:
2961         * docs/pwg/advanced_interfaces.xml:
2962         * docs/pwg/advanced_midi.xml:
2963           General placeholders for now.
2964         * docs/pwg/advanced_request.xml:
2965           Explanation about sometimes and request pads.
2966         * docs/pwg/advanced_scheduling.xml:
2967           Concept of bytestream, loopfunctions and schedulers.
2968         * docs/pwg/building_boiler.xml:
2969           Add something about plugin-init.
2970
2971 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
2972
2973         * docs/pwg/building_pads.xml:
2974           Fix broken docbook
2975
2976 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
2977
2978         * docs/pwg/advanced_interfaces.xml:
2979         * docs/pwg/pwg.xml:
2980           Add as a placeholder for future filling-in.
2981         * docs/pwg/basics_autoplugging.xml:
2982         * docs/pwg/basics_buffers.xml:
2983         * docs/pwg/basics_elements.xml:
2984         * docs/pwg/basics_events.xml:
2985         * docs/pwg/basics_plugins.xml:
2986         * docs/pwg/basics_types.xml:
2987           Remove, because unused (this is all in intro_basics.xml).
2988         * docs/pwg/building_signals.xml:
2989           Short intro to signals + reference to GObject docs - we really
2990           shouldn't go into these sort of things to deply because we don't
2991           use them that extensively anyway.
2992         * docs/pwg/building_state.xml:
2993           Explanation of states. Benjamin, please check.
2994         * docs/pwg/building_testapp.xml:
2995           Put everything in one page - putting only a few lines of content
2996           per page doesn't really make sense.
2997
2998           Time to get into the advanced topics. ;).
2999
3000 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
3001
3002         * docs/pwg/advanced_types.xml:
3003           Finish documenting the current state of mimetypes.
3004         * docs/pwg/building_boiler.xml:
3005         * docs/pwg/building_chainfn.xml:
3006         * docs/pwg/building_pads.xml:
3007         * docs/pwg/building_props.xml:
3008         * docs/pwg/building_testapp.xml:
3009           Start documenting the "how to build a simple audio filter" part
3010           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
3011           states and (maybe?) a short introduction to capsnego in the chapter
3012           on pads (building_pads.xml). Capsnego should probably be explained
3013           fully in advanced_capsnego.xml or so.
3014
3015 2004-01-26  David Schleef  <ds@schleef.org>
3016
3017         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
3018         * gst/gstpad.h: Add new function to allow element to (somewhat)
3019         specify non-fixed caps on a pad.
3020         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
3021         that I added a few weeks ago.
3022
3023 2004-01-26  David Schleef  <ds@schleef.org>
3024
3025         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
3026           making try_set_caps() work with non-fixed caps.
3027
3028 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
3029
3030         * docs/pwg/advanced_types.xml:
3031         * docs/pwg/intro_basics.xml:
3032         * docs/pwg/intro_preface.xml:
3033         * docs/pwg/pwg.xml:
3034         * docs/pwg/titlepage.xml:
3035           First try to resurrect the PWG. I'm halfway integrating the mimetypes
3036           in here (docs/random/mimetypes), and will from there on work on both
3037           updating outdated parts and adding missing parts.
3038           That doesn't mean I'll fix it completely, but I'll try at least. ;).
3039
3040 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
3041
3042         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
3043           policy is set
3044
3045 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3046
3047         * gst/gstelement.h:
3048           remove gst_element_factory_get_version. It doesn't exist anymore.
3049         * gst/gstplugin.c:
3050         * gst/gstplugin.h:
3051           remove gst_plugin_set_name and change gst_plugin_get_longname to
3052           gst_plugin_get_description to match code.
3053         * gst/gsterror.h:
3054           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
3055         * gst/gstpad.c: (gst_pad_try_set_caps):
3056           make it work with nonfixed caps.
3057           Note that even in the nonfixed case the link function of the pad
3058           that tries to set caps isn't called.
3059
3060 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3061
3062         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
3063           fix bug where buffer was not assembled correctly
3064         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
3065           silence by default
3066         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
3067           only seek if there's no more buffers that could work without seeking
3068
3069 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
3070
3071         * gst/gsttag.c: (_gst_tag_initialize):
3072         * gst/gsttag.h:
3073           Add application tag (for encoding/muxing app).
3074
3075 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3076
3077         * autogen.sh:
3078           make autopoint force, and libtoolize not copy
3079         * common/m4/as-docbook.m4:
3080           added docbook xml catalog setup check
3081         * common/m4/gst-doc.m4:
3082           use docbook check
3083
3084 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3085
3086         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
3087         * gst/gsttag.h:
3088           add GstTagFlag
3089
3090 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
3091
3092         * docs/gst/gstreamer-sections.txt:
3093         * docs/gst/tmpl/gst.sgml:
3094         * docs/gst/tmpl/gstbuffer.sgml:
3095         * docs/gst/tmpl/gstclock.sgml:
3096         * docs/gst/tmpl/gstelement.sgml:
3097         * docs/gst/tmpl/gstreamer-unused.sgml:
3098         * docs/gst/tmpl/gstxml.sgml:
3099           sync latest API changes to docs
3100
3101 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
3102
3103         * gst/gstpluginfeature.c:
3104           fix doc snippet
3105         * tools/gst-inspect.c: (print_element_list):
3106           fix output of typefind
3107           add GPL header
3108         * tools/gst-launch.c:
3109           add GPL header
3110
3111 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
3112
3113         * gst/elements/Makefile.am:
3114         * gst/elements/gstelements.c:
3115         * gst/elements/gsttypefindelement.c:
3116         * gst/elements/gsttypefindelement.h:
3117         * po/POTFILES.in:
3118         * po/fr.po:
3119         * po/nl.po:
3120           renamed gsttypefindelement to gsttypefind, conserving CVS history
3121
3122 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
3123
3124         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
3125         * gst/gsttag.h:
3126           add some tags used in ogg as well
3127           fix _ in replaygain tags
3128
3129 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
3130
3131         * gst/gsterror.h:
3132           fix wrong GST_LIBRARY_ERROR_ENCODE addition
3133
3134 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
3135
3136         * gst/gstelement.c: (gst_element_error_full):
3137         * gst/gstelement.h:
3138           change _extended to _full
3139
3140 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
3141
3142         reviewed by: <delete if not using a buddy>
3143
3144         * docs/gst/tmpl/gst.sgml:
3145         * docs/gst/tmpl/gstbuffer.sgml:
3146         * docs/gst/tmpl/gstclock.sgml:
3147         * docs/gst/tmpl/gstelement.sgml:
3148         * docs/gst/tmpl/gstreamer-unused.sgml:
3149         * docs/gst/tmpl/gstxml.sgml:
3150         * gst/gstelement.c: (gst_element_error_full):
3151         * gst/gstelement.h:
3152
3153 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
3154
3155         * gst/gstelement.h: fix _gst_element_error_printf prototype
3156
3157 2004-01-20  David Schleef  <ds@schleef.org>
3158
3159         * gst/gststructure.c: (gst_structure_to_string):
3160         Convert function to use gst_value_serialize().
3161         * gst/gstvalue.c: (gst_value_serialize_list),
3162         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
3163         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
3164         (gst_value_serialize_int), (gst_value_serialize_double),
3165         (gst_string_wrap), (gst_value_serialize_string),
3166         (gst_value_serialize), (gst_value_deserialize):
3167         * gst/gstvalue.h:
3168         Add implementations for serialize.
3169
3170 2004-01-20  Julien MOUTTE  <julien@moutte.net>
3171
3172         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
3173         we want to keep that one in the future or change xvidenc.c to use 
3174         another error.
3175
3176 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3177
3178         * gst/gstelement.c: (_gst_element_error_printf):
3179         * gst/gstelement.h:
3180           privatise function
3181
3182 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3183
3184         * docs/random/error:
3185           doc explaining error system
3186         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
3187           cleanup
3188
3189 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3190
3191         * gst/gst-i18n-app.h:
3192         * gst/gst-i18n-lib.h:
3193           remove inclusion of config.h
3194         * po/POTFILES.in:
3195         * po/nl.po:
3196           add gst/gstelement.c
3197
3198 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3199
3200         * po/nl.po: updated Dutch translation
3201
3202 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3203
3204         * gst/gsterror.c: (_gst_core_errors_init),
3205         (_gst_library_errors_init), (_gst_resource_errors_init),
3206         (_gst_stream_errors_init):
3207         remove ending punctuation dots
3208
3209 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3210
3211         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
3212         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
3213         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
3214         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
3215         (gst_pipefilter_chain), (gst_pipefilter_open_file):
3216         use GST_ERROR_SYSTEM
3217
3218 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3219
3220         * gst/gstelement.c: (gst_element_error_printf),
3221         (gst_element_error_extended):
3222         * gst/gstelement.h:
3223           add a helper printf function so we can have NULL values passed.
3224
3225 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3226
3227         * gst/gstelement.h:
3228           add G_STMT macros to gst_element_error, which isn't strictly
3229           necessary but people tell me to anyway.
3230
3231 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
3232
3233         * gst/Makefile.am:
3234         * gst/autoplug/gstspideridentity.c:
3235         (gst_spider_identity_sink_loop_type_finding):
3236         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
3237         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
3238         (gst_filesink_close_file), (gst_filesink_handle_event),
3239         (gst_filesink_chain):
3240         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
3241         (gst_filesrc_map_region), (gst_filesrc_get_read),
3242         (gst_filesrc_open_file):
3243         * gst/elements/gstidentity.c: (gst_identity_chain):
3244         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
3245         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
3246         (gst_pipefilter_chain), (gst_pipefilter_open_file):
3247         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
3248         * gst/gst.h:
3249         * gst/gst_private.h:
3250         * gst/gstelement.c: (gst_element_class_init),
3251         (gst_element_default_error), (gst_element_error_func),
3252         (gst_element_error_extended):
3253         * gst/gstelement.h:
3254         * gst/gsterror.c: (_gst_core_errors_init),
3255         (_gst_library_errors_init), (_gst_resource_errors_init),
3256         (_gst_stream_errors_init), (gst_error_get_message):
3257         * gst/gsterror.h:
3258         * gst/gstinfo.c: (_gst_debug_init):
3259         * gst/gstmarshal.list:
3260         * gst/gstpad.c: (gst_pad_set_explicit_caps),
3261         (gst_pad_recover_caps_error), (gst_pad_pull):
3262         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3263         * gst/schedulers/gstbasicscheduler.c:
3264         (gst_basic_scheduler_chainhandler_proxy),
3265         (gst_basic_scheduler_gethandler_proxy),
3266         (gst_basic_scheduler_cothreaded_chain):
3267         * po/POTFILES.in:
3268         * po/fr.po:
3269         * po/nl.po:
3270           change error signal
3271           add error categories
3272
3273 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
3274
3275         * gst/gsttag.c: (_gst_tag_initialize):
3276         * gst/gsttag.h:
3277         Add replaygain tag
3278
3279 2004-01-18  Colin Walters  <walters@verbum.org>
3280
3281         * examples/retag/retag.c: Call gst_init before processing
3282         program args.  Add g_assert to _link_many call.
3283
3284 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3285
3286         * gst/gstpad.c: (gst_pad_alloc_buffer):
3287           Return a newly allocated buffer when the pad has no peer.
3288
3289 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3290
3291         * gst/gstclock.c: (gst_clock_get_time):
3292           make it compile with gcc 2.95 again.
3293           Patch by Scott Wheeler
3294
3295 2004-01-15  David Schleef  <ds@schleef.org>
3296
3297         * gst/gstcaps.h:
3298         Added gst_caps_is_simple() macro.
3299         * testsuite/caps/caps.c: (test1):
3300         * testsuite/caps/intersect2.c: (main):
3301         * testsuite/caps/intersection.c: (main):
3302         Fixes to make 'make check' work again after removing
3303         gst_caps_is_chained().
3304
3305 2004-01-15  Leif Johnson <leif@ambient.2y.net>
3306
3307         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
3308         and additions to the MIDI document.
3309
3310 2004-01-15  David Schleef  <ds@schleef.org>
3311
3312         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
3313         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
3314         of GST_RPAD_, since we don't know if it's a real or ghost pad.
3315
3316 2004-01-15  David Schleef  <ds@schleef.org>
3317
3318         * gst/gstqueue.c:
3319         * gst/gstqueue.h:
3320         Fix the spelling of "treshold" and make min_threshold actually
3321         affect the queue.
3322
3323 2004-01-15  David Schleef  <ds@schleef.org>
3324
3325         * gst/gstcaps.c:
3326         Add lots of documentation.
3327         * gst/gstcaps.h:
3328         Deprecate a few functions.
3329         * gst/gstpad.c:
3330         Removed use of deprecated functions.
3331
3332 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3333
3334         * gst/gstpad.c: (gst_pad_is_linked):
3335         * gst/gstpad.h:
3336           implement gst_pad_is_linked
3337         * gst/gstelement.h:
3338           reserve space for initiate_state_change
3339
3340 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3341
3342         * gst/autoplug/gstspideridentity.c:
3343         (gst_spider_identity_sink_loop_type_finding):
3344           break infinite loop by just returning instead of looping
3345         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
3346           set event time difference correctly. Set it to 1 second instead
3347           of 100ms to be more tolerant
3348         * gst/gstelement.c: (gst_element_set_time):
3349           add debugging output
3350
3351 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3352
3353         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
3354           query if buffers are inside the pool, ignore events
3355
3356 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3357
3358         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
3359         (gst_clock_set_speed), (gst_clock_set_active),
3360         (gst_clock_is_active), (gst_clock_reset),
3361         (gst_clock_handle_discont):
3362         * gst/gstclock.h:
3363           deprecate old interface and disable functions that aren't in use
3364           anymore.
3365         * gst/gstelement.h:
3366         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
3367         (gst_element_set_time), (gst_element_adjust_time):
3368           add concept of "element time" and functions to get/set this time.
3369         * gst/gstelement.c: (gst_element_change_state):
3370           update element time correctly.
3371         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
3372           This is a debug message, not a g_critical.
3373         * gst/gstpad.c: (gst_pad_event_default):
3374           handle discontinuous events right with element time.
3375         * gst/gstscheduler.c: (gst_scheduler_state_transition):
3376           update to clocking fixes.
3377           set clocks on elements in READY=>PAUSED. The old behaviour caused
3378           a wrong element time on the first element that started playing.
3379         * gst/schedulers/gstbasicscheduler.c:
3380         (gst_basic_scheduler_class_init):
3381         * gst/schedulers/gstoptimalscheduler.c:
3382         (gst_opt_scheduler_class_init):
3383           remove code that just implements the default behaviour.
3384         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
3385           update to use new clocking functions
3386         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
3387         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
3388           update to test new element time.
3389         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
3390           use _get_allowed_caps instead of _get_caps. This catches filtered
3391           caps correctly.
3392         * testsuite/debug/commandline.c:
3393           update for new GST_DEBUG syntax.
3394         * testsuite/threads/Makefile.am:
3395           disable a test that only works sometimes.
3396
3397 2004-01-13  Julien MOUTTE <julien@moutte.net>
3398
3399         * po/LINGUAS: Adding fr.
3400         * po/fr.po: Adding french translation.
3401
3402 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3403
3404         * gst/parse/grammar.y:
3405         * po/POTFILES.in:
3406         * po/nl.po:
3407         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
3408           translate parsing error messages
3409
3410 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3411
3412         * po/POTFILES.in: adding gst-launch
3413         * po/nl.po: updated translation, all 99 strings translated
3414         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
3415         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
3416           fix strings for translation
3417
3418 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3419
3420         * gst/gst.c:
3421           - capitalize beginnings of popt options
3422           - fix strings for translation
3423           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
3424
3425 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3426
3427         * po/README: add some notes on how to update translations
3428
3429 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3430
3431         * ABOUT-NLS: removed, is autogenerated from autopoint
3432         * autogen.sh: add autopoint stuff
3433         * configure.ac: fix up gettext stuff
3434         * gst/Makefile.am: add i18n headers to noinst_HEADERS
3435         * gst/elements/gsttypefindelement.c: add header include
3436         * gst/gettext.h: add header, copy from system-installed header
3437         * gst/gst-i18n-app.h: to be included by each app having translations
3438         * gst/gst-i18n-lib.h: to be included by each lib having translations
3439         * gst/gst.c: (init_pre): fix up gettext calls
3440         * gst/gst_private.h: remove i18n stuff, moving to separate headers
3441         * po/LINGUAS: the new way to specify translations present
3442         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
3443         * po/Makevars: the variables filled in for GStreamer
3444         * po/POTFILES.in: added new files with translations
3445         * po/de.po: has new strings
3446         * po/nl.po: readded, has new strings
3447
3448 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3449
3450         * gst/gsttag.c: fix some strings marked for translation
3451
3452 2004-01-13  Iain <iain@prettypeople.org>
3453
3454         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
3455         group when we add an element to it, cos we unref it when we remove one
3456
3457 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
3458
3459         * testsuite/debug/commandline.c: (debug_not_reached):
3460         * testsuite/debug/output.c: (check_message):
3461           fix testsuite
3462
3463 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3464
3465         * examples/cutter/.cvsignore:
3466         * examples/helloworld/.cvsignore:
3467         * examples/launch/.cvsignore:
3468         * examples/manual/.cvsignore:
3469         * examples/mixer/.cvsignore:
3470         * examples/pingpong/.cvsignore:
3471         * examples/plugins/.cvsignore:
3472         * examples/queue/.cvsignore:
3473         * examples/queue2/.cvsignore:
3474         * examples/queue3/.cvsignore:
3475         * examples/queue4/.cvsignore:
3476         * examples/retag/.cvsignore:
3477         * examples/thread/.cvsignore:
3478         * examples/typefind/.cvsignore:
3479         * examples/xml/.cvsignore:
3480         * gst/.cvsignore:
3481         * gst/autoplug/.cvsignore:
3482         * gst/elements/.cvsignore:
3483         * gst/indexers/.cvsignore:
3484         * gst/parse/.cvsignore:
3485         * gst/registries/.cvsignore:
3486         * gst/schedulers/.cvsignore:
3487         * libs/gst/bytestream/.cvsignore:
3488         * libs/gst/control/.cvsignore:
3489         * libs/gst/getbits/.cvsignore:
3490         * tests/.cvsignore:
3491         * tests/bufspeed/.cvsignore:
3492         * tests/instantiate/.cvsignore:
3493         * tests/memchunk/.cvsignore:
3494         * tests/muxing/.cvsignore:
3495         * tests/sched/.cvsignore:
3496         * tests/seeking/.cvsignore:
3497         * tests/threadstate/.cvsignore:
3498         * testsuite/.cvsignore:
3499         * testsuite/caps/.cvsignore:
3500         * testsuite/cleanup/.cvsignore:
3501         * testsuite/dynparams/.cvsignore:
3502         * testsuite/plugin/.cvsignore:
3503         * tools/.cvsignore:
3504           update - this is huge, because it includes *.bb, *.bbg and *.da files
3505           which are generated for gcov.
3506
3507 2004-01-11  David Schleef  <ds@schleef.org>
3508
3509         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
3510         a function to parse integers in ways that strto[u]l() does not.
3511
3512 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3513
3514         * tools/gst-inspect.c: (print_caps):
3515           improve output of caps a bit
3516
3517 2004-01-11  David Schleef  <ds@schleef.org>
3518
3519         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
3520         inherit correct flags (READONLY and DONTKEEP).
3521
3522 2004-01-11  David Schleef  <ds@schleef.org>
3523
3524         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
3525         (gst_filesrc_map_region):
3526         * gst/gstbuffer.c: (_gst_buffer_initialize),
3527         (_gst_buffer_sub_free), (gst_buffer_default_copy),
3528         (gst_buffer_new), (gst_buffer_create_sub),
3529         (gst_buffer_is_span_fast), (gst_buffer_span):
3530         * gst/gstbuffer.h:
3531         Change GstBuffer private structure element names. (all files)
3532         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3533         (gst_queue_link):
3534         * gst/gstqueue.h:
3535         Implement getcaps/pad_link functions that handle the case where
3536         there are data in the queue.
3537
3538 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3539
3540         * gst/elements/gstbufferstore.c:
3541           initialize debugging structure correctly
3542         * gst/elements/gsttee.c: (gst_tee_set_property):
3543           g_object_notify when property was changed
3544         * gst/elements/gsttypefindelement.c:
3545         (gst_type_find_element_change_state):
3546           clear caps correctly
3547
3548 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3549
3550         * gst/gstqueue.c: (gst_queue_init):
3551           Use better defaults for when a queue should block. This
3552           gets rid of jerky playback for quite a few files.
3553           It takes more memory.
3554
3555 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3556
3557         (gst_xml_registry_parse_padtemplate):
3558           make critical message slightly more useful
3559
3560 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3561
3562         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
3563         (gst_debug_message_get), (gst_debug_log_default):
3564         * gst/gstinfo.h:
3565           Change gst_debug_log(_valist) to take a const format string.
3566           Change prototype of log function and functions using those to 
3567           take a GstDebugMessage instead of a string that requires using
3568           gst_debug_message_get.
3569
3570 2004-01-08  David Schleef  <ds@schleef.org>
3571
3572         * Makefile.am:
3573         * configure.ac:
3574         Add option --enable-gcov to build GStreamer with -fprofile-arcs
3575         and -ftest-coverage, which allows gcov to show information about
3576         testsuite coverage.
3577
3578 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3579
3580         * gst/gstutils.h:
3581           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
3582           GST_PARENT_CALL_WITH_DEFAULT
3583         * gst/elements/gstaggregator.c: 
3584         * gst/elements/gstbufferstore.c: 
3585         * gst/elements/gstfakesink.c: 
3586         * gst/elements/gstfakesrc.c: 
3587         * gst/elements/gstfdsink.c: 
3588         * gst/elements/gstfdsrc.c: 
3589         * gst/elements/gstfilesink.c: 
3590         * gst/elements/gstfilesrc.c: 
3591         * gst/elements/gstidentity.c: 
3592         * gst/elements/gstmd5sink.c: 
3593         * gst/elements/gstmultidisksrc.c:
3594         * gst/elements/gstpipefilter.c: 
3595         * gst/elements/gstshaper.c:
3596         * gst/elements/gststatistics.c:
3597         * gst/elements/gsttee.c:
3598         * gst/elements/gsttypefindelement.c:
3599           use them.
3600
3601 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3602
3603         * docs/gst/gstreamer-docs.sgml: remove props
3604         * docs/gst/gstreamer-sections.txt: remove props
3605         * docs/gst/tmpl/gst.sgml:
3606         * docs/gst/tmpl/gstbin.sgml:
3607         * docs/gst/tmpl/gstbuffer.sgml:
3608         * docs/gst/tmpl/gstcaps.sgml:
3609         * docs/gst/tmpl/gstclock.sgml:
3610         * docs/gst/tmpl/gstelement.sgml:
3611         * docs/gst/tmpl/gstindex.sgml:
3612         * docs/gst/tmpl/gstobject.sgml:
3613         * docs/gst/tmpl/gstpad.sgml:
3614         * docs/gst/tmpl/gstpadtemplate.sgml:
3615         * docs/gst/tmpl/gstreamer-unused.sgml:
3616         * docs/gst/tmpl/gstthread.sgml:
3617         * docs/gst/tmpl/gstxml.sgml:
3618           sync with code reorganization
3619
3620 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
3621
3622         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
3623         Make the 'Could not find compatible pad' message more informative.
3624
3625 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
3626                                                                                 
3627         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
3628           Fix for if we pass NULL as property to location.
3629         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
3630         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
3631           Fix for instantiate-test (see below).
3632         * gst/gststructure.c: (_gst_structure_parse_value):
3633           Fix compile error on gcc-2.96.
3634         * configure.ac:
3635         * tests/Makefile.am:
3636         * tests/instantiate/Makefile.am:
3637         * tests/instantiate/create.c: (create_all_elements), (main):
3638           Add a test that instantiates all elements. This makes it easy to
3639           track dead code for old API/design (like setting event functions
3640           on sink pads and so on).
3641
3642 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
3643
3644         * gst/gstcaps.c: (gst_caps_append_structure):
3645           Move the poisoning to allow a NULL structure
3646         * gst/gstevent.c: (_gst_event_free):
3647           When freeing a navigation event, free the structure
3648           also
3649
3650 2004-01-04  David Schleef  <ds@schleef.org>
3651
3652         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
3653         Remove usage of gst_pad_proxy_fixate.
3654         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
3655         (gst_caps_split_one), (gst_caps_replace):
3656         Add poisoning code.
3657         * gst/gstmarshal.list:
3658         Add pointer__pointer for fixate signal
3659         * gst/gstpad.c: (gst_real_pad_class_init),
3660         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
3661         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
3662         (gst_pad_set_explicit_caps), (gst_pad_template_new):
3663         Add poisoning code. Add fixate signal on RealPad. Change
3664         set_explicit_caps() to take const GstCaps, like try_set_caps().
3665         * gst/gstpad.h:
3666         * testsuite/caps/Makefile.am:
3667         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
3668
3669 2004-01-03  David Schleef  <ds@schleef.org>
3670
3671         * gst/elements/gsttypefindelement.c:
3672         (gst_type_find_element_have_type), (gst_type_find_element_init):
3673         Use gst_pad_use_explicit_caps for src pad.
3674         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
3675         before using it.
3676
3677 2004-01-03  David Schleef  <ds@schleef.org>
3678
3679         * gst/gstelement.c: (gst_element_link_pads_filtered),
3680         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
3681         that linking was successful.
3682         * gst/gstpad.c: (gst_pad_link_free),
3683         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
3684         (gst_pad_link_try), (gst_pad_link_unnegotiate),
3685         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
3686         GstPadLinkReturn correctly between functions, and don't fail
3687         when DELAYED is used (DELAYED is very important).  Better
3688         cleanup on unlinking and unnegotiation.  Should fix some spider
3689         bugs.
3690
3691 2004-01-02  David Schleef  <ds@schleef.org>
3692
3693         * gst/gstelement.c: (gst_element_class_init),
3694         (gst_element_base_class_init): ->padtemplates should be cleared
3695         in base_init, since we need to have a fresh list for every
3696         class.  (Alternately, we chould copy the list and share the
3697         actual pad templates (not the list), but that would require
3698         changing every plugin to move pad template registration from
3699         base_init to class_init.)
3700
3701 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
3702
3703         * gst/gstelement.c: (gst_element_class_add_pad_template):
3704           Refuse registering a pad template if another pad template
3705           with the same name already exists (#114715).
3706
3707 2004-01-02  David Schleef  <ds@schleef.org>
3708
3709         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
3710         (gst_caps_is_equal_fixed): Add new function.
3711         * gst/gstcaps.h: ditto.
3712         * gst/gstpad.c: (gst_real_pad_class_init),
3713         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
3714         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
3715         check new caps against existing caps -- if they're the same, return
3716         OK without renegotiating.  caps-nego-failed signal fixed so that
3717         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
3718         to save an extra caps copy.  Don't complete negotiation if a pad
3719         link function returns DELAYED.
3720
3721 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3722
3723         * gst/gstpad.c: (gst_pad_try_relink_filtered):
3724           Fix wrong g_return_if_fail
3725
3726 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
3727
3728         * gst/gstbin.c: (gst_bin_class_init):
3729         Change the marshalling of element_added/element_removed
3730         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
3731         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
3732
3733 2004-01-01  David Schleef  <ds@schleef.org>
3734
3735         * gst/gstpad.c: (gst_pad_set_explicit_caps),
3736         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
3737         (gst_pad_use_explicit_caps):
3738         * gst/gstpad.h:
3739         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
3740         to use an internal getcaps and link fuction so that negotiation
3741         always results in the explicitly set caps.
3742         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
3743         are particularly useful for decoders.
3744
3745 2003-12-31  David Schleef  <ds@schleef.org>
3746
3747         * gst/elements/gstidentity.c: (gst_identity_class_init),
3748         (gst_identity_init), (gst_identity_chain),
3749         (gst_identity_set_property), (gst_identity_get_property):
3750         * gst/elements/gstidentity.h:
3751         * gst/gstqueue.c: (gst_queue_init):
3752           Negotiation fixes.
3753
3754 2003-12-31  David Schleef  <ds@schleef.org>
3755
3756         * gst/gstcaps.c: (gst_caps_intersect),
3757         (_gst_caps_normalize_foreach), (gst_caps_normalize):
3758           Implement gst_caps_normalize().
3759         * testsuite/caps/normalisation.c: (main):
3760           Add an additional test
3761
3762 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
3763
3764         * gst/gstqueue.c: (gst_queue_init):
3765           use gst_pad_proxy_getcaps()
3766
3767 2003-12-31  David Schleef  <ds@schleef.org>
3768
3769         * gst/elements/gstshaper.c: (gst_shaper_link):
3770         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
3771         * gst/gstqueue.c: (gst_queue_link):
3772           Negotiation fixes.
3773
3774 2003-12-31  David Schleef  <ds@schleef.org>
3775
3776         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
3777         * gst/gstpad.h: Add functions that are useful as default pad
3778         link and fixate functions for elements.
3779
3780 2003-12-30  David Schleef  <ds@schleef.org>
3781
3782         * gst/gstpad.c: (gst_pad_link_try):
3783           Fix segfault when attempting to return to old caps
3784
3785 2003-12-29  David Schleef  <ds@schleef.org>
3786
3787         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
3788         (gst_caps_structure_simplify), (gst_caps_simplify):
3789         * gst/gstcaps.h:
3790           Add simplify function
3791         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
3792         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
3793         * gst/gstpad.h:
3794           Copy over srcnotify, sinknotify when calling old pad_link
3795           functions.  Add new is_negotiated() function.
3796         * gst/gststructure.c: (gst_structure_copy):
3797           Fix an incredibly stupid bug that should have been noticed
3798           weeks ago.  _copy() returned the argument, not the new copy.
3799
3800 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3801
3802         * gst/gstcaps.c: (gst_caps_append):
3803           add sanity checks
3804         * gst/gstcaps.h: (gst_caps_debug):
3805           remove, it doesn't exist anymore.
3806         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
3807         (gst_element_threadsafe_properties_post_run):
3808           make debugging messages not clutter up THREAD debug category
3809         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
3810         (gst_element_change_state):
3811           update to new caps API
3812         * gst/gstinterface.c: (gst_implements_interface_cast):
3813           don't put vital code in g_return_if_fail
3814         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
3815         (gst_pad_link_filtered):
3816           add pst_pad_try_link and use it.
3817         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
3818           implement correctly, deprecate first one.
3819         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
3820           add and implement.
3821         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
3822           implement.
3823         (gst_pad_get_negotiated_caps):
3824           add and implement. Make GST_PAD_CAPS call this function.
3825         (gst_pad_get_caps):
3826           remove unneeded check..
3827         (gst_pad_recover_caps_error):
3828           disable, always return FALSE.
3829         (gst_real_pad_dispose):
3830           don't free caps and appfilter anymore, they're unused.
3831         * gst/gstpad.h:
3832           Reflect changes mentioned above.
3833         * gst/gstsystemclock.c: (gst_system_clock_wait):
3834           Make 'clock is way behind' a debugging message.
3835         * gst/gstthread.c: (gst_thread_change_state):
3836           Fix debugging message
3837
3838 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
3839
3840         * gst/gstinfo.h:
3841           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
3842         * docs/gst/tmpl/gstreamer-unused.sgml:
3843           removed all traces of cvs conflicts
3844
3845 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3846
3847         * configure.ac:
3848         * gst/schedulers/cothreads_compat.h:
3849         * libs/Makefile.am:
3850           remove last instances of wingo cothread usage
3851
3852 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3853
3854         * gst/gstplugin.c:
3855         * gst/gstversion.h.in:
3856         * gst/parse/grammar.y:
3857           change comment block from /** to /* when not gtk-doc comments
3858
3859 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3860
3861         * gst/gst.c: whitespace and doc style fixes
3862
3863 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3864
3865         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
3866
3867 2003-12-24  Colin Walters  <walters@verbum.org>
3868
3869         * gst/elements/gsttypefindelement.c:
3870           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
3871           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
3872           Don't double-free caps.
3873
3874 2003-12-23  David Schleef  <ds@schleef.org>
3875
3876         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
3877           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
3878           Many little fixes and additions of debug statements to
3879           get rhythmbox working.
3880
3881 2003-12-23  Colin Walters  <walters@verbum.org>
3882
3883         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
3884         Use GST_PAD_LINK_SUCCESSFUL.
3885
3886 2003-12-23  David Schleef  <ds@schleef.org>
3887
3888         * gst/elements/gstaggregator.c:
3889         * gst/elements/gsttee.c:
3890           Use gst_pad_proxy_getcaps().
3891         * gst/gstpad.c:
3892         * gst/gstpad.h:
3893           Add gst_pad_proxy_getcaps(), which filter elements can use
3894           as a generic getcaps implementation.
3895           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
3896           was advertised.
3897
3898 2003-12-23  David Schleef  <ds@schleef.org>
3899
3900         * gst/gstpad.c:
3901           Rearrange/rewrite much of the pad negotiation code, since it
3902           resembled pasta.  This actually changes the way some
3903           negotiation works, since the previous code was inconsistent
3904           depending on how it was invoked.  Add (internal) structure
3905           GstPadLink, which is used to hold some information (more in
3906           the future) about the link between two pads.  Fixes a number
3907           of bugs, including random lossage of filter caps when the
3908           initial negotiation is delayed.  A few functions are still
3909           unimplemented.
3910         * gst/gstpad.h:
3911           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
3912           these when testing GstPadLinkReturn values instead of comparing
3913           directly.
3914
3915 2003-12-23  David Schleef  <ds@schleef.org>
3916
3917         * gst/gstvalue.c: 
3918         * gst/gstvalue.h:
3919           Rearrange lots of code.  Change registration of compare function
3920           into registration of compare/serialize/deserialize functions.
3921           Doesn't include implementation of gst_value_[de]serialize(),
3922           but that should be easy.
3923
3924 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3925
3926         * docs/gst/gstreamer-sections.txt:
3927         * docs/gst/tmpl/gstprops.sgml: removed
3928         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
3929           David removed props and caps code, so let's remove their docs as well.
3930           Removed all no longer existing symbols from gstreamer-sections.txt
3931           
3932 2003-12-22  Colin Walters  <walters@verbum.org>
3933
3934         * gst/gsttaginterface.c, gst/gsttaginterface.h,
3935           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
3936           of tags directly.
3937
3938 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3939
3940         * gst/elements/gstelements.c:
3941           Set ranks of elements to NONE, so the autoplugger doesn't use them.
3942         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
3943           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
3944           gst_caps (peer).
3945
3946 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3947
3948         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
3949         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
3950         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
3951         (gst_spider_identity_sink_loop_type_finding):
3952         * gst/autoplug/gstspideridentity.h:
3953           Fix autoplugging in spider element, so it works with new caps.
3954           This was mainly caused by identifying empty caps incorrectly.
3955
3956 2003-12-22  David Schleef  <ds@schleef.org>
3957
3958         * gststructure.c, gstvalue.c, gstvalue.h: Add
3959           gst_value_init_and_copy() and use it, to avoid silly mistakes in
3960           using g_value_copy()
3961
3962 2003-12-21  David Schleef  <ds@schleef.org>
3963
3964         * many, many files: Merge CAPS branch.  This includes:
3965           - implemention of GstValue and several GstValue types
3966           - implemention of GstStructure
3967           - entire rewrite of GstCaps
3968           - removal of GstProps
3969           - many changes to GstPad to compensate for new caps paradigm
3970           - removal of GstBufferpool
3971         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
3972         gstvalue.h, gst/gstcaps[2]*.[ch]:
3973           - rename gstcaps2.[ch] to gstcaps.[ch]
3974
3975 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
3976
3977         * gst/gstqueue.c: (gst_queue_handle_pending_events),
3978         (gst_queue_chain), (gst_queue_handle_src_event):
3979           implement timeout for sending events. Workaround for if the
3980           pipeline on this queue is not passing any data.
3981
3982 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
3983                                                                                 
3984         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
3985         * moved CVS to freedesktop.org
3986