gst/gstpad.*: Add new function to allow element to (somewhat) specify non-fixed caps...
[platform/upstream/gstreamer.git] / ChangeLog
1 2004-01-26  David Schleef  <ds@schleef.org>
2
3         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
4         * gst/gstpad.h: Add new function to allow element to (somewhat)
5         specify non-fixed caps on a pad.
6         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
7         that I added a few weeks ago.
8
9 2004-01-26  David Schleef  <ds@schleef.org>
10
11         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12           making try_set_caps() work with non-fixed caps.
13
14 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
15
16         * docs/pwg/advanced_types.xml:
17         * docs/pwg/intro_basics.xml:
18         * docs/pwg/intro_preface.xml:
19         * docs/pwg/pwg.xml:
20         * docs/pwg/titlepage.xml:
21           First try to resurrect the PWG. I'm halfway integrating the mimetypes
22           in here (docs/random/mimetypes), and will from there on work on both
23           updating outdated parts and adding missing parts.
24           That doesn't mean I'll fix it completely, but I'll try at least. ;).
25
26 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
27
28         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
29           policy is set
30
31 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
32
33         * gst/gstelement.h:
34           remove gst_element_factory_get_version. It doesn't exist anymore.
35         * gst/gstplugin.c:
36         * gst/gstplugin.h:
37           remove gst_plugin_set_name and change gst_plugin_get_longname to
38           gst_plugin_get_description to match code.
39         * gst/gsterror.h:
40           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
41         * gst/gstpad.c: (gst_pad_try_set_caps):
42           make it work with nonfixed caps.
43           Note that even in the nonfixed case the link function of the pad
44           that tries to set caps isn't called.
45
46 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
47
48         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
49           fix bug where buffer was not assembled correctly
50         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
51           silence by default
52         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
53           only seek if there's no more buffers that could work without seeking
54
55 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
56
57         * gst/gsttag.c: (_gst_tag_initialize):
58         * gst/gsttag.h:
59           Add application tag (for encoding/muxing app).
60
61 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
62
63         * autogen.sh:
64           make autopoint force, and libtoolize not copy
65         * common/m4/as-docbook.m4:
66           added docbook xml catalog setup check
67         * common/m4/gst-doc.m4:
68           use docbook check
69
70 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
71
72         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
73         * gst/gsttag.h:
74           add GstTagFlag
75
76 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
77
78         * docs/gst/gstreamer-sections.txt:
79         * docs/gst/tmpl/gst.sgml:
80         * docs/gst/tmpl/gstbuffer.sgml:
81         * docs/gst/tmpl/gstclock.sgml:
82         * docs/gst/tmpl/gstelement.sgml:
83         * docs/gst/tmpl/gstreamer-unused.sgml:
84         * docs/gst/tmpl/gstxml.sgml:
85           sync latest API changes to docs
86
87 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
88
89         * gst/gstpluginfeature.c:
90           fix doc snippet
91         * tools/gst-inspect.c: (print_element_list):
92           fix output of typefind
93           add GPL header
94         * tools/gst-launch.c:
95           add GPL header
96
97 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
98
99         * gst/elements/Makefile.am:
100         * gst/elements/gstelements.c:
101         * gst/elements/gsttypefindelement.c:
102         * gst/elements/gsttypefindelement.h:
103         * po/POTFILES.in:
104         * po/fr.po:
105         * po/nl.po:
106           renamed gsttypefindelement to gsttypefind, conserving CVS history
107
108 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
109
110         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
111         * gst/gsttag.h:
112           add some tags used in ogg as well
113           fix _ in replaygain tags
114
115 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
116
117         * gst/gsterror.h:
118           fix wrong GST_LIBRARY_ERROR_ENCODE addition
119
120 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
121
122         * gst/gstelement.c: (gst_element_error_full):
123         * gst/gstelement.h:
124           change _extended to _full
125
126 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
127
128         reviewed by: <delete if not using a buddy>
129
130         * docs/gst/tmpl/gst.sgml:
131         * docs/gst/tmpl/gstbuffer.sgml:
132         * docs/gst/tmpl/gstclock.sgml:
133         * docs/gst/tmpl/gstelement.sgml:
134         * docs/gst/tmpl/gstreamer-unused.sgml:
135         * docs/gst/tmpl/gstxml.sgml:
136         * gst/gstelement.c: (gst_element_error_full):
137         * gst/gstelement.h:
138
139 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
140
141         * gst/gstelement.h: fix _gst_element_error_printf prototype
142
143 2004-01-20  David Schleef  <ds@schleef.org>
144
145         * gst/gststructure.c: (gst_structure_to_string):
146         Convert function to use gst_value_serialize().
147         * gst/gstvalue.c: (gst_value_serialize_list),
148         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
149         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
150         (gst_value_serialize_int), (gst_value_serialize_double),
151         (gst_string_wrap), (gst_value_serialize_string),
152         (gst_value_serialize), (gst_value_deserialize):
153         * gst/gstvalue.h:
154         Add implementations for serialize.
155
156 2004-01-20  Julien MOUTTE  <julien@moutte.net>
157
158         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
159         we want to keep that one in the future or change xvidenc.c to use 
160         another error.
161
162 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
163
164         * gst/gstelement.c: (_gst_element_error_printf):
165         * gst/gstelement.h:
166           privatise function
167
168 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
169
170         * docs/random/error:
171           doc explaining error system
172         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
173           cleanup
174
175 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
176
177         * gst/gst-i18n-app.h:
178         * gst/gst-i18n-lib.h:
179           remove inclusion of config.h
180         * po/POTFILES.in:
181         * po/nl.po:
182           add gst/gstelement.c
183
184 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
185
186         * po/nl.po: updated Dutch translation
187
188 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
189
190         * gst/gsterror.c: (_gst_core_errors_init),
191         (_gst_library_errors_init), (_gst_resource_errors_init),
192         (_gst_stream_errors_init):
193         remove ending punctuation dots
194
195 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
196
197         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
198         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
199         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
200         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
201         (gst_pipefilter_chain), (gst_pipefilter_open_file):
202         use GST_ERROR_SYSTEM
203
204 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
205
206         * gst/gstelement.c: (gst_element_error_printf),
207         (gst_element_error_extended):
208         * gst/gstelement.h:
209           add a helper printf function so we can have NULL values passed.
210
211 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
212
213         * gst/gstelement.h:
214           add G_STMT macros to gst_element_error, which isn't strictly
215           necessary but people tell me to anyway.
216
217 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
218
219         * gst/Makefile.am:
220         * gst/autoplug/gstspideridentity.c:
221         (gst_spider_identity_sink_loop_type_finding):
222         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
223         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
224         (gst_filesink_close_file), (gst_filesink_handle_event),
225         (gst_filesink_chain):
226         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
227         (gst_filesrc_map_region), (gst_filesrc_get_read),
228         (gst_filesrc_open_file):
229         * gst/elements/gstidentity.c: (gst_identity_chain):
230         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
231         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
232         (gst_pipefilter_chain), (gst_pipefilter_open_file):
233         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
234         * gst/gst.h:
235         * gst/gst_private.h:
236         * gst/gstelement.c: (gst_element_class_init),
237         (gst_element_default_error), (gst_element_error_func),
238         (gst_element_error_extended):
239         * gst/gstelement.h:
240         * gst/gsterror.c: (_gst_core_errors_init),
241         (_gst_library_errors_init), (_gst_resource_errors_init),
242         (_gst_stream_errors_init), (gst_error_get_message):
243         * gst/gsterror.h:
244         * gst/gstinfo.c: (_gst_debug_init):
245         * gst/gstmarshal.list:
246         * gst/gstpad.c: (gst_pad_set_explicit_caps),
247         (gst_pad_recover_caps_error), (gst_pad_pull):
248         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
249         * gst/schedulers/gstbasicscheduler.c:
250         (gst_basic_scheduler_chainhandler_proxy),
251         (gst_basic_scheduler_gethandler_proxy),
252         (gst_basic_scheduler_cothreaded_chain):
253         * po/POTFILES.in:
254         * po/fr.po:
255         * po/nl.po:
256           change error signal
257           add error categories
258
259 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
260
261         * gst/gsttag.c: (_gst_tag_initialize):
262         * gst/gsttag.h:
263         Add replaygain tag
264
265 2004-01-18  Colin Walters  <walters@verbum.org>
266
267         * examples/retag/retag.c: Call gst_init before processing
268         program args.  Add g_assert to _link_many call.
269
270 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
271
272         * gst/gstpad.c: (gst_pad_alloc_buffer):
273           Return a newly allocated buffer when the pad has no peer.
274
275 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
276
277         * gst/gstclock.c: (gst_clock_get_time):
278           make it compile with gcc 2.95 again.
279           Patch by Scott Wheeler
280
281 2004-01-15  David Schleef  <ds@schleef.org>
282
283         * gst/gstcaps.h:
284         Added gst_caps_is_simple() macro.
285         * testsuite/caps/caps.c: (test1):
286         * testsuite/caps/intersect2.c: (main):
287         * testsuite/caps/intersection.c: (main):
288         Fixes to make 'make check' work again after removing
289         gst_caps_is_chained().
290
291 2004-01-15  Leif Johnson <leif@ambient.2y.net>
292
293         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
294         and additions to the MIDI document.
295
296 2004-01-15  David Schleef  <ds@schleef.org>
297
298         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
299         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
300         of GST_RPAD_, since we don't know if it's a real or ghost pad.
301
302 2004-01-15  David Schleef  <ds@schleef.org>
303
304         * gst/gstqueue.c:
305         * gst/gstqueue.h:
306         Fix the spelling of "treshold" and make min_threshold actually
307         affect the queue.
308
309 2004-01-15  David Schleef  <ds@schleef.org>
310
311         * gst/gstcaps.c:
312         Add lots of documentation.
313         * gst/gstcaps.h:
314         Deprecate a few functions.
315         * gst/gstpad.c:
316         Removed use of deprecated functions.
317
318 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
319
320         * gst/gstpad.c: (gst_pad_is_linked):
321         * gst/gstpad.h:
322           implement gst_pad_is_linked
323         * gst/gstelement.h:
324           reserve space for initiate_state_change
325
326 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
327
328         * gst/autoplug/gstspideridentity.c:
329         (gst_spider_identity_sink_loop_type_finding):
330           break infinite loop by just returning instead of looping
331         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
332           set event time difference correctly. Set it to 1 second instead
333           of 100ms to be more tolerant
334         * gst/gstelement.c: (gst_element_set_time):
335           add debugging output
336
337 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
338
339         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
340           query if buffers are inside the pool, ignore events
341
342 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
343
344         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
345         (gst_clock_set_speed), (gst_clock_set_active),
346         (gst_clock_is_active), (gst_clock_reset),
347         (gst_clock_handle_discont):
348         * gst/gstclock.h:
349           deprecate old interface and disable functions that aren't in use
350           anymore.
351         * gst/gstelement.h:
352         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
353         (gst_element_set_time), (gst_element_adjust_time):
354           add concept of "element time" and functions to get/set this time.
355         * gst/gstelement.c: (gst_element_change_state):
356           update element time correctly.
357         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
358           This is a debug message, not a g_critical.
359         * gst/gstpad.c: (gst_pad_event_default):
360           handle discontinuous events right with element time.
361         * gst/gstscheduler.c: (gst_scheduler_state_transition):
362           update to clocking fixes.
363           set clocks on elements in READY=>PAUSED. The old behaviour caused
364           a wrong element time on the first element that started playing.
365         * gst/schedulers/gstbasicscheduler.c:
366         (gst_basic_scheduler_class_init):
367         * gst/schedulers/gstoptimalscheduler.c:
368         (gst_opt_scheduler_class_init):
369           remove code that just implements the default behaviour.
370         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
371           update to use new clocking functions
372         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
373         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
374           update to test new element time.
375         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
376           use _get_allowed_caps instead of _get_caps. This catches filtered
377           caps correctly.
378         * testsuite/debug/commandline.c:
379           update for new GST_DEBUG syntax.
380         * testsuite/threads/Makefile.am:
381           disable a test that only works sometimes.
382
383 2004-01-13  Julien MOUTTE <julien@moutte.net>
384
385         * po/LINGUAS: Adding fr.
386         * po/fr.po: Adding french translation.
387
388 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
389
390         * gst/parse/grammar.y:
391         * po/POTFILES.in:
392         * po/nl.po:
393         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
394           translate parsing error messages
395
396 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
397
398         * po/POTFILES.in: adding gst-launch
399         * po/nl.po: updated translation, all 99 strings translated
400         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
401         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
402           fix strings for translation
403
404 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
405
406         * gst/gst.c:
407           - capitalize beginnings of popt options
408           - fix strings for translation
409           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
410
411 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
412
413         * po/README: add some notes on how to update translations
414
415 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
416
417         * ABOUT-NLS: removed, is autogenerated from autopoint
418         * autogen.sh: add autopoint stuff
419         * configure.ac: fix up gettext stuff
420         * gst/Makefile.am: add i18n headers to noinst_HEADERS
421         * gst/elements/gsttypefindelement.c: add header include
422         * gst/gettext.h: add header, copy from system-installed header
423         * gst/gst-i18n-app.h: to be included by each app having translations
424         * gst/gst-i18n-lib.h: to be included by each lib having translations
425         * gst/gst.c: (init_pre): fix up gettext calls
426         * gst/gst_private.h: remove i18n stuff, moving to separate headers
427         * po/LINGUAS: the new way to specify translations present
428         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
429         * po/Makevars: the variables filled in for GStreamer
430         * po/POTFILES.in: added new files with translations
431         * po/de.po: has new strings
432         * po/nl.po: readded, has new strings
433
434 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
435
436         * gst/gsttag.c: fix some strings marked for translation
437
438 2004-01-13  Iain <iain@prettypeople.org>
439
440         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
441         group when we add an element to it, cos we unref it when we remove one
442
443 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
444
445         * testsuite/debug/commandline.c: (debug_not_reached):
446         * testsuite/debug/output.c: (check_message):
447           fix testsuite
448
449 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
450
451         * examples/cutter/.cvsignore:
452         * examples/helloworld/.cvsignore:
453         * examples/launch/.cvsignore:
454         * examples/manual/.cvsignore:
455         * examples/mixer/.cvsignore:
456         * examples/pingpong/.cvsignore:
457         * examples/plugins/.cvsignore:
458         * examples/queue/.cvsignore:
459         * examples/queue2/.cvsignore:
460         * examples/queue3/.cvsignore:
461         * examples/queue4/.cvsignore:
462         * examples/retag/.cvsignore:
463         * examples/thread/.cvsignore:
464         * examples/typefind/.cvsignore:
465         * examples/xml/.cvsignore:
466         * gst/.cvsignore:
467         * gst/autoplug/.cvsignore:
468         * gst/elements/.cvsignore:
469         * gst/indexers/.cvsignore:
470         * gst/parse/.cvsignore:
471         * gst/registries/.cvsignore:
472         * gst/schedulers/.cvsignore:
473         * libs/gst/bytestream/.cvsignore:
474         * libs/gst/control/.cvsignore:
475         * libs/gst/getbits/.cvsignore:
476         * tests/.cvsignore:
477         * tests/bufspeed/.cvsignore:
478         * tests/instantiate/.cvsignore:
479         * tests/memchunk/.cvsignore:
480         * tests/muxing/.cvsignore:
481         * tests/sched/.cvsignore:
482         * tests/seeking/.cvsignore:
483         * tests/threadstate/.cvsignore:
484         * testsuite/.cvsignore:
485         * testsuite/caps/.cvsignore:
486         * testsuite/cleanup/.cvsignore:
487         * testsuite/dynparams/.cvsignore:
488         * testsuite/plugin/.cvsignore:
489         * tools/.cvsignore:
490           update - this is huge, because it includes *.bb, *.bbg and *.da files
491           which are generated for gcov.
492
493 2004-01-11  David Schleef  <ds@schleef.org>
494
495         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
496         a function to parse integers in ways that strto[u]l() does not.
497
498 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
499
500         * tools/gst-inspect.c: (print_caps):
501           improve output of caps a bit
502
503 2004-01-11  David Schleef  <ds@schleef.org>
504
505         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
506         inherit correct flags (READONLY and DONTKEEP).
507
508 2004-01-11  David Schleef  <ds@schleef.org>
509
510         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
511         (gst_filesrc_map_region):
512         * gst/gstbuffer.c: (_gst_buffer_initialize),
513         (_gst_buffer_sub_free), (gst_buffer_default_copy),
514         (gst_buffer_new), (gst_buffer_create_sub),
515         (gst_buffer_is_span_fast), (gst_buffer_span):
516         * gst/gstbuffer.h:
517         Change GstBuffer private structure element names. (all files)
518         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
519         (gst_queue_link):
520         * gst/gstqueue.h:
521         Implement getcaps/pad_link functions that handle the case where
522         there are data in the queue.
523
524 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
525
526         * gst/elements/gstbufferstore.c:
527           initialize debugging structure correctly
528         * gst/elements/gsttee.c: (gst_tee_set_property):
529           g_object_notify when property was changed
530         * gst/elements/gsttypefindelement.c:
531         (gst_type_find_element_change_state):
532           clear caps correctly
533
534 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
535
536         * gst/gstqueue.c: (gst_queue_init):
537           Use better defaults for when a queue should block. This
538           gets rid of jerky playback for quite a few files.
539           It takes more memory.
540
541 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
542
543         (gst_xml_registry_parse_padtemplate):
544           make critical message slightly more useful
545
546 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
547
548         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
549         (gst_debug_message_get), (gst_debug_log_default):
550         * gst/gstinfo.h:
551           Change gst_debug_log(_valist) to take a const format string.
552           Change prototype of log function and functions using those to 
553           take a GstDebugMessage instead of a string that requires using
554           gst_debug_message_get.
555
556 2004-01-08  David Schleef  <ds@schleef.org>
557
558         * Makefile.am:
559         * configure.ac:
560         Add option --enable-gcov to build GStreamer with -fprofile-arcs
561         and -ftest-coverage, which allows gcov to show information about
562         testsuite coverage.
563
564 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
565
566         * gst/gstutils.h:
567           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
568           GST_PARENT_CALL_WITH_DEFAULT
569         * gst/elements/gstaggregator.c: 
570         * gst/elements/gstbufferstore.c: 
571         * gst/elements/gstfakesink.c: 
572         * gst/elements/gstfakesrc.c: 
573         * gst/elements/gstfdsink.c: 
574         * gst/elements/gstfdsrc.c: 
575         * gst/elements/gstfilesink.c: 
576         * gst/elements/gstfilesrc.c: 
577         * gst/elements/gstidentity.c: 
578         * gst/elements/gstmd5sink.c: 
579         * gst/elements/gstmultidisksrc.c:
580         * gst/elements/gstpipefilter.c: 
581         * gst/elements/gstshaper.c:
582         * gst/elements/gststatistics.c:
583         * gst/elements/gsttee.c:
584         * gst/elements/gsttypefindelement.c:
585           use them.
586
587 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
588
589         * docs/gst/gstreamer-docs.sgml: remove props
590         * docs/gst/gstreamer-sections.txt: remove props
591         * docs/gst/tmpl/gst.sgml:
592         * docs/gst/tmpl/gstbin.sgml:
593         * docs/gst/tmpl/gstbuffer.sgml:
594         * docs/gst/tmpl/gstcaps.sgml:
595         * docs/gst/tmpl/gstclock.sgml:
596         * docs/gst/tmpl/gstelement.sgml:
597         * docs/gst/tmpl/gstindex.sgml:
598         * docs/gst/tmpl/gstobject.sgml:
599         * docs/gst/tmpl/gstpad.sgml:
600         * docs/gst/tmpl/gstpadtemplate.sgml:
601         * docs/gst/tmpl/gstreamer-unused.sgml:
602         * docs/gst/tmpl/gstthread.sgml:
603         * docs/gst/tmpl/gstxml.sgml:
604           sync with code reorganization
605
606 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
607
608         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
609         Make the 'Could not find compatible pad' message more informative.
610
611 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
612                                                                                 
613         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
614           Fix for if we pass NULL as property to location.
615         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
616         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
617           Fix for instantiate-test (see below).
618         * gst/gststructure.c: (_gst_structure_parse_value):
619           Fix compile error on gcc-2.96.
620         * configure.ac:
621         * tests/Makefile.am:
622         * tests/instantiate/Makefile.am:
623         * tests/instantiate/create.c: (create_all_elements), (main):
624           Add a test that instantiates all elements. This makes it easy to
625           track dead code for old API/design (like setting event functions
626           on sink pads and so on).
627
628 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
629
630         * gst/gstcaps.c: (gst_caps_append_structure):
631           Move the poisoning to allow a NULL structure
632         * gst/gstevent.c: (_gst_event_free):
633           When freeing a navigation event, free the structure
634           also
635
636 2004-01-04  David Schleef  <ds@schleef.org>
637
638         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
639         Remove usage of gst_pad_proxy_fixate.
640         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
641         (gst_caps_split_one), (gst_caps_replace):
642         Add poisoning code.
643         * gst/gstmarshal.list:
644         Add pointer__pointer for fixate signal
645         * gst/gstpad.c: (gst_real_pad_class_init),
646         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
647         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
648         (gst_pad_set_explicit_caps), (gst_pad_template_new):
649         Add poisoning code. Add fixate signal on RealPad. Change
650         set_explicit_caps() to take const GstCaps, like try_set_caps().
651         * gst/gstpad.h:
652         * testsuite/caps/Makefile.am:
653         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
654
655 2004-01-03  David Schleef  <ds@schleef.org>
656
657         * gst/elements/gsttypefindelement.c:
658         (gst_type_find_element_have_type), (gst_type_find_element_init):
659         Use gst_pad_use_explicit_caps for src pad.
660         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
661         before using it.
662
663 2004-01-03  David Schleef  <ds@schleef.org>
664
665         * gst/gstelement.c: (gst_element_link_pads_filtered),
666         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
667         that linking was successful.
668         * gst/gstpad.c: (gst_pad_link_free),
669         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
670         (gst_pad_link_try), (gst_pad_link_unnegotiate),
671         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
672         GstPadLinkReturn correctly between functions, and don't fail
673         when DELAYED is used (DELAYED is very important).  Better
674         cleanup on unlinking and unnegotiation.  Should fix some spider
675         bugs.
676
677 2004-01-02  David Schleef  <ds@schleef.org>
678
679         * gst/gstelement.c: (gst_element_class_init),
680         (gst_element_base_class_init): ->padtemplates should be cleared
681         in base_init, since we need to have a fresh list for every
682         class.  (Alternately, we chould copy the list and share the
683         actual pad templates (not the list), but that would require
684         changing every plugin to move pad template registration from
685         base_init to class_init.)
686
687 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
688
689         * gst/gstelement.c: (gst_element_class_add_pad_template):
690           Refuse registering a pad template if another pad template
691           with the same name already exists (#114715).
692
693 2004-01-02  David Schleef  <ds@schleef.org>
694
695         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
696         (gst_caps_is_equal_fixed): Add new function.
697         * gst/gstcaps.h: ditto.
698         * gst/gstpad.c: (gst_real_pad_class_init),
699         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
700         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
701         check new caps against existing caps -- if they're the same, return
702         OK without renegotiating.  caps-nego-failed signal fixed so that
703         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
704         to save an extra caps copy.  Don't complete negotiation if a pad
705         link function returns DELAYED.
706
707 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
708
709         * gst/gstpad.c: (gst_pad_try_relink_filtered):
710           Fix wrong g_return_if_fail
711
712 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
713
714         * gst/gstbin.c: (gst_bin_class_init):
715         Change the marshalling of element_added/element_removed
716         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
717         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
718
719 2004-01-01  David Schleef  <ds@schleef.org>
720
721         * gst/gstpad.c: (gst_pad_set_explicit_caps),
722         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
723         (gst_pad_use_explicit_caps):
724         * gst/gstpad.h:
725         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
726         to use an internal getcaps and link fuction so that negotiation
727         always results in the explicitly set caps.
728         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
729         are particularly useful for decoders.
730
731 2003-12-31  David Schleef  <ds@schleef.org>
732
733         * gst/elements/gstidentity.c: (gst_identity_class_init),
734         (gst_identity_init), (gst_identity_chain),
735         (gst_identity_set_property), (gst_identity_get_property):
736         * gst/elements/gstidentity.h:
737         * gst/gstqueue.c: (gst_queue_init):
738           Negotiation fixes.
739
740 2003-12-31  David Schleef  <ds@schleef.org>
741
742         * gst/gstcaps.c: (gst_caps_intersect),
743         (_gst_caps_normalize_foreach), (gst_caps_normalize):
744           Implement gst_caps_normalize().
745         * testsuite/caps/normalisation.c: (main):
746           Add an additional test
747
748 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
749
750         * gst/gstqueue.c: (gst_queue_init):
751           use gst_pad_proxy_getcaps()
752
753 2003-12-31  David Schleef  <ds@schleef.org>
754
755         * gst/elements/gstshaper.c: (gst_shaper_link):
756         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
757         * gst/gstqueue.c: (gst_queue_link):
758           Negotiation fixes.
759
760 2003-12-31  David Schleef  <ds@schleef.org>
761
762         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
763         * gst/gstpad.h: Add functions that are useful as default pad
764         link and fixate functions for elements.
765
766 2003-12-30  David Schleef  <ds@schleef.org>
767
768         * gst/gstpad.c: (gst_pad_link_try):
769           Fix segfault when attempting to return to old caps
770
771 2003-12-29  David Schleef  <ds@schleef.org>
772
773         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
774         (gst_caps_structure_simplify), (gst_caps_simplify):
775         * gst/gstcaps.h:
776           Add simplify function
777         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
778         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
779         * gst/gstpad.h:
780           Copy over srcnotify, sinknotify when calling old pad_link
781           functions.  Add new is_negotiated() function.
782         * gst/gststructure.c: (gst_structure_copy):
783           Fix an incredibly stupid bug that should have been noticed
784           weeks ago.  _copy() returned the argument, not the new copy.
785
786 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
787
788         * gst/gstcaps.c: (gst_caps_append):
789           add sanity checks
790         * gst/gstcaps.h: (gst_caps_debug):
791           remove, it doesn't exist anymore.
792         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
793         (gst_element_threadsafe_properties_post_run):
794           make debugging messages not clutter up THREAD debug category
795         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
796         (gst_element_change_state):
797           update to new caps API
798         * gst/gstinterface.c: (gst_implements_interface_cast):
799           don't put vital code in g_return_if_fail
800         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
801         (gst_pad_link_filtered):
802           add pst_pad_try_link and use it.
803         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
804           implement correctly, deprecate first one.
805         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
806           add and implement.
807         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
808           implement.
809         (gst_pad_get_negotiated_caps):
810           add and implement. Make GST_PAD_CAPS call this function.
811         (gst_pad_get_caps):
812           remove unneeded check..
813         (gst_pad_recover_caps_error):
814           disable, always return FALSE.
815         (gst_real_pad_dispose):
816           don't free caps and appfilter anymore, they're unused.
817         * gst/gstpad.h:
818           Reflect changes mentioned above.
819         * gst/gstsystemclock.c: (gst_system_clock_wait):
820           Make 'clock is way behind' a debugging message.
821         * gst/gstthread.c: (gst_thread_change_state):
822           Fix debugging message
823
824 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
825
826         * gst/gstinfo.h:
827           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
828         * docs/gst/tmpl/gstreamer-unused.sgml:
829           removed all traces of cvs conflicts
830
831 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
832
833         * configure.ac:
834         * gst/schedulers/cothreads_compat.h:
835         * libs/Makefile.am:
836           remove last instances of wingo cothread usage
837
838 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
839
840         * gst/gstplugin.c:
841         * gst/gstversion.h.in:
842         * gst/parse/grammar.y:
843           change comment block from /** to /* when not gtk-doc comments
844
845 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
846
847         * gst/gst.c: whitespace and doc style fixes
848
849 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
850
851         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
852
853 2003-12-24  Colin Walters  <walters@verbum.org>
854
855         * gst/elements/gsttypefindelement.c:
856           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
857           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
858           Don't double-free caps.
859
860 2003-12-23  David Schleef  <ds@schleef.org>
861
862         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
863           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
864           Many little fixes and additions of debug statements to
865           get rhythmbox working.
866
867 2003-12-23  Colin Walters  <walters@verbum.org>
868
869         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
870         Use GST_PAD_LINK_SUCCESSFUL.
871
872 2003-12-23  David Schleef  <ds@schleef.org>
873
874         * gst/elements/gstaggregator.c:
875         * gst/elements/gsttee.c:
876           Use gst_pad_proxy_getcaps().
877         * gst/gstpad.c:
878         * gst/gstpad.h:
879           Add gst_pad_proxy_getcaps(), which filter elements can use
880           as a generic getcaps implementation.
881           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
882           was advertised.
883
884 2003-12-23  David Schleef  <ds@schleef.org>
885
886         * gst/gstpad.c:
887           Rearrange/rewrite much of the pad negotiation code, since it
888           resembled pasta.  This actually changes the way some
889           negotiation works, since the previous code was inconsistent
890           depending on how it was invoked.  Add (internal) structure
891           GstPadLink, which is used to hold some information (more in
892           the future) about the link between two pads.  Fixes a number
893           of bugs, including random lossage of filter caps when the
894           initial negotiation is delayed.  A few functions are still
895           unimplemented.
896         * gst/gstpad.h:
897           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
898           these when testing GstPadLinkReturn values instead of comparing
899           directly.
900
901 2003-12-23  David Schleef  <ds@schleef.org>
902
903         * gst/gstvalue.c: 
904         * gst/gstvalue.h:
905           Rearrange lots of code.  Change registration of compare function
906           into registration of compare/serialize/deserialize functions.
907           Doesn't include implementation of gst_value_[de]serialize(),
908           but that should be easy.
909
910 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
911
912         * docs/gst/gstreamer-sections.txt:
913         * docs/gst/tmpl/gstprops.sgml: removed
914         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
915           David removed props and caps code, so let's remove their docs as well.
916           Removed all no longer existing symbols from gstreamer-sections.txt
917           
918 2003-12-22  Colin Walters  <walters@verbum.org>
919
920         * gst/gsttaginterface.c, gst/gsttaginterface.h,
921           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
922           of tags directly.
923
924 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
925
926         * gst/elements/gstelements.c:
927           Set ranks of elements to NONE, so the autoplugger doesn't use them.
928         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
929           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
930           gst_caps (peer).
931
932 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
933
934         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
935         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
936         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
937         (gst_spider_identity_sink_loop_type_finding):
938         * gst/autoplug/gstspideridentity.h:
939           Fix autoplugging in spider element, so it works with new caps.
940           This was mainly caused by identifying empty caps incorrectly.
941
942 2003-12-22  David Schleef  <ds@schleef.org>
943
944         * gststructure.c, gstvalue.c, gstvalue.h: Add
945           gst_value_init_and_copy() and use it, to avoid silly mistakes in
946           using g_value_copy()
947
948 2003-12-21  David Schleef  <ds@schleef.org>
949
950         * many, many files: Merge CAPS branch.  This includes:
951           - implemention of GstValue and several GstValue types
952           - implemention of GstStructure
953           - entire rewrite of GstCaps
954           - removal of GstProps
955           - many changes to GstPad to compensate for new caps paradigm
956           - removal of GstBufferpool
957         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
958         gstvalue.h, gst/gstcaps[2]*.[ch]:
959           - rename gstcaps2.[ch] to gstcaps.[ch]
960
961 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
962
963         * gst/gstqueue.c: (gst_queue_handle_pending_events),
964         (gst_queue_chain), (gst_queue_handle_src_event):
965           implement timeout for sending events. Workaround for if the
966           pipeline on this queue is not passing any data.
967
968 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
969                                                                                 
970         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
971         * moved CVS to freedesktop.org
972