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