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