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