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