gst/: allow probes to work on ghost pads by realizing the pad probe debugging
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
2
3         * gst/gstpad.h:
4         * gst/gstprobe.c:
5           allow probes to work on ghost pads by realizing the pad
6           probe debugging
7
8 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9
10         * docs/gst/gstreamer-sections.txt:
11         * docs/gst/tmpl/gstpad.sgml:
12         * gst/gstpad.c: (gst_pad_set_active_recursive):
13         * gst/gstpad.h:
14           Add gst_pad_set_active_recursive().
15
16 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
17
18         * docs/random/release:
19           updates
20         * gst/gst_private.h:
21         * gst/gstinfo.c:
22         * gst/gstobject.c:
23           move deep_notify logging to a new category
24         * gst/gstprobe.c:
25         * gst/gstprobe.h:
26           add stuff so bindings can wrap probes
27
28 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
29
30         * gst/gstplugin.c: (gst_plugin_load):
31           Fix plugin loading if plugin/lib was already loaded. Fixes
32           #163383
33
34 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
35
36         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
37
38         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
39           Protect plugin loading by a mutex so it's threadsafe. Fixes
40           #163234.
41
42 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
43
44         * gst/gstevent.c: (_gst_event_copy):
45           Reference source object when copying events, since it'll be
46           dereferenced on event dereferencing as well.
47
48 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
49
50         * docs/gst/gstreamer-sections.txt:
51         * docs/gst/tmpl/gstevent.sgml:
52         * gst/gstevent.c: (gst_event_new_filler_stamped),
53         (gst_event_filler_get_duration):
54         * gst/gstevent.h:
55           Add two new functions for filler events (which are used to
56           synchronize streams if one of them is not having any data
57           for a while) without interrupting the actual data-stream.
58           Basically a no-op.
59         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
60         (gst_queue_link_sink), (gst_queue_link_src),
61         (gst_queue_change_state):
62           Allow for renegotiation while filled. Required for stream
63           switching while playing.
64
65 2005-01-08  Benjamin Otte  <otte@gnome.org>
66
67         * gst/gstelement.c: (gst_element_link_many):
68           fix up g_return_if_fail's
69         * po/LINGUAS:
70         * po/de.po:
71           add German translation, that was somehow not included
72
73 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
74
75         * docs/random/mimetypes:
76           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
77           do not add them to riff-lib as they are not common
78
79 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
80
81         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
82           Check for existence of probe after performing the probe before
83           re-accessing it to prevent segfaults caused by removal of the
84           probe in the callback.
85
86 2005-01-05  David Schleef  <ds@schleef.org>
87
88         * testsuite/registry/Makefile.am:
89         * testsuite/registry/gst-print-formats.c:
90         (print_pad_templates_info), (print_element_list),
91         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
92         (g_list_uniqify), (get_pad_templates_info),
93         (get_element_mime_list), (print_mime_list), (main): A little
94         program that looks through the registry to find elements of
95         a given type.  Not particularly interesting as a test, except
96         that there's no other test covering the same area.
97
98 2005-01-05  David Schleef  <ds@schleef.org>
99
100         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
101         (fault_handler_sigaction), (fault_spin),
102         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
103         in signal.h-type signal handlers by not calling forbidden functions,
104         including gst_element_set_state().
105
106 2005-01-05  David Schleef  <ds@schleef.org>
107
108         * gst/gstvalue.h: Mark _gst_reserved[] as private
109
110 2005-01-05  David Schleef  <ds@schleef.org>
111
112         * gst/gstvalue.c: Fix doc build problem.
113
114 2005-01-05  David Schleef  <ds@schleef.org>
115
116         * gst/gstvalue.c: Add some documentation
117
118 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
119
120         * docs/README:
121     another shell oneliner for empty return value docs
122         * gst/gstcaps.c:
123         * gst/gstvalue.c:
124         * libs/gst/control/dparam.c:
125     more doc fixes (parameters and return values)
126
127 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
128
129         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
130
131         * gst/gstregistry.h:
132         * gst/registries/gstxmlregistry.c:
133           Fix macro's for Mingw (fixes #162276).
134
135 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
136
137         * docs/README:
138           quick shell oneliner to find undocumented members
139         * docs/gst/tmpl/gstplugin.sgml:
140         * docs/gst/tmpl/gstscheduler.sgml:
141         * docs/gst/tmpl/gstthread.sgml:
142           more enumtypes cleanup
143         * gst/gsterror.h:
144           activated documentation comments, now someone needs to document
145           the enums :(
146
147 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
148
149         * docs/manual/manual.xml:
150           Add dataaccess part (doh!).
151
152 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
153
154         * docs/manual/advanced-autoplugging.xml:
155           Fix typo (intiate -> initiate).
156
157 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
158
159         * docs/random/bbb/streamselection:
160           Add some notes on how to handle multi-subtitle/-audio streams.
161
162 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
163
164         * docs/gst/gstreamer-docs.sgml:
165         * docs/gst/gstreamer-sections.txt:
166         * docs/gst/tmpl/gstenumtypes.sgml:
167         * docs/gst/tmpl/gsterror.sgml:
168         * docs/gst/tmpl/gstevent.sgml:
169         * docs/gst/tmpl/gstpad.sgml:
170         * docs/gst/tmpl/gstpadtemplate.sgml:
171         * docs/gst/tmpl/gstthread.sgml:
172           removed gstenumtypes section from docs and put all the enums into
173           their sections
174
175 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
176
177         * gst/gstplugin.c:
178           document gst_library_load a bit more (riff special case + return
179           value if already loaded)
180         * testsuite/bytestream/filepadsink.c:
181           plugin name is 'gstbytestream', not 'bytestream'
182
183 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
184
185         * docs/random/bbb/subtitles:
186           Add some first mind rumblings on proper subtitle support.
187
188 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
189
190         * po/ca.po:
191         * po/sv.po:
192           updated translations
193
194 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
195
196         * docs/manual/advanced-dataaccess.xml:
197           Add section on how to use fakesrc/fakesink/identity in your
198           application, plus section on how to embed plugins. Also mention
199           probes.
200         * docs/manual/appendix-checklist.xml:
201         * docs/manual/appendix-debugging.xml:
202         * docs/manual/appendix-gnome.xml:
203         * docs/manual/appendix-integration.xml:
204           Debug -> checklist, GNOME -> integration, add sections on Linux,
205           KDE integration and add other things useful for application
206           development.
207         * docs/manual/manual.xml:
208           Remove some fixmes, update some file pointers.
209         * docs/pwg/appendix-checklist.xml:
210           Fix typo.
211         * docs/pwg/building-boiler.xml:
212           Remove ugly header and add commented fixme.
213         * docs/pwg/pwg.xml:
214           Add fixme.
215         * examples/manual/Makefile.am:
216           Add example for added docs.
217
218 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
219
220         * configure.ac:
221           back to HEAD
222
223 === release 0.8.8 ===
224
225 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
226
227         * NEWS:
228         * RELEASE:
229         * configure.ac:
230           Releasing 0.8.8, "I'll Take Care Of You"
231
232 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
233
234         * configure.ac:
235           second prerelease
236
237 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
238
239         patch by: Wim Taymans
240
241         * gst/gstbin.c:
242           Fix for #159852 - make iterate emission threadsafe
243
244 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
245
246         * docs/faq/cvs.xml:
247           notes about new fdo account request
248
249 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
250
251         * docs/gst/gstreamer-docs.sgml:
252         * docs/gst/tmpl/gstenumtypes.sgml:
253         * docs/gst/tmpl/gstplugin.sgml:
254         * docs/libs/gstreamer-libs-docs.sgml:
255           Added missing short docs. Added ids for navigation.
256
257 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
258
259         * docs/manual/advanced-autoplugging.xml:
260         * docs/manual/advanced-schedulers.xml:
261         * docs/manual/advanced-threads.xml:
262           Rewrites. Remove cothreads, go a bit into opt specifically,
263           document threads and their gotchas, and do some technical stuff
264           on autoplugging plus add some working examples. Fixes #157395.
265         * examples/manual/Makefile.am:
266           Add typefind/autoplugger example (one that actually works).
267           Remove queue example since it's a duplicate of the thread one.
268
269 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
270
271         * gst/gstvalue.c: (gst_value_deserialize_string):
272           use deprecated g_value_set_string_take_ownership to keep compatible
273           with glib 2.2
274
275 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
276
277         * gst/gstvalue.c: (gst_value_deserialize_string):
278           revert last patch, only dom a g_utf8_validate now before accepting
279           the string - caps parsing strips " from strings so we can't rely on
280           them
281         * testsuite/caps/value_serialize.c: (test_string_deserialization):
282           disable a test that tested the above and comment it
283
284 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
285
286         Patch reviewed by David Schleef  <ds@schleef.org>
287
288         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
289         bug #153882)
290         * win32/gstenumtypes.h: same
291
292 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
293
294         * gst/gstpad.c: (gst_pad_query):
295           Do query on realized pad, similar to how convert/send_event handle
296           this. Also makes sense, since this pad belongs to the function to
297           which this query will be sent. Fixes #158163.
298
299 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
300
301         * docs/manual/appendix-programs.xml: fix pipeline to actually work
302
303 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
304
305         * docs/faq/general.xml: fix pipeline to actually work
306
307 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
308
309         * gst/gstvalue.c: (gst_value_deserialize_string):
310           check that a simple string that gets deserialized does not contain
311           invalid characters
312         * testsuite/caps/value_serialize.c: (test_string_deserialization):
313           remove a test that tested a wring behaviour
314
315 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
316
317         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
318
319         * docs/manual/intro-motivation.xml:
320           Fix typos.
321
322 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
323
324         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
325
326         * docs/gst/tmpl/gstprobe.sgml:
327           Fix documentation of probe callback - it is supposed to return
328           FALSE, not TRUE, to remove data from the stream (#159087).
329
330 2004-12-16  Daniel Gazard  <dany42@free.fr>
331
332         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
333
334         * gst/gstelementfactory.c: (gst_element_factory_create):
335           Fix compile failure if compiling without libxml2 support (#149936).
336
337 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
338
339         * docs/manual/advanced-autoplugging.xml:
340         * docs/manual/highlevel-components.xml:
341           Move spider from autoplugging to components. Autoplugging is for
342           internals, not for solutions. ;-).
343
344 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
345
346         * docs/random/ds/0.9-suggested-changes:
347           Make note on device/location/uri property names.
348
349 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
350
351         * docs/manual/advanced-autoplugging.xml:
352         * docs/manual/advanced-clocks.xml:
353         * docs/manual/advanced-interfaces.xml:
354         * docs/manual/advanced-metadata.xml:
355         * docs/manual/advanced-position.xml:
356         * docs/manual/advanced-schedulers.xml:
357         * docs/manual/advanced-threads.xml:
358         * docs/manual/appendix-gnome.xml:
359         * docs/manual/appendix-programs.xml:
360         * docs/manual/appendix-quotes.xml:
361         * docs/manual/autoplugging.xml:
362         * docs/manual/basics-bins.xml:
363         * docs/manual/basics-data.xml:
364         * docs/manual/basics-elements.xml:
365         * docs/manual/basics-helloworld.xml:
366         * docs/manual/basics-init.xml:
367         * docs/manual/basics-pads.xml:
368         * docs/manual/basics-plugins.xml:
369         * docs/manual/bins-api.xml:
370         * docs/manual/bins.xml:
371         * docs/manual/buffers-api.xml:
372         * docs/manual/buffers.xml:
373         * docs/manual/clocks.xml:
374         * docs/manual/components.xml:
375         * docs/manual/cothreads.xml:
376         * docs/manual/debugging.xml:
377         * docs/manual/dparams-app.xml:
378         * docs/manual/dynamic.xml:
379         * docs/manual/elements-api.xml:
380         * docs/manual/elements.xml:
381         * docs/manual/factories.xml:
382         * docs/manual/gnome.xml:
383         * docs/manual/goals.xml:
384         * docs/manual/helloworld.xml:
385         * docs/manual/helloworld2.xml:
386         * docs/manual/highlevel-components.xml:
387         * docs/manual/highlevel-xml.xml:
388         * docs/manual/init-api.xml:
389         * docs/manual/intro-basics.xml:
390         * docs/manual/intro-motivation.xml:
391         * docs/manual/intro-preface.xml:
392         * docs/manual/intro.xml:
393         * docs/manual/links-api.xml:
394         * docs/manual/links.xml:
395         * docs/manual/manual.xml:
396         * docs/manual/motivation.xml:
397         * docs/manual/pads-api.xml:
398         * docs/manual/pads.xml:
399         * docs/manual/plugins-api.xml:
400         * docs/manual/plugins.xml:
401         * docs/manual/programs.xml:
402         * docs/manual/queues.xml:
403         * docs/manual/quotes.xml:
404         * docs/manual/schedulers.xml:
405         * docs/manual/states-api.xml:
406         * docs/manual/states.xml:
407         * docs/manual/threads.xml:
408         * docs/manual/typedetection.xml:
409         * docs/manual/win32.xml:
410         * docs/manual/xml.xml:
411           Try 2. This time, include a short preface as a "general
412           introduction", also add code blocks around all code samples
413           so they get compiled. We still need a way to tell readers
414           the filename of the code sample. In some cases, don't show
415           all code in the documentation, but do include it in the generated
416           code. This allows for focussing on specific bits in the docs,
417           while still having a full test application available.
418         * examples/manual/Makefile.am:
419           Fix up examples for new ADM. Add several of the new examples that
420           were either added or were missing from the build system.
421         * examples/manual/extract.pl:
422           Allow nameless blocks.
423
424 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
425
426         * docs/manual/elements-api.xml:
427         * docs/manual/helloworld.xml:
428         * examples/manual/extract.pl:
429           fix last example.  Add example of adding code blocks that are not
430           shown in docbook output.
431
432 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
433
434         * docs/manual/dynamic.xml:
435         * docs/manual/elements-api.xml:
436         * docs/manual/gnome.xml:
437         * docs/manual/helloworld2.xml:
438         * docs/manual/init-api.xml:
439         * docs/manual/queues.xml:
440         * docs/manual/threads.xml:
441         * docs/manual/xml.xml:
442         * examples/manual/extract.pl:
443           Make it possible to extract example code from separate blocks.
444           Should make Ronald happy.
445
446 2004-12-15  Wim Taymans  <wim@fluendo.com>
447
448         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
449         (remove_from_group), (group_elements_set_visited),
450         (normalize_group), (gst_opt_scheduler_iterate):
451         Fix bug where a flag was not updated on a decoupled entry point 
452         because we were just checking the group element list and decoupled
453         elements are not in that list..
454
455 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
456
457         * docs/manual/advanced-autoplugging.xml:
458         * docs/manual/advanced-clocks.xml:
459         * docs/manual/advanced-dparams.xml:
460         * docs/manual/advanced-interfaces.xml:
461         * docs/manual/advanced-metadata.xml:
462         * docs/manual/advanced-position.xml:
463         * docs/manual/advanced-schedulers.xml:
464         * docs/manual/advanced-threads.xml:
465         * docs/manual/appendix-debugging.xml:
466         * docs/manual/appendix-gnome.xml:
467         * docs/manual/appendix-programs.xml:
468         * docs/manual/appendix-quotes.xml:
469         * docs/manual/appendix-win32.xml:
470         * docs/manual/autoplugging.xml:
471         * docs/manual/basics-bins.xml:
472         * docs/manual/basics-data.xml:
473         * docs/manual/basics-elements.xml:
474         * docs/manual/basics-helloworld.xml:
475         * docs/manual/basics-init.xml:
476         * docs/manual/basics-pads.xml:
477         * docs/manual/basics-plugins.xml:
478         * docs/manual/bins-api.xml:
479         * docs/manual/bins.xml:
480         * docs/manual/buffers-api.xml:
481         * docs/manual/buffers.xml:
482         * docs/manual/clocks.xml:
483         * docs/manual/components.xml:
484         * docs/manual/cothreads.xml:
485         * docs/manual/debugging.xml:
486         * docs/manual/dparams-app.xml:
487         * docs/manual/dynamic.xml:
488         * docs/manual/elements-api.xml:
489         * docs/manual/elements.xml:
490         * docs/manual/factories.xml:
491         * docs/manual/gnome.xml:
492         * docs/manual/goals.xml:
493         * docs/manual/helloworld.xml:
494         * docs/manual/helloworld2.xml:
495         * docs/manual/highlevel-components.xml:
496         * docs/manual/highlevel-xml.xml:
497         * docs/manual/init-api.xml:
498         * docs/manual/intro-motivation.xml:
499         * docs/manual/intro-preface.xml:
500         * docs/manual/intro.xml:
501         * docs/manual/links-api.xml:
502         * docs/manual/links.xml:
503         * docs/manual/manual.xml:
504         * docs/manual/motivation.xml:
505         * docs/manual/pads-api.xml:
506         * docs/manual/pads.xml:
507         * docs/manual/plugins-api.xml:
508         * docs/manual/plugins.xml:
509         * docs/manual/programs.xml:
510         * docs/manual/queues.xml:
511         * docs/manual/quotes.xml:
512         * docs/manual/schedulers.xml:
513         * docs/manual/states-api.xml:
514         * docs/manual/states.xml:
515         * docs/manual/threads.xml:
516         * docs/manual/typedetection.xml:
517         * docs/manual/win32.xml:
518         * docs/manual/xml.xml:
519           First try at rewriting the ADM. Needs lotsamore work, but some
520           parts might already be somewhat useful.
521         * docs/pwg/advanced-interfaces.xml:
522           Remove properties interface, it never actually existed (except for
523           on my HD...).
524
525 2004-12-13  David Schleef  <ds@schleef.org>
526
527         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
528         be NULL (bug #160220).
529
530 2004-12-13  David Schleef  <ds@schleef.org>
531
532         * configure.ac: remove all mmx stuff, because it's not used.
533         * docs/random/ds/0.9-suggested-changes: additional notes
534         * include/Makefile.am: we don't use these anymore
535         * include/mmx.h: remove
536         * include/sse.h: remove
537
538 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
539
540         * docs/random/mimetypes:
541           Add FOURCC code for h264 codec (VSSH)
542           Add alternate FOURCC codes for h263 related codecs
543
544 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
545
546         * docs/manual/programs.xml:
547           Added more gst-launch examples.
548
549 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
550
551         * gst/gstqueue.c: (gst_queue_handle_src_query):
552           Check for availability again.
553
554 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
555
556         * gst/gstcaps.c: (gst_caps_compare_structures):
557           Simple caps go first. This has the nice side-effect of fixing an
558           obscure warning.
559
560 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
561
562         * gst/gstversion.h.in:
563           Protect header.
564
565 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
566
567         * gst/schedulers/gstoptimalscheduler.c:
568         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
569         (gst_opt_scheduler_get_wrapper):
570           When we're recursing into a chain run, only run the directly
571           related group, not all queued ones. This will fix a possible
572           deadlock in chains with more than two groups.
573
574 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
575
576         * autogen.sh:
577           remove patch if autopoint fails
578
579 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
580
581         * docs/gst/gstreamer-sections.txt:
582           Document Thomas' addition, fix build, make Luis the sheriff happy.
583
584 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
585
586         * gst/gstplugin.c:
587         * gst/gstplugin.h:
588           add accessor for version field
589
590 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
591
592         submitted by: Luca Ferretti <elle.uca@infinito.it>
593
594         * po/LINGUAS:
595         * po/it.po:
596           New tranlation added: Italian
597
598 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
599
600         * gst/gstpad.c: (gst_pad_is_negotiated),
601         (gst_pad_get_negotiated_caps):
602           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
603           it doesn't actually check the contents), so be sure to hand it
604           a RealPad else we'll crash.
605
606 2004-12-03  Wim Taymans  <wim@fluendo.com>
607
608         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
609         (gst_queue_link), (gst_queue_handle_src_query):
610         Reverted to 1.110 until this makes the testsuite and various
611         apps work.
612
613 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
614
615         * docs/upload.mak: fix included CVS conflict strings
616
617 2004-12-01  William Jon McCann  <mccann@jhu.edu>
618
619         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
620
621         * gst/gstelement.c: (gst_element_error_full):
622           Use g_error_new_literal because error text may have
623           percentage signs in it. Fixes #160019.
624
625 2004-12-01  Benjamin Otte  <otte@gnome.org>
626
627         * gst/elements/gstbufferstore.c:
628         (gst_buffer_store_add_buffer_func):
629           don't try to make subbuffers bigger than they can be. (fixes
630           #159970)
631
632 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
633
634         * docs/gst/gstreamer-sections.txt:
635         * docs/gst/tmpl/gstvalue.sgml:
636           Add new function to docs to fix build.
637
638 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
639
640         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
641         * gst/gstpad.c: (_gst_pad_default_fixate_value),
642         (_gst_pad_default_fixate_foreach):
643         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
644         * gst/gstvalue.h:
645           Deprecate _type_is_fixed, use _value_is_fixed instead, since
646           in some cases (arrays), the fixedness depends on the content.
647         * gst/gstqueue.c: (gst_queue_handle_src_query):
648           Check for availability before doing something.
649
650 2004-11-29  Wim Taymans  <wim@fluendo.com>
651
652         * testsuite/threads/Makefile.am:
653         * testsuite/threads/signals.c: (gst_test_get_type),
654         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
655         (gst_test_set_property), (gst_test_get_property),
656         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
657         (gst_test_do_prop), (run_thread), (main):
658         Added a bunch of testcases that show threadsafety bugs in glib.
659
660 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
661
662         * docs/manual/programs.xml:
663           Added a first batch of gst-launch examples, as provided by Ronald
664           and others from the devel-mlist
665
666 2004-11-28  Benjamin Otte  <otte@gnome.org>
667
668         * gst/gstelement.c: (gst_element_negotiate_pads):
669           simplify
670         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
671         (gst_value_serialize_string), (gst_value_deserialize_string):
672           add unwrapping of previously wrapped strings. Fix bug in wrapping
673           while at it.
674         * testsuite/caps/value_serialize.c: (test1),
675         (test_string_serialization), (test_string_deserialization), (main):
676           add tests for string (de)serialization
677
678 2004-11-26  Wim Taymans  <wim@fluendo.com>
679
680         * testsuite/threads/159566.c: (object_deep_notify), (main):
681         * testsuite/threads/Makefile.am:
682         Added testsuite to show bug #159566
683
684 2004-11-25  Wim Taymans  <wim@fluendo.com>
685
686         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
687         (gst_thread_child_state_change), (gst_thread_main_loop):
688         Ref the thread object in the GThread mainloop. Break out of the
689         thread mainloop if it holds the last ref. This properly exits
690         the threads when disposing the thread from its own context. It
691         also avoids possible deadlocks in the dispose function.
692
693 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
694
695         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
696         it is necessary to wait.
697
698 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
699
700         * docs/pwg/building-boiler.xml:
701           Make description somewhat clearer.
702
703 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
704
705         * docs/upload.mak:
706           Apparently docs changed location on FDO's server.
707
708 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
709
710         * docs/pwg/appendix-checklist.xml:
711           Add some random notes on things to check when writing an element.
712           This list can be extended as people see fit.
713
714 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
715
716         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
717         (gst_queue_link_src): Allow for renegotiating the caps of the sink
718         pad. The queue will now wait until it is empty and forward the new
719         caps to the source.
720         * gst/gstbin.c (gst_bin_set_element_sched)
721         (gst_bin_unset_element_sched): Make sure that all elements and
722         links are registered and unregistered with the scheduler exactly
723         once. This elaborates on a fix by Benjamin Otte, but
724         guarantees that decoupled elements are also registered.
725
726 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
727
728         * docs/manual/quotes.xml:
729           add a quote
730         * configure.ac:
731         * gst/gst.c:
732         * gst/gstinfo.c:
733           add LIBDIR and move init message higher up so it's at the start
734
735 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
736
737         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
738         * gstreamer.spec.in: add fair
739
740 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
741
742         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
743         * gst/elements/gstidentity.c: (gst_identity_class_init):
744           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
745           <teuf@gnome.org> (#157263).
746         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
747         (gst_type_find_handle_src_query):
748           Subtract size of internally stored data from position queries.
749
750 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
751
752         * gst/schedulers/fairscheduler.c:
753         * gst/schedulers/faircothreads.c:
754         * gst/schedulers/faircothreads.h:
755         New cothread based scheduler: Fair scheduler.
756         * gst/schedulers/gthread-cothreads.h: 
757         Add the standard #if around the whole file.
758         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
759         compilation of the functions defined in this file. This is
760         necessary to be able to use this file as a normal header.
761         * gst/schedulers/Makefile.am: Add compiling support for fair
762         scheduler.
763         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
764         scheduler cothreads layer from documentation generation.
765
766 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
767
768         * gst/autoplug/gstspideridentity.c:
769         (gst_spider_identity_sink_loop_type_finding):
770           Don't crash if that function is not implemented.
771
772 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
773
774         * docs/pwg/advanced-types.xml:
775           Another typo.
776
777 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
778
779         * docs/pwg/intro-preface.xml:
780           Hm, ok, so the brackets weren't really useful...
781         * docs/pwg/other-ntoone.xml:
782           Fix embarassing typo.
783
784 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
785
786         * docs/pwg/intro-preface.xml:
787           Rewrite preface.
788
789 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
790
791         * docs/pwg/advanced-scheduling.xml:
792         * docs/pwg/advanced-tagging.xml:
793         * docs/pwg/advanced-types.xml:
794         * docs/pwg/building-boiler.xml:
795         * docs/pwg/building-chainfn.xml:
796         * docs/pwg/building-signals.xml:
797         * docs/pwg/building-state.xml:
798         * docs/pwg/building-testapp.xml:
799         * docs/pwg/intro-basics.xml:
800         * docs/pwg/other-manager.xml:
801         * docs/pwg/other-source.xml:
802           Typo fixes.
803         * docs/pwg/other-manager.xml:
804           Add some first content. No example code yet.
805         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
806           Remove double newlines.
807
808 2004-11-04  Wim Taymans  <wim@fluendo.com>
809
810         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
811         (remove_from_group), (normalize_group), (group_migrate_connected),
812         (gst_opt_scheduler_iterate):
813         * testsuite/schedulers/.cvsignore:
814         * testsuite/schedulers/Makefile.am:
815         * testsuite/schedulers/queue_link.c: (main):
816         Added testcase for scheduler segfault.
817         Fix scheduler segfault when removing a decoupled
818         entry point as the last element from a group.
819
820 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
821
822         * gst/gstmarshal.list: add missing marshaller, fixes build
823
824 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
825
826         * docs/random/signal: added notes about using BOXED for GstBuffer
827         signal marshallers, not POINTER
828
829 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
830
831         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
832         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
833         POINTER=>BOXED changes to marshal GstBuffers
834
835 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
836
837         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
838         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
839
840 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
841
842         * docs/gst/gstreamer-sections.txt:
843         * docs/gst/tmpl/gstcaps.sgml:
844         * docs/gst/tmpl/gsterror.sgml:
845         * docs/gst/tmpl/gstinfo.sgml:
846         * docs/gst/tmpl/gstmacros.sgml:
847         * docs/gst/tmpl/gstutils.sgml:
848         * docs/random/ensonic/interfaces.txt:
849         * gst/gstinfo.h:
850           added some more docs, removed two obsolete defines
851
852 2004-11-02  Kjartan Maraas <as at gnome.org>
853
854         reviewed by: Wim Taymans, Ronald Bultje.
855
856         * gst/cothreads.c: (cothread_create):
857         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
858         (gst_bin_child_state_change_func):
859         * gst/gstbuffer.c: (gst_buffer_span):
860         * gst/gstelement.c: (gst_element_get_index),
861         (gst_element_get_event_masks), (gst_element_get_query_types),
862         (gst_element_get_formats):
863         * gst/gsterror.c: (_gst_core_errors_init),
864         (_gst_library_errors_init), (_gst_resource_errors_init),
865         (_gst_stream_errors_init):
866         * gst/gstobject.c: (gst_object_default_deep_notify):
867         * gst/gstpad.c: (gst_pad_get_event_masks),
868         (gst_pad_get_internal_links_default):
869         * gst/gstplugin.c: (gst_plugin_register_func),
870         (gst_plugin_get_module):
871         * gst/gststructure.c: (gst_structure_get_string),
872         (gst_structure_get_abbrs), (gst_structure_from_abbr),
873         (gst_structure_to_abbr):
874         * gst/gstutils.c: (gst_print_element_args):
875         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
876         (setup_group_scheduler), (gst_opt_scheduler_iterate):
877         Aplied part of patch #157127: Cleanup of issues reported by 
878         sparse.
879         Also do not try to use cothreads when there is no cothread
880         context yet.
881
882 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
883
884         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
885         (gst_opt_scheduler_iterate):
886         Applied patch #154061. Running a pipeline in which an element 
887         calls GST_ELEMENT_ERROR in the chain function, the opt 
888         scheduler doesn't unref the chain so it never gets freed.
889
890 2004-11-02  Wim Taymans  <wim@fluendo.com>
891
892         * gst/gststructure.c: (gst_structure_get_abbrs),
893         (gst_structure_from_abbr), (gst_structure_to_abbr):
894         Remove that ugly if-then thing in the code that converts
895         between strings and types.
896
897 2004-11-02  Wim Taymans  <wim@fluendo.com>
898
899         * gst/gstscheduler.c: (gst_scheduler_add_element),
900         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
901         Aplied clock distribution patch, this should fix bug
902         #148787.
903
904 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
905
906         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
907
908         * po/LINGUAS:
909         * po/nb.po:
910           Added Norwegian Bokmaal translation
911
912 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
913
914         * tools/gst-inspect.c: (print_signal_info):
915           print signal arguments as pointers if they are
916
917 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
918
919         * docs/pwg/building-boiler.xml:
920           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
921
922 2004-10-19  Wim Taymans  <wim at fluendo dot com>
923
924         * gst/parse/parse.l:
925         * testsuite/parse/parse1.c: (main):
926         Since parse can do 'element name=a:b' make 'a:b.' work as
927         well. 
928         Added testcase to verify fix.
929
930 2004-10-19  Wim Taymans  <wim at fluendo dot com>
931
932         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
933         Use the realpad when printing the direction.
934         Add extra \n when printing extensions of typefind factories.
935
936 2004-10-13  David Schleef  <ds@schleef.org>
937
938         * examples/manual/Makefile.am: $< isn't portable in Makefile
939         rules.
940
941 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
942
943         * docs/gst/tmpl/gstobject.sgml:
944         * docs/gst/tmpl/gstplugin.sgml:
945         * docs/gst/tmpl/gstpluginfeature.sgml:
946         * docs/gst/tmpl/gstregistry.sgml:
947         * docs/gst/tmpl/gstversion.sgml:
948         * gst/gstbin.c:
949           more api documentation
950         * gst/gstplugin.c: (gst_plugin_register_func),
951         (gst_plugin_check_file), (gst_plugin_load_file):
952           better error signaling and logging
953
954 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
955
956         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
957           Subtract current queue contents from position queries.
958
959 2004-10-11  Johan Dahlin  <johan@gnome.org>
960
961         * gst/gsturi.c (gst_uri_get_location): unescape string
962         (gst_uri_construct): escape string.
963
964 2004-10-11  Benjamin Otte  <otte@gnome.org>
965
966         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
967         (gst_pad_try_set_caps_nonfixed):
968           allow renegotiation of unconnected pads (as inside spider). Simply
969           return OK if unconnected - mimic try_set_caps there.
970
971 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
972
973         * gst/gstbin.c: (gst_bin_sync_children_state):
974           Add missing break.
975
976 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
977
978         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
979         Set element to EOS before sending EOS event
980
981 2004-10-08  Wim Taymans  <wim at fluendo dot com>
982
983         * gst/elements/gsttypefindelement.c:
984         (gst_type_find_element_handle_event):
985         Handle EOS events when doing the transition from
986         typefind to data passing. This should fix the
987         infinite loops in short files.
988
989 2004-10-07  Wim Taymans  <wim at fluendo dot com>
990
991         * gst/gstthread.c: (gst_thread_change_state),
992         (gst_thread_child_state_change):
993         Make sure no iteration happens while performing
994         the state change as it could mess up the internal
995         consistency of the thread state.
996
997 2004-10-07  Wim Taymans  <wim at fluendo dot com>
998
999         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
1000         (gst_thread_change_state), (gst_thread_child_state_change):
1001         Do not try to grab the iterate lock in the state change method
1002         when we are in the same thread as the iterate or else we
1003         could deadlock. Some other cleanups.
1004
1005 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1006
1007         * configure.ac:
1008           bump nano to cvs
1009
1010 === release 0.8.7 ===
1011
1012 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1013
1014         * configure.ac:
1015         * NEWS:
1016         * RELEASE:
1017         * configure.ac:
1018           releasing 0.8.7, "A Cruise"
1019
1020 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
1021
1022         * docs/random/mimetypes:
1023         Add an entry for Sony ATRAC3 audio format with mime-type
1024         used by rmdemux et riff-read
1025
1026 2004-10-06  Wim Taymans  <wim at fluendo dot com>
1027
1028         * gst/elements/gsttypefindelement.c: (stop_typefinding):
1029         Push the buffer store instead of clearing it in case that
1030         the stream is not seekable.
1031
1032 2004-10-06  Wim Taymans  <wim at fluendo dot com>
1033
1034         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
1035         (gst_thread_main_loop):
1036         Lock the iteration and the state change so that automatic
1037         negotiation and fixation does not happen at the same time
1038         as the in stream negotiation.
1039
1040 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
1041
1042         * configure.ac:
1043           bump nano to cvs
1044
1045 === release 0.8.6 ===
1046
1047 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
1048
1049         * configure.ac:
1050         * NEWS:
1051         * RELEASE:
1052         * configure.ac:
1053           releasing 0.8.6, "Narc"
1054
1055 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
1056
1057         * configure.ac:
1058           prerel bump
1059
1060 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
1061
1062         patch by: Steve Lhomme
1063
1064         * gst/elements/gstfakesrc.c:
1065         * gst/elements/gstidentity.c:
1066         * gst/gstthread.c:
1067           Fix for #153881
1068
1069 2004-10-01  Wim Taymans  <wim at fluendo dot com>
1070
1071         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
1072         Fix threadsafety of the crc checking function.
1073
1074 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
1075
1076         patch by: Ronald Bultje
1077
1078         * gst/elements/gsttypefindelement.c: (stop_typefinding),
1079         (gst_type_find_element_handle_event),
1080         (gst_type_find_element_chain):
1081         * gst/elements/gsttypefindelement.h:
1082          #153657.
1083          Filter out discont event from seekable sources when typefind
1084          asks them to seek.  Fixes typefind with demuxers for
1085          avi, asf and matroska.
1086
1087 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
1088
1089         * docs/gst/gstreamer-sections.txt:
1090         * gst/gstcaps.c:
1091         * gst/gstcaps.h:
1092         * gst/gstpad.c:
1093           Revert preferred caps: (#147789)
1094
1095 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
1096
1097         * win32/dirent.c:
1098           fix a memory leak
1099
1100 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1101
1102         * configure.ac:
1103           bump for prerelease
1104
1105 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1106
1107         * docs/Makefile.am:
1108         * docs/manual/elements-api.xml:
1109           restructure so that common stuff is shown first
1110         * docs/manual/init-api.xml:
1111           convert to examples
1112         * docs/manual/manual.xml:
1113         * docs/manuals.mak:
1114         * docs/url.entities:
1115           link to API on the website, possibly override later in build
1116         * examples/manual/.cvsignore:
1117           ignore more
1118         * examples/manual/Makefile.am:
1119           add more examples
1120         * examples/manual/extract.pl:
1121           error out on failure
1122
1123 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1124
1125         * docs/gst/tmpl/gstthread.sgml:
1126         * docs/manual/init-api.xml:
1127         * examples/manual/Makefile.am:
1128           convert two code bits to examples
1129
1130 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1131
1132         * gst/gstelement.c: (gst_element_change_state):
1133           Well, actually, I was about to remove this insane assert when
1134           I noticed Wim already did that. A warning is nice so we can
1135           fix actual ugs (using --g-fatal-warnings and backtraces), so
1136           I added that instead.
1137
1138 2004-09-06  Wim Taymans  <wim@fluendo.com>
1139
1140         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
1141         (gst_element_threadsafe_properties_post_run),
1142         (gst_element_set_state), (gst_element_change_state):
1143         Added extra refcounting around various places. 
1144
1145 2004-09-06  Wim Taymans  <wim@fluendo.com>
1146
1147         * gst/gstpad.c: (gst_pad_link_call_link_functions):
1148         Fix debug info.
1149
1150 2004-09-06  Wim Taymans  <wim@fluendo.com>
1151
1152         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
1153         (remove_from_group):
1154         Some more debug info.
1155
1156 2004-09-03  Wim Taymans  <wim@fluendo.com>
1157
1158         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1159         (gst_fakesrc_init), (gst_fakesrc_set_clock),
1160         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1161         (gst_fakesrc_get), (gst_fakesrc_change_state):
1162         * gst/elements/gstfakesrc.h:
1163         * gst/elements/gstidentity.c: (gst_identity_class_init),
1164         (gst_identity_init), (gst_identity_chain),
1165         (gst_identity_set_property), (gst_identity_get_property),
1166         (gst_identity_change_state):
1167         * gst/elements/gstidentity.h:
1168         Added datarate properties to limit the datarate.
1169
1170 >>>>>>> 1.808
1171 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
1172
1173         * gst/autoplug/gstspider.c: (plugin_init):
1174           don't set a rank. We don't want to autoplug by inserting spiders.
1175
1176 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
1177
1178         * gst/autoplug/gstspider.c: (gst_spider_class_init),
1179         (gst_spider_identity_plug):
1180           add a template for spider's sink
1181         * gst/gst.c: (gst_register_core_elements):
1182           queue's rank should be NULL, we don't want spider to add it.
1183
1184 2004-08-18  David Schleef  <ds@schleef.org>
1185
1186         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
1187         * docs/libs/Makefile.am: same
1188         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
1189         * docs/random/ds/0.9-planning: random additions
1190         * docs/random/ds/0.9-suggested-changes: same
1191         * gst/gstxml.h: remove vestigal GstXMLNs definition
1192
1193         Preferred caps: (#147789)
1194         * docs/gst/gstreamer-sections.txt: Add symbols
1195         * docs/gst/tmpl/gstcaps.sgml: Add symbols
1196         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
1197         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
1198         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
1199         (gst_caps_get_preferred), (gst_caps_set_preferred),
1200         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
1201         (gst_caps_use_preferred): Handle caps preferences
1202         * gst/gstcaps.h: Add caps preferences
1203         * gst/gstpad.c: (gst_pad_link_get_preferred),
1204         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
1205         (gst_pad_renegotiate), (gst_pad_guess_preferred),
1206         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
1207         negotiation.
1208
1209 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
1210
1211         * gst/autoplug/gstspideridentity.c:
1212         (gst_spider_identity_request_new_pad):
1213         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
1214         (gst_aggregator_init):
1215         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
1216         (gst_fakesink_init):
1217         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
1218         (gst_fakesrc_init):
1219         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
1220         (gst_fdsink_init):
1221         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
1222         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
1223         (gst_filesink_init):
1224         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
1225         (gst_filesrc_init):
1226         * gst/elements/gstidentity.c: (gst_identity_base_init),
1227         (gst_identity_init):
1228         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
1229         (gst_multifilesrc_init):
1230         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
1231         (gst_pipefilter_init):
1232         * gst/elements/gststatistics.c: (gst_statistics_base_init),
1233         (gst_statistics_init):
1234         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
1235         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
1236           s/gst_pad_new/&_from_template/
1237           register pad templates in the base_init function
1238           add static pad template definitions
1239
1240 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
1241
1242         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
1243         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
1244         * testsuite/refcounting/pad.c: (main):
1245         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
1246           s/gst_pad_new/&_from_template/
1247           prepare deprecation of gst_pad_new
1248
1249 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1250
1251         patch by: Luca Ognibene <skaboy81@virgilio.it>
1252
1253         * gst/gstcaps.c:
1254         * gst/gstelement.c:
1255         * gst/gstpad.c:
1256         * gst/gstxml.c:
1257           fix memleaks.  Fixes #150001
1258
1259 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
1260
1261         * docs/random/ds/0.9-suggested-changes:
1262           add notes - mostly about pad templates
1263
1264 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
1265
1266         * win32/GStreamer.vcproj:
1267           temporary locale files are .gmo not .mo
1268
1269 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
1270
1271         * configure.ac: bump nano to cvs
1272
1273 === release 0.8.5 ===
1274
1275 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
1276
1277         * configure.ac:
1278           releasing 0.8.5, "Stuttgart"
1279         * NEWS:
1280         * RELEASE:
1281         * configure.ac:
1282         * docs/random/release:
1283           updates for release
1284
1285 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
1286
1287         patch by: Wim Taymans (wim@fluendo.com)
1288
1289         * gst/gstbuffer.c:
1290         * gst/gstindex.h:
1291         * libs/gst/dataprotocol/dataprotocol.c:
1292           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
1293
1294 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1295
1296         * Makefile.am:
1297         * win32/MANIFEST:
1298           add win32 dir to the build.  Fixes #149981.
1299
1300 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1301
1302         * configure.ac:
1303           bump libtool versioning
1304         * gst/gststructure.c:
1305           mark function as static
1306         * po/af.po:
1307         * po/az.po:
1308         * po/ca.po:
1309         * po/cs.po:
1310         * po/en_GB.po:
1311         * po/fr.po:
1312         * po/nl.po:
1313         * po/sq.po:
1314         * po/sr.po:
1315         * po/sv.po:
1316         * po/tr.po:
1317         * po/uk.po:
1318           translations update
1319         * win32/README.txt:
1320           trademark protection
1321
1322 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1323
1324         * configure.ac:
1325           fix GST_ORIGIN
1326           set GST_PACKAGE to source, and distinguish between release and other
1327         * tools/gst-inspect.c:
1328           print out plugin an element factory is part of so we see this info
1329
1330 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1331
1332         * docs/gst/gstreamer-sections.txt:
1333         * docs/gst/tmpl/gstbuffer.sgml:
1334         * docs/gst/tmpl/gstschedulerfactory.sgml:
1335           reorder docs a little, make GstBuffer's more sensible.
1336         * gst/gstbuffer.h:
1337           API: added GST_BUFFER_FLAG_DELTA_UNIT
1338         * gst/gstscheduler.c:
1339           comment API addition
1340
1341 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
1342
1343         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
1344           work with non-regular files that can be mmapped (like /dev/zero)
1345         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
1346           get rid of typefinds that require a seek when we can't seek instead
1347           of trying them over and over again
1348         * tools/gst-launch.c: (idle_func), (error_cb), (main):
1349           return non-zero failure value when the pipeline was interrupted or
1350           an error occurred
1351
1352 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
1353
1354         * win32/config.h:
1355         * win32/GStreamer.vcproj:
1356           compile and install the locales
1357
1358 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
1359
1360         * gst/gstvalue.c:
1361           fix a possible memory leak under Windows
1362
1363 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
1364
1365         * win32/GStreamer.vcproj:
1366           fix a memory leak that occured under Windows
1367         * win32/gstreamer.def:
1368           add gst_scheduler_register
1369
1370 2004-08-11  Benjamin Otte  <otte@gnome.org>
1371
1372         * docs/gst/gstreamer-sections.txt:
1373         * gst/gstscheduler.c: (gst_scheduler_register):
1374         * gst/gstscheduler.h:
1375           API:
1376           add gst_scheduler_register shortcut similar to gst_element_register
1377         * gst/schedulers/entryscheduler.c: (plugin_init):
1378         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
1379         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
1380           use it
1381
1382 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
1383
1384         * gst/gstvalue.h:
1385           fix a memory leak that occured under Windows
1386
1387 2004-08-10  Colin Walters  <walters@redhat.com>
1388
1389         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
1390         Don't use O_EXCL to open temporary registry.  It will prevent
1391         registry creation if a temporary one already exists, which
1392         is unnecessary.
1393
1394 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
1395
1396         * docs/gst/gstreamer-sections.txt:
1397         * docs/gst/tmpl/gstvalue.sgml:
1398           remove some valuable stuff from the documentation due to the use of GST_EXPORT
1399
1400 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
1401
1402         * win32/gstbytestream.vcproj:
1403         * win32/gstelements.vcproj:
1404         * win32/gstgetbits.vcproj:
1405         * win32/gst-inspect.vcproj:
1406         * win32/gst-launch.vcproj:
1407         * win32/gstoptimalscheduler.vcproj:
1408         * win32/GStreamer.vcproj:
1409         * win32/gst-register.vcproj:
1410         * win32/gstspider.vcproj:
1411           update the include and lib dirs to fit standard libraries as
1412           described in the Win32 manual
1413
1414 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
1415
1416         * win32/config.h:
1417         * win32/gstversion.h:
1418           enable NLS again, push the version number for the coming 0.8.5 release
1419
1420 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
1421
1422         * gst/gstvalue.h:
1423           export gst_type_XXX for windows DLLs
1424
1425 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1426
1427         * docs/faq/gst-uninstalled:
1428           fix PKG_CONFIG_PATH and PYTHONPATH
1429         * gst/schedulers/Makefile.am:
1430           cleanup
1431         * libs/gst/bytestream/bytestream.c:
1432           remove newline
1433         * po/LINGUAS:
1434         * po/sq.po:
1435           adding Albanian translation (Laurent Dhima)
1436         * po/cs.po:
1437           updated
1438
1439 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
1440
1441         * po/ca.po:
1442         * po/sv.po:
1443           updated translations
1444
1445 2004-08-04  Benjamin Otte  <otte@gnome.org>
1446
1447         * tests/mass_elements.c: (main):
1448           allow specifying src and sink element explicitly, so I can test
1449           videotestsrc instead of fakesrc
1450
1451 2004-08-04  Benjamin Otte  <otte@gnome.org>
1452
1453         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
1454         (gst_structure_id_empty_new), (gst_structure_empty_new),
1455         (gst_structure_copy):
1456           add gst_structure_id_empty_new_with_size to allow preallocating
1457           value array sizes. Use this in gst_structure_copy to get rid of
1458           reallocs.
1459           don't do quark=>string=>quark when copying structures
1460
1461 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
1462
1463         * docs/manual/win32.xml:
1464         * win32/README.txt:
1465           update documentation with the clean version of dependencies
1466
1467 2004-08-03  Benjamin Otte  <otte@gnome.org>
1468
1469         * gst/schedulers/entryscheduler.c:
1470         (gst_entry_scheduler_remove_element):
1471           fix for GST_DISABLE_DEBUG
1472         * tools/gst-launch.c: (print_tag):
1473           fixes for G_DISABLE_ASSERT
1474
1475 2004-08-03  Benjamin Otte  <otte@gnome.org>
1476
1477         * gst/gst.c: (gst_register_core_elements):
1478           fix for G_DISABLE_ASSERT
1479         * gst/gstinfo.c: (__gst_in_valgrind):
1480           add for GST_DISABLE_DEBUG
1481
1482 2004-08-03  Benjamin Otte  <otte@gnome.org>
1483
1484         * gst/parse/parse.l:
1485           fix for G_DISABLE_ASSERT
1486
1487 2004-08-03  Wim Taymans  <wim@fluendo.com>
1488
1489         * gst/gstbin.c: (gst_bin_get_type),
1490         (gst_bin_child_state_change_func):
1491         * gst/gstthread.c: (gst_thread_change_state):
1492         Backported some debug logging from a reverted patch
1493         Don't try to destroy the thread twice. Added some more
1494         debugging in GstThread. Unlock and signal even if we
1495         are in the thread context.
1496
1497 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1498
1499         * po/uk.po:
1500           updated translation
1501
1502 2004-07-30  David Schleef  <ds@schleef.org>
1503
1504         * gst/gstatomic_impl.h: Enable atomic code for x86_64
1505
1506 2004-07-29  David Schleef  <ds@schleef.org>
1507
1508         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
1509         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
1510
1511 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1512
1513         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
1514         (gst_bin_add_func), (gst_bin_remove_func),
1515         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
1516         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
1517         (gst_bin_change_state_norecurse), (gst_bin_dispose),
1518         (gst_bin_sync_children_state):
1519         * gst/gstbin.h:
1520         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
1521         (gst_thread_change_state):
1522         * testsuite/states/Makefile.am:
1523           revert state change patches as agreed so we can rework them
1524           gradually
1525
1526 2004-07-29  Benjamin Otte  <otte@gnome.org>
1527
1528         * libs/gst/control/Makefile.am:
1529           link to libgstreamer (fixes Debian bug 262019, see
1530           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
1531
1532 2004-07-29  Wim Taymans  <wim@fluendo.com>
1533
1534         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
1535         (check_from_fraction_convert), (transform_test), (main):
1536         Make the test less pedantic about float roundoff errors.
1537
1538 2004-07-29  Benjamin Otte  <otte@gnome.org>
1539
1540         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
1541         (gst_filesrc_srcpad_event):
1542           make seek events to before start/after end of file not fail, but
1543           seek to start/end instead
1544         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
1545           add more output
1546
1547 2004-07-29  Benjamin Otte  <otte@gnome.org>
1548
1549         * gst/gstpad.c: (gst_pad_set_explicit_caps):
1550           check that caps are fixed
1551         * gst/gstpad.c: (gst_pad_template_new):
1552           don't try to simplify caps, costs too much time on gst_init
1553         * gst/gstplugin.c: (gst_plugin_add_feature):
1554           G_ERROR if features are added twice
1555         * gst/gsttypefind.c: (gst_type_find_register):
1556         * gst/gstelementfactory.c: (gst_element_register):
1557           don't add features twice
1558         * docs/random/ds/0.9-suggested-changes:
1559           add note about possible gst_init optimization
1560
1561 2004-07-28  David Schleef  <ds@schleef.org>
1562
1563         * testsuite/elements/Makefile.am:
1564         * testsuite/elements/struct_i386.h:
1565         * testsuite/elements/struct_size.c: (main):  A little test
1566         to keep distcheck from working if someone changes a structure
1567         size accidentally.
1568
1569 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
1570
1571         * docs/libs/Makefile.am:
1572         * docs/libs/gstreamer-libs-docs.sgml:
1573         * docs/libs/gstreamer-libs-sections.txt:
1574         * docs/libs/tmpl/gstbytestream.sgml:
1575         * docs/libs/tmpl/gstcontrol.sgml:
1576         * docs/libs/tmpl/gstdataprotocol.sgml:
1577         * docs/libs/tmpl/gstgetbits.sgml:
1578         * libs/gst/bytestream/Makefile.am:
1579         * libs/gst/bytestream/bytestream.c:
1580         * libs/gst/bytestream/bytestream.h:
1581         * libs/gst/control/Makefile.am:
1582         * libs/gst/dataprotocol/Makefile.am:
1583         * libs/gst/getbits/Makefile.am:
1584         * libs/gst/getbits/getbits.h:
1585           various doc and style fixes, adding bytestream to libs docs.
1586
1587 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
1588
1589         * docs/gst/gstreamer-docs.sgml:
1590         * docs/libs/Makefile.am:
1591         * docs/libs/gstreamer-libs-docs.sgml:
1592         * docs/libs/gstreamer-libs-sections.txt:
1593         * libs/gst/control/dparam.c:
1594           more doc fixes.  gst-libs docs now build the same way as gst.
1595
1596 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
1597
1598         * configure.ac:
1599         * testsuite/Makefile.am:
1600         * testsuite/bins/Makefile.am:
1601         * testsuite/caps/Makefile.am:
1602         * testsuite/cleanup/Makefile.am:
1603         * testsuite/clock/Makefile.am:
1604         * testsuite/debug/Makefile.am:
1605         * testsuite/dlopen/Makefile.am:
1606         * testsuite/dynparams/Makefile.am:
1607         * testsuite/elements/.cvsignore:
1608         * testsuite/elements/Makefile.am:
1609         * testsuite/enumcaps/Makefile.am:
1610         * testsuite/enumcaps/enumcaps.c:
1611         * testsuite/ghostpads/Makefile.am:
1612         * testsuite/indexers/Makefile.am:
1613         * testsuite/negotiation/Makefile.am:
1614         * testsuite/parse/Makefile.am:
1615         * testsuite/plugin/Makefile.am:
1616         * testsuite/refcounting/Makefile.am:
1617         * testsuite/schedulers/.cvsignore:
1618         * testsuite/states/Makefile.am:
1619         * testsuite/tags/Makefile.am:
1620         * testsuite/threads/Makefile.am:
1621           fold enumcaps into caps dir
1622           clean up Makefile.am's for testsuite
1623
1624 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
1625
1626         * docs/gst/Makefile.am:
1627         * docs/libs/Makefile.am:
1628           clean up docs build.  Fixes needless rebuilding of template files.
1629
1630 2004-07-28  Wim Taymans  <wim@fluendo.com>
1631
1632         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
1633         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
1634         Make sure that a bin state change tries to keep the children
1635         in sync. 
1636         Added debug logging to the thread.
1637
1638 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
1639
1640         * win32/GStreamer.vcproj:
1641         * win32/gstreamer.def:
1642           more exports for the plugins
1643
1644 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
1645
1646         * win32/gstgetbits.vcproj:
1647         * win32/gstgetbits.def:
1648         * win32/msvc71.sln:
1649           add support for the getbits plugin
1650
1651 2004-07-27  Wim Taymans  <wim@fluendo.com>
1652
1653         * gst/gstvalue.c: (gst_value_transform_double_fraction),
1654         (gst_value_transform_fraction_double), (_gst_value_initialize):
1655         * testsuite/caps/Makefile.am:
1656         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
1657         (check_from_fraction_convert), (transform_test), (main):
1658         Added transform functions between double and fraction.
1659         Added testcase to verify transforms
1660
1661 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
1662
1663         * win32/GStreamer.vcproj:
1664           rename GStreamer-0.8.lib to libgstreamer.lib
1665
1666 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
1667
1668         * win32/gstelements.vcproj:
1669         * win32/gstoptimalscheduler.vcproj:
1670           fixes for the Release build
1671
1672 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
1673
1674         * win32/config.h:
1675           update the version number
1676
1677 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
1678
1679         * win32/GStreamer.vcproj:
1680           add gstinterface to the build
1681
1682 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
1683
1684         * win32/gstreamer.def:
1685           add many definitions needed by plugins,
1686           GST_CAT_DEFAULT only available in the Debug build ?
1687
1688 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
1689
1690         * gst/gstelement.c: (gst_element_set_eos_recursive):
1691           various whitespace fixes.
1692           doc fix, fixes #148497
1693
1694 2004-07-25  Benjamin Otte  <otte@gnome.org>
1695
1696         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
1697           don't delay links on the sink elements, it causes unnegotiated
1698           links.
1699         * gst/elements/gsttypefindelement.c:
1700         (gst_type_find_element_base_init):
1701           add our padtemplates, we indeed do have some.
1702         * gst/elements/gsttypefindelement.c:
1703         (gst_type_find_element_handle_event),
1704         (gst_type_find_element_chain):
1705           don't push data when typefinding failed.
1706         * gst/gstpad.c: (gst_pad_link_fixate):
1707           check that no fixate function returns empty caps.
1708         * gst/gstpad.c: (gst_pad_push):
1709           check that the link is negotiated before data gets pushed.
1710         * tools/gst-register.c: (main):
1711           don't assert (fixes #148283)
1712
1713 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
1714
1715         * docs/gst/gstreamer-sections.txt:
1716         * docs/gst/tmpl/gstconfig.sgml:
1717           add GST_PLUGIN_EXPORT definition
1718
1719 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
1720
1721         * gst/gstplugin.h:
1722         * gst/gstconfig.h.in:
1723         * win32/gstconfig.h:
1724         * win32/gstelements.def:
1725         * win32/gstelements.vcproj:
1726         * win32/gstoptimalscheduler.def:
1727         * win32/gstoptimalscheduler.vcproj:
1728         * win32/gstspider.def:
1729         * win32/gstspider.vcproj:
1730           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
1731
1732 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
1733
1734         * docs/gst/gstreamer-sections.txt:
1735           remove GST_CAT_DEFAULT because the type has changed
1736
1737 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
1738
1739         * win32/gstbytestream.vcproj:
1740         * win32/gstelements.vcproj:
1741         * win32/gst-inspect.vcproj:
1742         * win32/gst-launch.vcproj:
1743         * win32/gstoptimalscheduler.vcproj:
1744         * win32/GStreamer.vcproj:
1745         * win32/gst-register.vcproj:
1746         * win32/gstspider.vcproj:
1747         * win32/msvc71.sln:
1748           Copy the files where needed after building, The testsuite will be
1749           built separately
1750
1751 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
1752
1753         * win32/config.h:
1754         * win32/README.txt:
1755         * docs/manual/win32.xml:
1756         Fixed the plugin and GStreamer location
1757
1758 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
1759
1760         * win32/gstreamer.def:
1761         More exports for the plugins
1762
1763 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
1764
1765         * gst/gstinfo.h:
1766         Marc was right, we need to export literally GST_CAT_DEFAULT
1767
1768 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
1769
1770         * win32/config.h:
1771         NLS crashes in gettext, disabled until this is solved
1772
1773 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
1774
1775         * win32/gst-inspect.vcproj:
1776         * win32/gst-launch.vcproj:
1777         Should use NLS when available
1778
1779 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
1780
1781         * gst/registries/gstxmlregistry.c:
1782         removing the file doesn't seem to be a good idea on Linux
1783
1784 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
1785
1786         * gst/registries/gstxmlregistry.c:
1787         Remove the registry before renaming the tempfile (needed for Windows)
1788
1789 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
1790
1791         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
1792         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
1793         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
1794         * gst/elements/gstmultifilesrc.h:
1795         Added newmedia property so it generates newmedia events between each
1796         file when property is set, as well as fixed eos handling
1797
1798 2004-07-22  David Schleef  <ds@schleef.org>
1799
1800         * gst/gststructure.c: (gst_structure_id_empty_new),
1801         (gst_structure_empty_new):  Set type field correctly.
1802         * gst/gststructure.h: Check type field correctly.
1803         * testsuite/caps/Makefile.am:
1804         * testsuite/caps/structure.c: (test1), (main): Add a very small
1805         test for structures.
1806
1807 2004-07-22  David Schleef  <ds@schleef.org>
1808
1809         * docs/random/ds/0.9-suggested-changes: more comments
1810         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
1811
1812 2004-07-22  Benjamin Otte  <otte@gnome.org>
1813
1814         * gst/gstelementfactory.c: (gst_element_register):
1815           set the factory in the class struct, so gst_element_get_factory
1816           actually works
1817         * gst/parse/grammar.y:
1818           set element to playing when it gets unlocked as we can't rely on the
1819           bin state - all elements in the bin state might still be locked in
1820           NULL)
1821
1822 2004-07-22  Benjamin Otte  <otte@gnome.org>
1823
1824         * gst/gstelement.c: (gst_element_set_state_func):
1825           make this a static function
1826
1827 2004-07-22  Wim Taymans  <wim@fluendo.com>
1828
1829         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
1830         (gst_opt_scheduler_pad_link):
1831         fix 147894-2 and the group_link problem.
1832
1833 2004-07-22  Wim Taymans  <wim@fluendo.com>
1834
1835         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
1836         (handoff_identity), (main):
1837         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
1838         (handoff_identity), (main):
1839         * testsuite/schedulers/Makefile.am:
1840         * testsuite/schedulers/group_link.c: (main):
1841         Show bug in scheduler when linking chain and loop based element 
1842         where the chain based element was not yet in a group.
1843
1844 2004-07-21  Benjamin Otte  <otte@gnome.org>
1845
1846         * gst/.cvsignore:
1847         * gst/autoplug/.cvsignore:
1848         * gst/elements/.cvsignore:
1849         * gst/indexers/.cvsignore:
1850         * libs/gst/bytestream/.cvsignore:
1851         * libs/gst/control/.cvsignore:
1852         * libs/gst/getbits/.cvsignore:
1853         * testsuite/states/.cvsignore:
1854         * testsuite/threads/.cvsignore:
1855           keep this up to date, since I seem to be the only one who cares
1856           about not missing files on commits (editor's note: no you don't,
1857           but feel free to change them at the time you add stuff instead
1858           of later on)
1859
1860 2004-07-21  Benjamin Otte  <otte@gnome.org>
1861
1862         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
1863         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
1864         (gst_bin_child_state_change_func), (set_kid_state_func),
1865         (gst_bin_set_state), (gst_bin_change_state_norecurse):
1866           make state changes work correctly and reentrant (so removing
1867           elements from bins during state changes of bins doesn't cause
1868           segfaults or even wrong states)
1869           add debugging category and debugging output to print children states
1870         * gst/gstbin.c: (gst_bin_dispose): 
1871           add some assertion checks
1872         * gst/gstbin.h:
1873         * gst/gstbin.c: (gst_bin_sync_children_state):
1874           deprecate this function - it just does gst_bin_set_state (bin,
1875           GST_STATE (bin)) 
1876         * testsuite/threads/queue.c: (main):
1877           don't use gst_bin_sync_children_state anymore
1878         * testsuite/states/Makefile.am:
1879         * testsuite/states/bin.c:
1880           test that the state changes of bins work as expected
1881         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
1882           some adjustments to change states correctly, too
1883         * gst/gstthread.c: (gst_thread_change_state):
1884           don't enable/disable "threadsafe" properties, they're unused and
1885           cause random segfaults
1886         * testsuite/threads/Makefile.am:
1887           the queue check randomly passes now, ignore it
1888
1889 2004-07-21  Benjamin Otte  <otte@gnome.org>
1890
1891         * gst/gstpad.c:
1892           check if data is NULL before outputting debug info. (fixes #145100)
1893
1894 2004-07-21  Benjamin Otte  <otte@gnome.org>
1895
1896         * gst/schedulers/entryscheduler.c:
1897         (gst_entry_scheduler_loop_wrapper),
1898         (gst_entry_scheduler_chain_wrapper),
1899         (gst_entry_scheduler_get_wrapper):
1900           reset the state when the cothread starts, so we don't get assertion
1901           failures on restarting of cothreads
1902
1903 2004-07-20  Benjamin Otte  <otte@gnome.org>
1904
1905         * gst/gstelement.c: (gst_element_link_pads_filtered):
1906           use correct sinkpad, if only sinkpad is specified, but not srcpad
1907           (fixes #147889)
1908         * gst/gstelement.c: (gst_element_set_state_func),
1909         (gst_element_change_state): ref/unref the element, signal handlers
1910         could get rid of the element otherwise
1911
1912 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
1913
1914         * docs/random/ds/0.9-suggested-changes:
1915           Make note about renaming fixed-list to array.
1916         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
1917         (_gst_value_initialize):
1918           Add array intersections.
1919         * testsuite/caps/intersect2.c: (main):
1920           Add test for array intersections.
1921
1922 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
1923
1924         * configure.ac: back to cvs
1925
1926 === release 0.8.4 ===
1927
1928 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
1929
1930         * configure.ac:
1931           releasing 0.8.4, "Paella"
1932           bump libtool versioning
1933
1934 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
1935
1936         * po/LINGUAS:
1937         * po/ca.po:
1938           adding Catalan translation (Jordi Mallach)
1939
1940 2004-07-20  Wim Taymans  <wim@fluendo.com>
1941
1942         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
1943         (handoff_identity), (main):
1944         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
1945         (handoff_identity), (main):
1946         * testsuite/schedulers/Makefile.am:
1947         Added failing testcase for variant of #147894
1948
1949 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
1950
1951         patch by: David Moore
1952
1953         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
1954         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
1955         (group_migrate_connected):
1956         * testsuite/schedulers/Makefile.am:
1957           fix for #142813 (Deadlock in optimal scheduler)
1958
1959 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
1960
1961         patch by: Wim Taymans
1962
1963         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
1964         (gst_opt_scheduler_schedule_run_queue),
1965         (gst_opt_scheduler_get_wrapper), (get_group),
1966         (group_migrate_connected):
1967         * testsuite/schedulers/Makefile.am:
1968           fix for #147819 (Add some checks in the opt scheduler)
1969
1970 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
1971
1972         patch by: Benjamin Otte
1973
1974         * gst/gstelementfactory.c: (__gst_element_details_set):
1975           fix for #147929: running gst-register in non-utf8 locale can cause
1976           invalid registry
1977
1978 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
1979
1980         patch by: Wim Taymans
1981
1982         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
1983         (group_has_element), (element_get_reachables_func),
1984         (group_migrate_connected):
1985           fix for #147894 (opt scheduler decoupled elements mismanagement)
1986         * testsuite/schedulers/Makefile.am:
1987           testsuite app now passes
1988
1989 2004-07-19  Wim Taymans  <wim@fluendo.com>
1990
1991         * testsuite/schedulers/147819.c: (handoff_identity1),
1992         (handoff_identity2), (main):
1993         * testsuite/schedulers/Makefile.am:
1994         Added testcase for bug 147819
1995
1996 2004-07-19  Wim Taymans  <wim@fluendo.com>
1997
1998         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
1999         (handoff_identity), (main):
2000         * testsuite/schedulers/Makefile.am:
2001         Added testcase for bug 147894
2002
2003 2004-07-16  Wim Taymans  <wim@fluendo.com>
2004
2005         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
2006         * testsuite/schedulers/142183.c: (handoff_identity), (main):
2007         * testsuite/schedulers/Makefile.am:
2008         Added testsuite for bug 142183 in its two incarnations. Refcount
2009         is not increased for scheduled elements and threadsafe properties
2010         mutexes are not properly unlocked.
2011
2012 2004-07-16  Wim Taymans  <wim@fluendo.com>
2013
2014         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
2015         (create_chain), (destroy_chain), (create_group), (destroy_group),
2016         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
2017         (group_dec_link), (gst_opt_scheduler_pad_link),
2018         (group_inc_links_for_element), (group_migrate_connected):
2019         Call group_inc_link with the proper src->sink ordering -- 
2020         break this, and we break sort_chain. patch from wingo for bug
2021         147713.
2022         Partially revert patch 1.89. When adding a loop based element to 
2023         the scheduler, the links to other groups are automatically followed
2024         and incremented. This should not happen because the bin will call
2025         pad_link explicitly for those connection, resulting in them counted 
2026         twice. Results in assertion failure on pipeline cleanup.
2027
2028 2004-07-16  Wim Taymans  <wim@fluendo.com>
2029
2030         * testsuite/schedulers/143777-2.c: (main):
2031         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
2032         (main):
2033         * testsuite/schedulers/Makefile.am:
2034         Added cleanup code to testcase 143777-2.
2035         Added testcase to show bug 147713, does not really show the
2036         deadlock as I can't figure out how to trigger it, but it does
2037         demonstrate bad ordering in the scheduler.
2038
2039 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
2040
2041         * gst/gstvalue.c: (gst_value_deserialize_fraction):
2042           change strndup to g_strndup.  Fixes #147707
2043
2044 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
2045
2046         * po/af.po:
2047         * po/az.po:
2048         * po/cs.po:
2049         * po/en_GB.po:
2050         * po/fr.po:
2051         * po/nl.po:
2052         * po/sr.po:
2053         * po/sv.po:
2054         * po/tr.po:
2055         * po/uk.po:
2056           updated translations
2057
2058 2004-07-16  Benjamin Otte  <otte@gnome.org>
2059
2060         * gst/gstvalue.c: (gst_greatest_common_divisor):
2061           use ints and return ints, fractions only use ints, too, so this
2062           avoids accidently casting multiplications to unsigned
2063         (gst_value_lcopy_fraction): it's ints, not uint32
2064         (gst_value_set_fraction): disallow minint, multiplying and negation
2065           are broken with it
2066         (gst_value_fraction_multiply): fix to make large numbers work and get
2067         rid of the assumption that the multiplication of two ints fits an
2068         int64 - dunno if that's true for all systems
2069         * testsuite/caps/Makefile.am:
2070         * testsuite/caps/fraction-multiply-and-zero.c:
2071         (check_multiplication), (check_equal), (zero_test), (main):
2072           add tests for all the stuff above
2073         * testsuite/caps/value_compare.c: (test1):
2074           fix comment
2075         * tests/.cvsignore:
2076         * testsuite/caps/.cvsignore:
2077         * testsuite/debug/.cvsignore:
2078         * testsuite/dlopen/.cvsignore:
2079         * testsuite/states/.cvsignore:
2080           get up to date
2081
2082 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2083
2084         * docs/manual/bins-api.xml:
2085         * docs/manual/factories.xml:
2086         * docs/manual/helloworld.xml:
2087         * docs/manual/links-api.xml: 
2088           fixes for out of date info, incorrect info and grammar
2089
2090 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2091
2092         * docs/manual/pads.xml:
2093         * docs/manual/pads-api.xml: grammar fix
2094
2095 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2096
2097         * docs/manual/pads-api.xml: typo + grammar fix
2098
2099 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
2100
2101         * docs/gst/gstreamer-sections.txt:
2102           add new symbols
2103         * docs/gst/tmpl/gstelement.sgml:
2104         * docs/gst/tmpl/gstpad.sgml:
2105         * docs/gst/tmpl/gsttypes.sgml:
2106         * docs/gst/tmpl/gstvalue.sgml:
2107           update docs
2108         * gst/gststructure.c: (gst_structure_set_valist),
2109         (gst_structure_from_abbr), (gst_structure_to_abbr):
2110         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
2111         (gst_greatest_common_divisor), (gst_value_init_fraction),
2112         (gst_value_copy_fraction), (gst_value_collect_fraction),
2113         (gst_value_lcopy_fraction), (gst_value_set_fraction),
2114         (gst_value_get_fraction_numerator),
2115         (gst_value_get_fraction_denominator),
2116         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
2117         (gst_value_deserialize_fraction),
2118         (gst_value_transform_fraction_string),
2119         (gst_value_transform_string_fraction),
2120         (gst_value_compare_fraction), (_gst_value_initialize):
2121         * gst/gstvalue.h:
2122           adding GstFraction GValue type, get/set, and multiply
2123         * testsuite/caps/Makefile.am:
2124         * testsuite/caps/fraction.c: (test), (main):
2125         * testsuite/caps/string-conversions.c: (main):
2126         * testsuite/caps/value_compare.c: (test1), (main):
2127           add regression tests for GstFraction
2128
2129 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2130         
2131         * docs/manual/init-api.xml: Grammar fix
2132
2133 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2134
2135         * docs/manual/states.xml: Fix inconsistent information
2136
2137 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
2138
2139         * gst/gstelement.c: (gst_element_set_state):
2140         * gst/gstpad.c: (gst_pad_try_set_caps):
2141         * gst/gststructure.c:
2142         * gst/gstthread.c: (gst_thread_child_state_change):
2143         * gst/gstvalue.c: (gst_value_compare_double):
2144         * gst/gstvalue.h:
2145         * testsuite/parse/parse1.c: (main):
2146           debugging additions and style cleanups
2147
2148 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2149
2150         * docs/manual/states.xml: Grammar fix
2151
2152 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2153
2154         * docs/manual/pads.xml: Grammar fix
2155
2156 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2157
2158         * docs/manual/elements.xml: Fixed image reference
2159
2160 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2161
2162         * docs/manual/goals.xml: Grammar fix
2163
2164 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2165
2166         * docs/manual/motivation.xml:
2167         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
2168
2169 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2170
2171         * docs/manual/motivation.xml: Fix spelling
2172
2173 2004-07-15  Benjamin Otte  <otte@gnome.org>
2174
2175         * gst/gstelement.h: 
2176           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
2177           strings.
2178         * gst/gstelement.c (gst_element_class_init):
2179           GError's are boxed, not objects
2180         * gst/gstmarshal.list:
2181           update list for the fixed error signal
2182
2183 2004-07-14  Andy Wingo  <wingo@pobox.com>
2184
2185         * gst/gsttag.c: Add a tag merge func for pointers. The header was
2186         there all along, but the function wasn't. (guile-gstreamer's build
2187         system uses the address of the function -- I wasn't actually
2188         trying to use this.)
2189
2190 2004-07-14  Andy Wingo  <wingo@pobox.com>
2191
2192         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
2193         as gst_pad_proxy_pad_link) just link to every other pad when they
2194         are called. In the case where the graph has cycles, this will mean
2195         that a call to try_set_caps will recurse. Allow this recursion
2196         and return OK, while we wait for the first try_set_caps to give a
2197         proper return value.
2198         (gst_pad_link_call_link_functions): Since this function is the
2199         only one to set the NEGOTIATING flag on a pad, if the flag is set
2200         it means that the link functions have indirectly recursed. If this
2201         happens, error out to avoid infinite recursion and an eventual
2202         SEGV.
2203         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
2204         (gst_pad_proxy_getcaps): Intersect the result with the template
2205         caps to ensure that the return value is valid.
2206
2207 2004-07-14  Andy Wingo  <wingo@pobox.com>
2208
2209         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
2210         one refcount, the calling function is the owner of the buffer.
2211
2212 2004-07-14  Wim Taymans  <wim@fluendo.com>
2213
2214         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
2215         (gst_opt_scheduler_pad_link), (group_migrate_connected):
2216         Fix stupid warning when an element is to be migrated but
2217         is already migrated.
2218
2219 2004-07-14  Wim Taymans  <wim@fluendo.com>
2220
2221         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
2222         (gst_opt_scheduler_pad_link), (group_migrate_connected):
2223         Make sure that a single non-loop-based element does not 
2224         end up in a group. This fixes the testsuite again.
2225
2226 2004-07-14  Wim Taymans  <wim@fluendo.com>
2227
2228         * gst/schedulers/gstoptimalscheduler.c: (create_group),
2229         (add_to_group), (merge_groups), (schedule_group),
2230         (gst_opt_scheduler_get_wrapper), (group_elements),
2231         (group_dec_link), (gst_opt_scheduler_pad_link),
2232         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
2233         (gst_opt_scheduler_iterate):
2234         move isolated groups to a new chain.
2235         Emit a warning instead of segfaulting in some error cases.
2236         Fix a bug where the link count between groups was not calculated 
2237         correctly. Fixes #144510.
2238
2239 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
2240         * gst/elements/gstfilesrc.c:
2241           Binary files support under Windows now OK
2242       
2243 2004-07-13  Benjamin Otte  <otte@gnome.org>
2244
2245           compatibility fixes for Solaris 8/gcc 2.95
2246         * configure.ac:
2247           include libintl libs in LDFLAGS
2248         * gstvalue.c (gst_value_deserialize_buffer):
2249           cast isxdigit stuff to int to silence compiler warning
2250
2251 2004-07-12  Benjamin Otte  <otte@gnome.org>
2252
2253         * gst/gsttypes.h:
2254           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
2255           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
2256           just causes support madness
2257         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
2258           make it work without this
2259         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
2260         (gst_file_index_commit):
2261           glib IO channels don't want binary mode
2262         * testsuite/bytestream/filepadsink.c: (main):
2263         * testsuite/bytestream/test1.c: (read_param_file):
2264           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
2265
2266 2004-07-12  Benjamin Otte  <otte@gnome.org>
2267
2268         * gst/gstelement.c: (gst_element_class_init),
2269         (gst_element_set_state), (gst_element_set_state_func):
2270           virutalize gst_element_set_state, use set_state member in class
2271           struct that was already added in 0.7 for this.
2272         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
2273         (gst_bin_change_state):
2274           make gst_bin_foreach works similar to other foreach functions, plug
2275           memleaks in it. Make functions using it work with the new approach.
2276           Document gst_bin_foreach, so it can be exported if we want to
2277         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
2278           use virtualized set_state to make set_state on bins set the state of
2279           all its children.
2280
2281 2004-07-12  Benjamin Otte  <otte@gnome.org>
2282
2283         * configure.ac:
2284           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
2285           http://bugs.gentoo.org/show_bug.cgi?id=53967)
2286         * gst/gstpad.c: (gst_pad_alloc_buffer):
2287           allow buffer_alloc functions to return NULL and allocate a normal
2288           buffer in that case
2289
2290 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
2291         * gst/elements/gstfilesink.c:
2292         * gst/elements/gstfilesrc.c:
2293         * gst/indexers/gstfileindex.c:
2294         * gst/gsttypes.h:
2295         * testsuite/bytestream/filepadsink.c:
2296         * testsuite/bytestream/test1.c:
2297           Handle binary files under Windows
2298
2299 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
2300         * docs/manual/win32.xml:
2301         * win32/config.h:
2302         * win32/gst-register.vcproj:
2303         * win32/gstreamer.def:
2304           Update to another gettext public build
2305
2306 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
2307         * gst/gstplugin.c:
2308           Fix an impossible C syntax
2309         * win32/config.h:
2310           Disable i18n under Windows for the moment
2311         * win32/gst-register.vcproj:
2312           Use this configuration
2313
2314 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
2315         * docs/manual/quotes.xml:
2316           Keep the quotes file alive
2317         * docs/random/ds/0.9-suggested-changes:
2318           Add the suggestion of including a 'rowstride' as part of video
2319           format caps
2320
2321 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2322
2323         * gst/gstelement.c: (gst_element_set_state),
2324         (gst_element_change_state):
2325           d'oh.  Set PENDING state correctly before forcing bin to change.
2326         * gst/gststructure.c: (gst_structure_value_get_generic_type),
2327         (gst_structure_parse_fixed_list):
2328         * gst/schedulers/gstoptimalscheduler.c:
2329         (gst_opt_scheduler_state_transition):
2330         * testsuite/states/parent.c: (main):
2331           remove comment now that it's fixed.
2332
2333 2004-07-11  Benjamin Otte  <otte@gnome.org>
2334
2335         * gst/gstclock.h:
2336           GST_SECOND shouldn't cause a conversion to unsigned.
2337         * testsuite/clock/.cvsignore:
2338         * testsuite/clock/Makefile.am:
2339         * testsuite/clock/signedness.c: (main):
2340           make sure it never will again
2341
2342 2004-07-11  Andy Wingo  <wingo@pobox.com>
2343
2344         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
2345         whose state is higher than the bin state, raise the bin state to
2346         ensure that bin state := highest child state.
2347         
2348 2004-07-11  Andy Wingo  <wingo@pobox.com>
2349
2350         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
2351         procedure on the children of a bin. Assumes that the procedure can
2352         change the set of children.
2353         (set_kid_state_func): New static function.
2354         (gst_bin_change_state): Use gst_bin_foreach to call
2355         set_kid_state_func. Fixes a bug: if a child had a state-change
2356         handler that removes it from the bin, there would be a segfault.
2357         Hopefully it should also work in the case where the state-change
2358         handler on one child adds or removes other children. In any case,
2359         fixes should go to gst_bin_foreach.
2360
2361 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2362
2363         * gst/gstelement.c: (gst_element_set_state):
2364           compatibility fix for latest plugins release.  Change loop back
2365           to while {}
2366
2367 2004-07-09  Wim Taymans  <wim@fluendo.com>
2368
2369         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
2370         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
2371         (gst_thread_main_loop):
2372         Since remove is virtual in GstBin we must not assume the 
2373         elements GList to have anothing useful.
2374         Add some more logging to GstThread and be a bit more paranoid
2375         when resetting the scheduler.
2376         Set the state of the bin to NULL before removing the children.
2377
2378 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2379
2380         * testsuite/threads/Makefile.am:
2381         * testsuite/threads/threadg.c:
2382           added test to check if problem when removing all elements from a
2383           GstThread before setting GstThread state to NULL
2384
2385 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2386
2387         * docs/gst/tmpl/gstelement.sgml:
2388         * docs/gst/tmpl/gsttypes.sgml:
2389         * gst/gstbin.c: (gst_bin_change_state):
2390         * gst/gstelement.c: (gst_element_set_state),
2391         (gst_element_change_state):
2392           rework so that for bins we try to set the state on all children
2393           as well even if the bin is in the correct state already.
2394           change while to do so at least one iteration is done.
2395           For regular elements, we fall back to the previous behaviour for
2396           now since we first need a new plugins release.
2397         * testsuite/states/parent.c: (main):
2398           test for this case
2399           Fixes #123774
2400
2401 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2402
2403         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
2404         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
2405         (gst_queue_release_locks), (gst_queue_change_state),
2406         (gst_queue_set_property):
2407           add proper lock debugging.  Change dispose to finalize, since
2408           we're freeing mutexes and other stuff which should happen only once.
2409
2410 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2411
2412         * docs/gst/tmpl/gstelement.sgml:
2413         * docs/gst/tmpl/gstplugin.sgml:
2414         * docs/gst/tmpl/gsttypes.sgml:
2415         * docs/pwg/building-state.xml:
2416         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
2417         * gst/gstelement.c: (gst_element_change_state):
2418         * gst/gstthread.c: (gst_thread_change_state):
2419           catch wrong state changes in element base class.
2420
2421 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2422
2423         * gst/gstinfo.h:
2424           clean up layout a little.
2425
2426 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2427
2428         * configure.ac:
2429         * testsuite/Makefile.am:
2430         * testsuite/states/Makefile.am:
2431         * testsuite/states/parent.c: (main):
2432           re-enable states testsuite dir.  Add test for state changes and
2433           parent behaviour
2434
2435 2004-07-09  Wim Taymans  <wim@fluendo.com>
2436
2437         * gst/schedulers/gstoptimalscheduler.c:
2438         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
2439         (element_get_reachables_func), (element_get_reachables),
2440         (debug_element), (rechain_group), (group_migrate_connected),
2441         (gst_opt_scheduler_pad_unlink):
2442         Do not try to migrate decoupled elements to a new group since
2443         they are not added to groups.
2444
2445 2004-07-08  Benjamin Otte  <otte@gnome.org>
2446
2447         * gst/gstelement.c: (gst_element_error_func):
2448           make reentrant (= allow removing elements in error handler)
2449
2450 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2451
2452         * gst/gstpad.c: (gst_pad_event_default_dispatch),
2453         (gst_pad_send_event), (gst_pad_call_chain_function):
2454           events sent to elements below PAUSED cannot be handled, so
2455           don't try to
2456
2457 2004-07-08  Wim Taymans  <wim@fluendo.com>
2458
2459         * gst/schedulers/gstoptimalscheduler.c:
2460         (chain_recursively_migrate_group), (create_group),
2461         (schedule_group), (gst_opt_scheduler_pad_link),
2462         (group_elements_set_visited), (element_get_reachables_func),
2463         (element_get_reachables), (group_can_reach_group), (debug_element),
2464         (rechain_group), (group_migrate_connected),
2465         (gst_opt_scheduler_pad_unlink):
2466         * testsuite/schedulers/Makefile.am:
2467         Implemented group splitting and rechaining.
2468         Fixes 143777 and 143777-2 in the testsuite.
2469
2470 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2471
2472         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
2473           extra debugging
2474         * gst/gstevent.h:
2475         * gst/gstinfo.c: (gst_debug_log_default):
2476           print time nicely.  add thread pointer until someone figures out
2477           a completely portable way of getting at thread id's.
2478         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
2479         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
2480         (gst_pad_call_chain_function):
2481           extra debugging
2482         * gst/schedulers/gstoptimalscheduler.c:
2483         (get_group_schedule_function), (loop_group_schedule_function),
2484         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
2485         (pad_clear_queued), (gst_opt_scheduler_iterate):
2486           rename BUFPEN and friends to DATAPEN since that's what they are.
2487
2488 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2489
2490         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
2491         * gst/gstbuffer.h:
2492         * gst/gstpad.c:
2493           cleanups and debugging
2494
2495 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
2496
2497         * configure.ac:
2498         * gst/gstvalue.c: (gst_value_compare_enum),
2499         (gst_value_serialize_enum), (gst_value_deserialize_enum),
2500         (gst_value_can_compare), (gst_value_compare):
2501         * testsuite/Makefile.am:
2502         * testsuite/enumcaps/Makefile.am:
2503         * testsuite/enumcaps/enumcaps.c:
2504           Fix enum serialization, deserialization, comparison in caps, add
2505           a test to ensure that this continues working in the future.
2506
2507 2004-07-06  David Schleef  <ds@schleef.org>
2508
2509         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
2510         Fix memleak.
2511
2512 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
2513
2514         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
2515         * gst/gstplugin.h:
2516         * gst/registries/gstxmlregistry.c:
2517         (plugin_times_older_than_recurse), (plugin_times_older_than),
2518         (gst_xml_registry_parse_padtemplate):
2519           only rebuild registry when actual plugins have a newer time than
2520           the registry.  Fixes #145520
2521
2522 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
2523
2524         * docs/manual/manual.xml:
2525         * docs/manual/win32.xml:
2526           add chapter on win32 building.  fixes #142422
2527
2528 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
2529
2530         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
2531
2532         * gst/autoplug/gstspider.c: (gst_spider_init),
2533         (gst_spider_dispose):
2534           fix spider memleaks.  fixes #137863
2535
2536 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
2537
2538         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
2539
2540         * gst/schedulers/gstoptimalscheduler.c:
2541         (gst_opt_scheduler_pad_unlink):
2542           fix SIGBUS error, fixes #145338
2543
2544 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
2545
2546         * gst/gstobject.c: (gst_object_replace):
2547         * gst/gstscheduler.c: (gst_scheduler_get_clock):
2548         * gst/gstsystemclock.c: (gst_system_clock_obtain):
2549           clean up clock lifecycle.  Fixes #109831
2550
2551 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
2552
2553         * po/LINGUAS:
2554         * po/cs.po:
2555           added Czech translation (Miloslav Trmac)
2556
2557 2004-07-04  David Schleef  <ds@schleef.org>
2558
2559         * tools/Makefile.am:
2560         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
2561
2562 2004-07-04  David Schleef  <ds@schleef.org>
2563
2564         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
2565
2566 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
2567
2568         * gst/gstbin.c: (gst_bin_restore_thyself):
2569           chain to parent restore so the bins get restored correctly
2570           in the editor
2571
2572 2004-07-03  David Schleef  <ds@schleef.org>
2573
2574         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
2575         Actually do something in these functions, like before the big
2576         caps change.  (bug #145137)
2577
2578 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
2579
2580         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
2581         (gst_element_get_compatible_pad_filtered):
2582         * gst/gstthread.c: (gst_thread_main_loop):
2583           more debugging
2584
2585 2004-07-02  David Schleef  <ds@schleef.org>
2586
2587         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
2588         * gst/gstobject.h:
2589         * gst/gstparse.h:
2590         * gst/gsttrace.h:
2591         * gst/gstxml.h:
2592
2593 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2594
2595         * gst/gstpad.c: (gst_pad_check_schedulers),
2596         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
2597         (gst_pad_link_prepare):
2598           revert until testsuite is fixed
2599
2600 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2601
2602         * testsuite/Makefile.am:
2603         * testsuite/caps/filtercaps.c: (main):
2604         * testsuite/clock/clock1.c: (main):
2605         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
2606           fix some more tests
2607
2608 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2609
2610         * testsuite/cleanup/cleanup1.c: (create_pipeline):
2611         * testsuite/cleanup/cleanup2.c: (create_pipeline):
2612         * testsuite/cleanup/cleanup4.c: (main):
2613           fix testsuite
2614
2615 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2616
2617         * libs/gst/control/control.c:
2618         * libs/gst/control/dparam.c:
2619         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
2620         * libs/gst/control/dparammanager.c:
2621         * libs/gst/control/dparammanager.h:
2622         * testsuite/dynparams/Makefile.am:
2623         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
2624         (gst_dptest_change_state), (gst_dptest_chain), (main):
2625           fix testcase for dparams
2626           add debugging category
2627
2628 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
2629
2630         * testsuite/Rules:
2631           change path
2632
2633 2004-07-02  Benjamin Otte  <otte@gnome.org>
2634
2635         * tests/.cvsignore:
2636         * tests/Makefile.am:
2637         * tests/mass_elements.c: (gst_get_current_time), (main):
2638           add simple benchmark to test various speeds of fakesrc ! identity !
2639           identity ! ... ! fakesink.
2640           Usage: mass_elements [num_identities] [num_buffers]
2641           If not specified they default to 1000.
2642
2643 2004-07-02  Benjamin Otte  <otte@gnome.org>
2644
2645         * gst/gstpad.c: (gst_pad_check_schedulers),
2646         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
2647         (gst_pad_link_prepare):
2648           check that pads that get linked belong to the same manager. The old
2649           code allowed linking elements before putting them into bins, so it
2650           worked to link them and then put them in different threads, which
2651           lead to weird behaviour.
2652           Since this effectively disallows linking elements before putting
2653           them in a bin, some applications might not work after this and error
2654           out. If these applications are too critical, we might need to revert
2655           that patch. Please test this before the next release...
2656
2657 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2658
2659         * gst/gstpad.c: (gst_pad_get_caps):
2660           throw an error if the getcaps function does not return a subset of
2661           the template caps.
2662         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
2663           make disconts without position info an error in debugging
2664         * tests/spidey_bench.c: (handoff), (main):
2665           don't count first try when averaging
2666
2667 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
2668
2669         * gst/gstplugin.c: (gst_plugin_load_file):
2670           figure out problem with dynamic test
2671
2672 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
2673
2674         * docs/gst/Makefile.am:
2675           fix docs build
2676
2677 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
2678
2679         * po/POTFILES.in:
2680         * po/af.po:
2681         * po/az.po:
2682         * po/en_GB.po:
2683         * po/fr.po:
2684         * po/nl.po:
2685         * po/sr.po:
2686         * po/sv.po:
2687         * po/tr.po:
2688         * po/uk.po:
2689         * tools/gst-register.c: (plugin_added_func), (main):
2690           i18n-ize -register, fix plural
2691
2692 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
2693
2694         * gst/elements/gstidentity.c: (gst_identity_class_init),
2695         (gst_identity_init), (gst_identity_chain),
2696         (gst_identity_set_property), (gst_identity_get_property):
2697         * gst/elements/gstidentity.h:
2698           check for perfect stream
2699
2700 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
2701
2702         * gst/elements/gstidentity.c: (gst_identity_chain):
2703           print offset_end
2704
2705 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
2706
2707         * docs/gst/Makefile.am:
2708         * docs/gst/gstreamer-docs.sgml:
2709           doc fixes
2710
2711 2004-06-24  David Schleef  <ds@schleef.org>
2712
2713         * autogen.sh:  Remove call to env, since the buildbot isn't
2714         broken anymore.
2715
2716 2004-06-24  Wim Taymans  <wim@fluendo.com>
2717
2718         * gst/elements/Makefile.am:
2719         * gst/elements/gstelements.c:
2720         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
2721         (gst_multifdsink_class_init), (gst_multifdsink_init),
2722         (gst_multifdsink_add), (gst_multifdsink_remove),
2723         (gst_multifdsink_clear), (gst_multifdsink_chain),
2724         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
2725         * gst/elements/gstmultifdsink.h:
2726         Added an element that writes to multiple filedescriptors at once.
2727
2728 2004-06-24  Benjamin Otte  <otte@gnome.org>
2729
2730         * gst/parse/grammar.y:
2731           don't try to link elements before they have been added to bins
2732
2733 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2734
2735         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
2736         (gst_file_pad_get_length):
2737         * libs/gst/bytestream/filepad.h:
2738           add 2 new functions
2739
2740 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2741
2742         * docs/gst/gstreamer-sections.txt:
2743         remove from docs, the define that Benjamin removed from gstelement.h
2744
2745 2004-06-22  Benjamin Otte  <otte@gnome.org>
2746
2747         * gst/gstelement.h:
2748           remove define that referenced a nonexisting GstElement struct member
2749
2750 2004-06-20  Benjamin Otte  <otte@gnome.org>
2751
2752         * gst/gstdata.c: (gst_data_is_writable):
2753           whoops, return values were wrong, so writable data was marked as
2754           non-writable and vice versa. (fixes #143953, spotted by Francis
2755           Labonte)
2756           Shows how rarely we need to copy data ;)
2757
2758 2004-06-20  Benjamin Otte  <otte@gnome.org>
2759
2760         * testsuite/schedulers/.cvsignore:
2761         * testsuite/schedulers/Makefile.am:
2762         * testsuite/schedulers/143777-2.c: (main):
2763           add test for opt breakage in bug #143777
2764
2765 2004-06-20  Benjamin Otte  <otte@gnome.org>
2766
2767         * gst/gstpad.c: (gst_pad_call_chain_function):
2768           check for if we were unlinked while inside the chainfunction (fixes
2769           entrygthread having issues with #143777)
2770         * testsuite/schedulers/143777.c: (main):
2771         * testsuite/schedulers/Makefile.am:
2772           add a test for that fix
2773
2774 2004-06-20  Benjamin Otte  <otte@gnome.org>
2775
2776         * gst/gstvalue.c: (gst_value_set_int_range):
2777           test that start is smaller then end
2778         * libs/gst/bytestream/Makefile.am:
2779         * libs/gst/bytestream/filepad.c: 
2780         * libs/gst/bytestream/filepad.h:
2781           add GstFilePad - a pad that behaves like a FILE*
2782         * testsuite/bytestream/.cvsignore:
2783         * testsuite/bytestream/Makefile.am:
2784         * testsuite/bytestream/filepadsink.c: 
2785           test for the GstFilePad
2786
2787 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
2788
2789         * gst/elements/gstidentity.c: (gst_identity_class_init),
2790         (gst_identity_init), (gst_identity_set_clock),
2791         (gst_identity_chain), (gst_identity_set_property),
2792         (gst_identity_get_property):
2793         * gst/elements/gstidentity.h:
2794         * gst/gstclock.c: (gst_clock_id_wait):
2795           add a "sync" property to sync to the clock
2796
2797 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2798
2799         * gst/gstelementfactory.c: (gst_element_factory_create):
2800           make the freakin "elementfactory bla has no type" message more
2801           useful. So we actually can do something when someone shows up
2802           complaining about it.
2803
2804 2004-06-15  Johan Dahlin  <johan@gnome.org>
2805
2806         * tools/gst-inspect.c (main): Fallback to plugin if no element is
2807         found. This matches the old behavior better. Thanks to Thomas for
2808         pointing out.
2809
2810 2004-06-14  David Schleef  <ds@schleef.org>
2811
2812         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
2813         -fomit-frame-pointer.  Appears to generate correct code in
2814         other cases as well.
2815
2816 2004-06-14  Johan Dahlin  <johan@gnome.org>
2817
2818         * tools/gst-inspect.c (main): Add two new command line options: -a
2819         to print all elements and -n to print the name on each line. Also
2820         fix some error reporting.
2821         (main): Simplify, remove -n and always print names if -a is specified
2822
2823 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
2824
2825         * win32/gstconfig.h:
2826         * win32/GSTreamer.vcproj:
2827         * win32/Makefile:
2828         * gst/gstconfig.h.in:
2829         * gst/gst.h:
2830         * gst/gstbin.h:
2831         * gst/gstelement.h:
2832         * gst/gstevent.h:
2833         * gst/gstobject.h:
2834         * gst/gstpad.h:
2835         * docs/gst/gstreamer-sections.txt:
2836         * docs/gst/tmpl/gstconfig.sgml:
2837           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
2838
2839 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
2840         * docs/gst/gstreamer-sections.txt:
2841         * docs/gst/tmpl/gstconfig.sgml:
2842         Add the GSTREAMER_EXPORT macro to the docs
2843
2844 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
2845
2846         * tools/gst-compprep.c: (handle_xmlerror), (main):
2847         Add a check for the version that introduced SetStructuredError to fix
2848         the build on FC1
2849
2850 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
2851
2852         * win32/msvc71.sln:
2853         * win32/testsuite/:
2854           prepare to compile the testsuite with MSVC
2855
2856 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
2857
2858         * docs/manual/win32.xml:
2859           attempt to transform the Win32 README into an XML doc
2860
2861 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
2862
2863         * gst/gst.c:
2864         * gst/gstbin.*:
2865         * gst/config.h.in:
2866         * gst/gstelement.*:
2867         * gst/gstevent.h:
2868         * gst/gstobject.*:
2869         * gst/gstpad.h:
2870         * tools/gst-register.c:
2871         * win32/gstreamer.def:
2872           extern symbols are now exported for the Windows DLL
2873
2874 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
2875
2876         * gst/gstinfo.h:
2877           fix a problem to enable/disable DEBUG under MSVC
2878
2879 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
2880
2881         * win32/:
2882           enable more debug code in DEBUG build
2883
2884 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
2885
2886         * win32/config.h:
2887         * gst/gst-i18n-app.h:
2888           enable NLS under Windows
2889
2890 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
2891         * tools/gst-compprep.c: (handle_xmlerror), (main):
2892           Make an error that baffled me a bit clearer
2893
2894 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2895
2896         * gst/gstqueue.c:
2897           don't use g_queue_get_length () because it's 2.4, use ->length
2898
2899 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
2900
2901         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
2902
2903         * tools/gst-inspect.c: (print_signal_info):
2904           don't free random data twice. (fixes #144185)
2905
2906 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2907
2908         * gst/gstqueue.c:
2909         * gst/gstqueue.h:
2910           fix removing from the wrong queue on event timeout
2911           fix disposing of the event queue by casting correctly
2912           add mutexes for handling the event queue
2913           someone was sleeping when fixing queue last time around :)
2914
2915 2004-06-10  Johan Dahlin  <johan@gnome.org>
2916
2917         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
2918         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
2919
2920 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2921
2922         * docs/random/gdp:
2923         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
2924         * libs/gst/dataprotocol/dataprotocol.c:
2925         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
2926         (gst_dp_buffer_from_header):
2927         * libs/gst/dataprotocol/dataprotocol.h:
2928         * libs/gst/dataprotocol/dp-private.h:
2929           rev version to 0.1, add buffer flags and copy them
2930
2931 2004-06-09  Johan Dahlin  <johan@gnome.org>
2932
2933         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
2934         the flags from the buffer we're copying.
2935
2936 2004-06-09  Wim Taymans  <wim@fluendo.com>
2937
2938         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
2939         * gst/elements/gstidentity.c: (gst_identity_init),
2940         (gst_identity_chain):
2941         Print more buffer info in fakesink.
2942         Make identity output similar to fakesink.
2943
2944 2004-06-07  Daniel Gazard  <dany42@free.fr>
2945
2946         reviewed by Benjamin Otte  <otte@gnome.org>
2947
2948         * configure.ac:
2949           fix cross compiling not working. (fixes #143741)
2950
2951 2004-06-07  Benjamin Otte  <otte@gnome.org>
2952
2953         * gst/gstelement.c: (gst_element_set_time_delay):
2954           add failure check
2955         * gst/gstinfo.h:
2956           put brackets around macro arguments of GST_TIME_ARGS, add note to
2957           move it to correct header in 0.9
2958
2959 2004-06-07  Benjamin Otte  <otte@gnome.org>
2960
2961         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
2962         (gst_file_index_load), (_file_index_id_save_entries),
2963         (gst_file_index_commit), (gst_file_index_add_association),
2964         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
2965         (gst_file_index_plugin_init):
2966           make debugging use a default category
2967
2968 2004-06-06  David Moore  <dcm@acm.org>
2969
2970         reviewed by Benjamin Otte  <otte@gnome.org>
2971
2972         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
2973         (gst_fdsrc_change_state):
2974           reset offset counter when going READY => PAUSED. (fixes #142903)
2975
2976 2004-06-06  ed@catmur.co.uk
2977
2978         reviewed by Benjamin Otte  <otte@gnome.org>
2979
2980         * gst/registries/gstxmlregistry.c:
2981         (gst_xml_registry_rebuild_recurse):
2982           don't rely on g_dir_open to figure out if a file is a directory, use
2983           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
2984           directories. (fixes #142850)
2985
2986 2004-06-06  Benjamin Otte  <otte@gnome.org>
2987
2988         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
2989           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
2990         * libs/gst/bytestream/adapter.c:
2991         * libs/gst/bytestream/adapter.h:
2992           fix copyright in header and typo in debugging category name
2993
2994 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2995
2996         * configure.ac:
2997           bump nano to cvs
2998
2999 === release 0.8.3 ===
3000
3001 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3002
3003         * configure.ac:
3004           update libtool versioning
3005           do a new release
3006         * docs/gst/tmpl/gstelement.sgml:
3007         * docs/gst/tmpl/gsttypes.sgml:
3008         * gst/gstinfo.c: (_gst_debug_init):
3009           put back GST_CAT_DATAFLOW to fix API breakage
3010
3011 2004-06-04  David Schleef  <ds@schleef.org>
3012
3013         * autogen.sh: Add a temporary 'env' to test buildbot problems.
3014
3015 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3016
3017         * configure.ac:
3018           bump nano to cvs
3019
3020 === release 0.8.2 ===
3021
3022 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3023
3024         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
3025           check GST_DEBUG environment variable which is parsed the same way
3026           as --gst-debug=
3027
3028 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
3029
3030         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
3031                             gstmd5sink.c gstshaper.c gsttee.c
3032                             gsttypefindelement.c
3033         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
3034
3035           - removing trailing commas at end of enums
3036             it is correct C99 code but C90 compilers would complain
3037             (AIX, Forte, ...)
3038             ('should' fix #143290, at least partially)
3039
3040 2004-05-27  Wim Taymans  <wim@fluendo.com>
3041
3042         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
3043         (chain_group_set_enabled), (create_group), (add_to_group),
3044         (merge_groups), (setup_group_scheduler), (group_elements),
3045         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
3046         Don't try to follow the pad connections with other groups
3047         when a loop based element is added to the scheduler because
3048         the bin will inform the scheduler about the pad links a little
3049         later.
3050
3051 2004-05-27  Wim Taymans  <wim@fluendo.com>
3052
3053         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
3054         (remove_from_chain), (chain_group_set_enabled),
3055         (setup_group_scheduler), (group_element_set_enabled),
3056         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
3057         (gst_opt_scheduler_show):
3058         Elements without a group can do a state change as well, just wait
3059         with the setup of the scheduling function when it is added to a
3060         chain.
3061
3062 2004-05-27  Wim Taymans  <wim@fluendo.com>
3063
3064         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
3065         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
3066         (merge_groups), (setup_group_scheduler),
3067         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
3068         (gst_opt_scheduler_show):
3069         Fixes to maintain internal consistency of the scheduler data
3070         structures. 
3071          - adding an enabled group to a chain should increment the
3072            number of enabled elements in that chain.
3073          - removing an enabled group from a chain could disable the
3074            chain.
3075          - removing a disabled group from a chain could enable the
3076            chain.
3077          - add g_assert when internal inconsistency is detected.
3078          - adding an element to a group could increase the number of
3079            links this group has with other groups.
3080          - merging two groups also merges the chains.
3081          - also show group links in the _show method.
3082            
3083
3084 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3085
3086         * gst/gstcaps.c: (gst_caps_structure_simplify):
3087           don't print error messages when there is no error
3088         * gst/gstvalue.c: (gst_value_compare_int_range):
3089           compare the second value, too
3090         * testsuite/caps/Makefile.am:
3091         * testsuite/caps/random.c: (assert_on_error), (main):
3092           add tests to make sure the two things above are checked for
3093
3094 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3095
3096         * configure.ac:
3097         * libs/gst/dataprotocol/Makefile.am:
3098         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
3099         * libs/gst/dataprotocol/dataprotocol.h:
3100           wrap header in GST_ENABLE_NEW.  make code use it
3101
3102 2004-05-23  Johan Dahlin  <johan@gnome.org>
3103
3104         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
3105         so verbose and print GstElement signal names all the time.
3106
3107 2004-05-22  David Schleef  <ds@schleef.org>
3108
3109         * gst/registries/gstxmlregistry.c:
3110         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
3111         (bug #142957)
3112
3113 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3114
3115         * configure.ac:
3116           scrub cflags for glib2 so gcc doesn't complain when glib is in
3117           /usr/local
3118
3119 2004-05-21  Johan Dahlin  <johan@gnome.org>
3120
3121         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
3122         __GNUC__, patch from Brian Cameron, fixes bug #142804
3123
3124 2004-05-20  David Schleef  <ds@schleef.org>
3125
3126         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
3127         comparison code.  (bug #142819)
3128
3129 2004-05-20  Wim Taymans  <wim@fluendo.com>
3130
3131         * gst/gstbuffer.c: (gst_buffer_default_copy):
3132         * gst/gstbuffer.h:
3133         Added Comment to a flag.
3134         copy relevant flags in _buffer_copy.
3135
3136 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
3137
3138         reviewed by: Wim Taymans <wim at fluendo dot com>
3139
3140         * gst/gstbuffer.h:
3141           add GST_BUFFER_IN_CAPS buffer flag
3142         * gst/gststructure.c: (gst_structure_value_get_generic_type),
3143         (gst_structure_parse_any_list), (gst_structure_parse_list),
3144         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
3145         * gst/gstvalue.c: (gst_value_serialize_any_list),
3146         (gst_value_transform_any_list_string),
3147         (gst_value_list_prepend_value), (gst_value_list_append_value),
3148         (gst_value_list_get_size), (gst_value_list_get_value),
3149         (gst_value_transform_list_string),
3150         (gst_value_transform_fixed_list_string),
3151         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
3152         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
3153         (_gst_value_initialize):
3154         * gst/gstvalue.h:
3155           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
3156           < , > as a format.
3157         * testsuite/caps/string-conversions.c: (main):
3158           add regression tests for < >
3159
3160 2004-05-20  Johan Dahlin  <johan@gnome.org>
3161
3162         * docs/gst/Makefile.am (all-local): Re-add
3163
3164 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3165
3166         * docs/gst/Makefile.am:
3167         * docs/gst/gstreamer-docs.sgml:
3168         * docs/libs/Makefile.am:
3169         * docs/libs/gstreamer-libs-docs.sgml:
3170           fix distcheck issues
3171
3172 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3173
3174         * libs/gst/dataprotocol/Makefile.am:
3175           add to autotest
3176
3177 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3178
3179         * libs/gst/dataprotocol/Makefile.am:
3180         * libs/gst/dataprotocol/dataprotocol.c:
3181         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
3182         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
3183         * libs/gst/dataprotocol/dp-private.h:
3184           use GST macros to read/write fixed length ints
3185           add some more asserts
3186
3187 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3188
3189         * docs/libs/gstreamer-libs-docs.sgml:
3190         * docs/libs/gstreamer-libs-sections.txt:
3191           remove idct and putbits
3192         * configure.ac:
3193         * docs/libs/tmpl/gstdataprotocol.sgml:
3194         * libs/gst/Makefile.am:
3195         * libs/gst/dataprotocol/Makefile.am:
3196         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
3197         (buffer_test), (caps_test), (event_test), (main):
3198         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
3199         (gst_dp_dump_byte_array), (gst_dp_init),
3200         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
3201         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
3202         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
3203         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
3204         (gst_dp_validate_header), (gst_dp_validate_payload),
3205         (gst_dp_validate_packet), (plugin_init):
3206         * libs/gst/dataprotocol/dataprotocol.h:
3207         * libs/gst/dataprotocol/dp-private.h:
3208           add dataprotocol
3209
3210 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3211
3212         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
3213           fix int variable deserialization and add a helper so we can actually
3214           debug this.
3215
3216 2004-05-18  David Schleef  <ds@schleef.org>
3217
3218         * testsuite/debug/commandline.c: (main): Call ./commandline, not
3219           argv[0].  Calling yourself is probably not the best way to
3220           construct a test like this, btw.
3221
3222 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3223
3224         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
3225           don't claim to be more intelligent than a scheduler when the
3226           scheduler claims the pipeline is stopped
3227         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
3228         (safe_cothread_destroy),
3229         (gst_entry_scheduler_remove_all_cothreads),
3230         (gst_entry_scheduler_reset), (_remove_cothread),
3231         (gst_entry_scheduler_state_transition):
3232           hold off cothread destruction if we're not in main cothread
3233         * configure.ac:
3234         * testsuite/Makefile.am:
3235           add new test dir
3236         * testsuite/schedulers/.cvsignore:
3237         * testsuite/schedulers/Makefile.am:
3238           add tests
3239         * testsuite/schedulers/relink.c: (cb_handoff), (main):
3240           check relinking and adding/removing elements from a running pipeline
3241         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
3242           check unlinking in a running pipeline
3243         * testsuite/schedulers/unref.c: (cb_handoff), (main):
3244           check unreffing a running pipeline
3245         * testsuite/schedulers/useless_iteration.c: (main):
3246           check iterating a pipeline that contains running threads works
3247
3248 2004-05-18  David Schleef  <ds@schleef.org>
3249
3250         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
3251           is false.
3252
3253 2004-05-18  Wim Taymans  <wim@fluendo.com>
3254
3255         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
3256         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
3257         Fixed an error introduced with patch for 1.63. When setting
3258         a get based element as the entry point in a group, make sure
3259         to mark the group as GET based.
3260
3261 2004-05-18  Wim Taymans  <wim@fluendo.com>
3262
3263         * gst/schedulers/gstoptimalscheduler.c: (create_group),
3264         (setup_group_scheduler), (loop_group_schedule_function),
3265         (gst_opt_scheduler_pad_link):
3266         Added some more debug info and fixed a bug where the group
3267         type was set to LOOP but it was in fact unknown.
3268
3269 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3270
3271         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
3272           make resetting scheduler work twice in a row
3273
3274 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3275
3276         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
3277         (CREATE_USERIALIZATION), (_gst_value_initialize),
3278         (gst_value_compare_float), (gst_value_serialize_float),
3279         (gst_value_deserialize_float), (gst_value_compare_enum),
3280         (gst_value_serialize_enum), (gst_value_deserialize_enum):
3281           add serialization and comparison functions for long, int64, enum and
3282           float values
3283         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
3284           use best serialization function in type hierarchy instead of only a
3285           matching one. This is required for enums to work.
3286         * gst/parse/grammar.y:
3287           use gst_caps_deserialize
3288         * testsuite/parse/Makefile.am:
3289           parse1 now works
3290         * testsuite/parse/parse1.c: (main):
3291           remove aggregator check, aggregator is broken, this test works now
3292           but fails because of bug #138012
3293         * testsuite/parse/parse2.c: (main):
3294           s/xvideosink/xvimagesink - this test looks a lot like we should
3295           disable it
3296
3297 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3298
3299         * gst/gstelement.c: (gst_element_class_init):
3300           whoops, store the signal id correctly
3301         * gst/schedulers/gstbasicscheduler.c:
3302         (gst_basic_scheduler_chain_wrapper):
3303           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
3304           chain function isn't linked
3305
3306 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
3307         * configure.ac:
3308         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
3309         support until we decide where the flags should be used
3310         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
3311         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
3312         * gst/gstpad.c: (gst_pad_link_call_link_functions):
3313         Output refused caps in the debug info
3314
3315 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3316
3317         * gst/elements/gstidentity.c: (gst_identity_chain):
3318           add duration debug
3319         * gst/gstinfo.c: (gst_debug_log_default):
3320           add timestamp
3321
3322 2004-05-13  Benjamin Otte  <otte@gnome.org>
3323
3324         * gst/gstpipeline.c: (gst_pipeline_dispose),
3325         (gst_pipeline_change_state):
3326           call gst_scheduler_reset on dispose (fixes #141416)
3327
3328 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3329
3330         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
3331           compute mapsize correctly
3332         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
3333           use correct datatypes when calling a varargs function
3334         * gst/elements/gsttypefindelement.c: (stop_typefinding):
3335           push a DISCONT event as first thing
3336         * gst/gst_private.h:
3337         * gst/gstinfo.c: (_gst_debug_init):
3338           remove GST_DATAFLOW debugging category
3339         * gst/gstbin.c: (gst_bin_iterate):
3340           use GST_SCHEDULING category
3341         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
3342         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
3343         (gst_pad_call_get_function):
3344           add GST_DATAFLOW to easily track flow of buffers or events.
3345         * gst/gstqueue.c: (gst_queue_get_type),
3346         (gst_queue_handle_pending_events), (gst_queue_chain),
3347         (gst_queue_get), (gst_queue_handle_src_event):
3348           use own static debugging category GST_DATAFLOW for dataflow,
3349           use DEBUG category for showing which path events go, use LOG
3350           category for buffers.
3351
3352 2004-05-10  David Schleef  <ds@schleef.org>
3353
3354         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
3355
3356 2004-05-10  David Schleef  <ds@schleef.org>
3357
3358         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
3359         symbols, because otherwise we don't know what they are.  Thanks,
3360         the GStreamer team.
3361         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
3362
3363 2004-05-10  David Schleef  <ds@schleef.org>
3364
3365         (from Steve Lhomme)
3366         * win32/Makefile: When using make clean the MS Visual Studio makefiles
3367         are deleted.  Fix.
3368         * win32/Makefile.inspect:
3369         * win32/Makefile.launch:
3370         * win32/Makefile.register:
3371
3372 2004-05-10  David Schleef  <ds@schleef.org>
3373
3374         * gst/gstinfo.h: Add missing inline function.
3375         * gst/gsttrace.c: add include
3376         * gst/parse/grammar.y: remove unused code
3377         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
3378         more portable.
3379         * tools/gst-register.c: wrap unistd.h
3380         
3381         More additions/fixes from Steve for the MSVC build.
3382         * win32/GStreamer.vcproj:
3383         * win32/Makefile:
3384         * win32/Makefile.inspect:
3385         * win32/Makefile.launch:
3386         * win32/Makefile.register:
3387         * win32/README.txt:
3388         * win32/gst-inspect.vcproj:
3389         * win32/gst-launch.vcproj:
3390         * win32/gst-register.vcproj:
3391         * win32/gstbytestream.def:
3392         * win32/gstbytestream.vcproj:
3393         * win32/gstconfig.h:
3394         * win32/gstelements.def:
3395         * win32/gstelements.vcproj:
3396         * win32/gstenumtypes.c:
3397         * win32/gstenumtypes.h:
3398         * win32/gstoptimalscheduler.def:
3399         * win32/gstoptimalscheduler.vcproj:
3400         * win32/gstreamer.def:
3401         * win32/gstspider.def:
3402         * win32/gstspider.vcproj:
3403         * win32/gstversion.h:
3404         * win32/msvc71.sln:
3405
3406 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3407
3408         * gst/gstelement.c: (gst_element_class_init),
3409         (gst_element_no_more_pads):
3410         * gst/gstelement.h:
3411           add gst_element_no_more_pads and the "no-more-pads" signal
3412
3413 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3414
3415         * gst/gstregistry.c: (gst_registry_add_plugin):
3416           refuse to add plugins when a plugin with same name is already
3417           registered. Fixes a bunch of "How to remove plugins?" issues.
3418           May lead to other problems though, let's test
3419
3420 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
3421
3422         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
3423         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
3424         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
3425
3426 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
3427
3428         * tests/Makefile.am: fix am16 issue
3429
3430 2004-05-09  Benjamin Otte  <otte@gnome.org>
3431
3432         * libs/gst/bytestream/Makefile.am:
3433           we should indeed add .c files to makefiles or they won't be built
3434           (d'oh)
3435
3436 2004-05-08  Benjamin Otte  <otte@gnome.org>
3437
3438         * gst/gstpad.c: (gst_pad_proxy_fixate):
3439           really reduce the set of caps
3440
3441 2004-05-08  Benjamin Otte  <otte@gnome.org>
3442
3443         * tests/Makefile.am:
3444         * tests/spidey_bench.c: (handoff), (main):
3445           add benchmark to test how long spider needs to create a pipeline
3446
3447 2004-05-08  Benjamin Otte  <otte@gnome.org>
3448
3449         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
3450           mark links as unengaged when unnegotiating instead of deactivating.
3451           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
3452
3453 2004-05-08  Benjamin Otte  <otte@gnome.org>
3454
3455         * docs/manual/helloworld.xml:
3456           s/audiosink/osssink (patch by Patrick Guimond)
3457
3458 2004-05-07  David Schleef  <ds@schleef.org>
3459
3460         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
3461         since it contains important stuff.
3462
3463 2004-05-07  David Schleef  <ds@schleef.org>
3464
3465         * testsuite/caps/caps.c: (test3), (main): A check for appending
3466         ANY caps.
3467
3468 2004-05-07  David Schleef  <ds@schleef.org>
3469
3470         * common/m4/as-compiler-flag.m4: Properly quote arguments,
3471         which may contain commas.  Fixes detection of -Wa,-mregnames
3472
3473 2004-05-06  David Schleef  <ds@schleef.org>
3474
3475         Changes to handle compilers that don't have variadic macro
3476         support.  In particular, glib headers define some inlines
3477         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
3478         builds.
3479         * gst/Makefile.am:
3480         * gst/cothreads.c:
3481         * gst/elements/gstfdsink.c:
3482         * gst/elements/gstfdsrc.c:
3483         * gst/elements/gstfilesink.c:
3484         * gst/elements/gstfilesrc.c:
3485         * gst/gst_private.h:
3486         * gst/gstatomic.c:
3487         * gst/gstcaps.c: (gst_caps_append):
3488         * gst/gstcpu.c: (gst_cpuid_i386):
3489         * gst/gstelement.c:
3490         * gst/gsterror.c:
3491         * gst/gstfilter.c:
3492         * gst/gstinfo.h:
3493         * gst/gstprobe.c:
3494         * gst/gstquery.c:
3495         * gst/gstregistry.c:
3496         * gst/gststructure.c:
3497         * gst/gsttaginterface.c:
3498         * gst/gsttrace.c: (gst_trace_new):
3499         * gst/gsttrashstack.c:
3500         * gst/gsturi.c:
3501         * gst/gstvalue.c:
3502         * gst/parse/grammar.y:
3503         * gst/parse/parse.l:
3504         * tools/gst-inspect.c: (main):
3505         * tools/gst-launch.c: (main):
3506         * tools/gst-xmlinspect.c: (PUT_STRING):
3507
3508 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3509
3510         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
3511         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
3512         * gst/elements/gstfilesrc.h:
3513           send NEW_MEDIA events correctly
3514         * gst/elements/gsttypefindelement.c: (start_typefinding),
3515         (gst_type_find_element_handle_event):
3516           restart typefinding when we get a NEW_MEDIA event
3517         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
3518         (gst_bin_dispose):
3519           don't die when someone removes elements in callbacks
3520         * gst/gstelement.c: (gst_element_change_state):
3521           improve debugging
3522         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
3523           we need a NEW_MEDIA event to engage a link
3524         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
3525           don't g_print debugging stuff
3526         * testsuite/caps/simplify.c: (check_caps):
3527
3528 2004-05-04  Benjamin Otte  <otte@gnome.org>
3529
3530         * gst/parse/grammar.y:
3531           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
3532
3533 2004-05-04  Benjamin Otte  <otte@gnome.org>
3534
3535         * testsuite/caps/renegotiate.c: (main):
3536           improve output in error case
3537
3538 2004-05-04  Benjamin Otte  <otte@gnome.org>
3539
3540         * gst/parse/grammar.y:
3541           fix assert to not trigger when there's no error argument
3542         * gst/parse/parse.l:
3543           fix definition of caps to allow more than two structures
3544         * testsuite/caps/Makefile.am:
3545         * testsuite/caps/renegotiate.c: (main):
3546           it's sinesrc and works in that case
3547
3548 2004-05-04  Wim Taymans  <wim@fluendo.com>
3549
3550         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
3551         (group_dec_link), (gst_opt_scheduler_pad_unlink):
3552         when removing an element from a group, we always need to
3553         decrement the link count that this group had with other 
3554         groups through the element.
3555         added an extra assert to catch inconsistencies when decrementing
3556         the link count.
3557
3558 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
3559
3560         * configure.ac:
3561         * docs/gst/Makefile.am:
3562         * docs/gst/gstreamer-sections.txt:
3563         * docs/gst/tmpl/gstcompat.sgml:
3564         * examples/appreader/Makefile.am:
3565         * examples/cutter/Makefile.am:
3566         * examples/events/Makefile.am:
3567         * examples/helloworld/Makefile.am:
3568         * examples/helloworld2/Makefile.am:
3569         * examples/launch/Makefile.am:
3570         * examples/manual/Makefile.am:
3571         * examples/mixer/Makefile.am:
3572         * examples/pingpong/Makefile.am:
3573         * examples/plugins/Makefile.am:
3574         * examples/queue/Makefile.am:
3575         * examples/queue2/Makefile.am:
3576         * examples/queue3/Makefile.am:
3577         * examples/queue4/Makefile.am:
3578         * examples/retag/Makefile.am:
3579         * examples/thread/Makefile.am:
3580         * examples/typefind/Makefile.am:
3581         * examples/xml/Makefile.am:
3582         * gst/Makefile.am:
3583         * gst/autoplug/Makefile.am:
3584         * gst/elements/Makefile.am:
3585         * gst/gstcompat.h:
3586         * gst/indexers/Makefile.am:
3587         * gst/parse/Makefile.am:
3588         * gst/registries/Makefile.am:
3589         * gst/schedulers/Makefile.am:
3590         * libs/gst/bytestream/Makefile.am:
3591         * libs/gst/control/Makefile.am:
3592         * libs/gst/getbits/Makefile.am:
3593         * po/af.po:
3594         * po/az.po:
3595         * po/en_GB.po:
3596         * po/fr.po:
3597         * po/nl.po:
3598         * po/sr.po:
3599         * po/sv.po:
3600         * po/tr.po:
3601         * po/uk.po:
3602         * tests/Makefile.am:
3603         * tests/bufspeed/Makefile.am:
3604         * tests/instantiate/Makefile.am:
3605         * tests/memchunk/Makefile.am:
3606         * tests/muxing/Makefile.am:
3607         * tests/negotiation/Makefile.am:
3608         * tests/probes/Makefile.am:
3609         * tests/sched/Makefile.am:
3610         * tests/seeking/Makefile.am:
3611         * tests/threadstate/Makefile.am:
3612         * testsuite/caps/Makefile.am:
3613         * testsuite/cleanup/Makefile.am:
3614         * testsuite/dlopen/Makefile.am:
3615         * testsuite/dynparams/Makefile.am:
3616         * testsuite/plugin/Makefile.am:
3617         * testsuite/states/Makefile.am:
3618         * tools/Makefile.am:
3619           reorganize compile/link flags to be consistent
3620           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
3621
3622 2004-05-04  David Schleef  <ds@schleef.org>
3623
3624         The "once more, with feeling" check-in.
3625         * testsuite/caps/Makefile.am: dist caps_strings
3626         * testsuite/caps/renegotiate.c: (main): This test triggers a
3627           segfault in the core.  Marking as failing.
3628
3629 2004-05-03  David Schleef  <ds@schleef.org>
3630
3631         * testsuite/caps/deserialize.c: (main): Fix problems noticed
3632           by the build bots.
3633         * testsuite/caps/renegotiate.c: (main): Same.
3634
3635 2004-05-03  David Schleef  <ds@schleef.org>
3636
3637         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
3638
3639 2004-05-03  David Schleef  <ds@schleef.org>
3640
3641         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
3642           variable to find our source file.
3643
3644 2004-05-03  David Schleef  <ds@schleef.org>
3645
3646         * configure.ac:  Link plugins with libgstreamer and dependent
3647           libraries
3648         * testsuite/caps/Makefile.am:
3649         * testsuite/caps/caps_strings:
3650         * testsuite/caps/deserialize.c: (main): Add a little test to slog
3651           through a file of caps strings and test each one
3652
3653 2004-05-04  Benjamin Otte  <otte@gnome.org>
3654
3655         * libs/gst/bytestream/Makefile.am:
3656         * libs/gst/bytestream/adapter.c: 
3657         * libs/gst/bytestream/adapter.h:
3658           add GstAdapter, similar to bytestream, but doesn't require ugly event
3659           handling or uglier loopbased elements
3660
3661 2004-05-03  David Schleef  <ds@schleef.org>
3662
3663         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
3664         * testsuite/caps/erathostenes.c:
3665         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
3666
3667 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3668
3669         * docs/pwg/pwg.xml:
3670           remove hardcoded stylesheet path (duh)
3671         * docs/random/release:
3672         * docs/gst/gstreamer-sections.txt:
3673         * gst/Makefile.am:
3674         * gst/gst.h:
3675         * gst/gst_private.h:
3676         * gst/gstcaps.c:
3677         * gst/gstevent.c:
3678         * gst/gstformat.c:
3679         * gst/gstinfo.c:
3680         * gst/gstinfo.h:
3681         * gst/gstinterface.c:
3682         * gst/gstmemchunk.c:
3683         * gst/gstprobe.c:
3684         * gst/gstquery.c:
3685         * gst/gstregistry.c:
3686         * gst/gstregistrypool.c:
3687         * gst/gststructure.c:
3688         * gst/gsttaginterface.c:
3689         * gst/gstthread.c:
3690         * gst/gsttrace.c:
3691         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
3692         * gst/gsturi.c:
3693         * gst/gstvalue.c:
3694           deprecate gst_info; remove gstlog.h
3695    
3696
3697 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3698
3699         * Makefile.am:
3700         * po/en_GB.po:
3701         * po/sv.po:
3702         * po/uk.po:
3703           updated translations
3704
3705 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3706
3707         * gst/gstbin.c: (gst_bin_dispose):
3708           better debugging
3709
3710 2004-05-03  Johan Dahlin  <johan@gnome.org>
3711
3712         * gst/schedulers/gstoptimalscheduler.c
3713         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
3714         really is a GstElement. Avoids critical when running gst-launch -v
3715         and a oggdemux/decoding pipeline.
3716
3717 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
3718
3719         * docs/gst/tmpl/gstpipeline.sgml :
3720         * docs/manual/elements-api.xml :
3721                 doc fix by Patrick Guimond (Protector) from devel ML
3722                 reviewed by ronald
3723
3724 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
3725
3726         * docs/gst/Makefile.am :
3727         * docs/libs/Makefile.am :
3728                 apply a patch from Arwed v. Merkatz so that gtk-doc
3729                 generated docs install (same for .devhelp file)
3730                 (fixes part 1 of #138836)
3731
3732 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
3733
3734         * docs/faq/dependencies.xml: typo
3735         * docs/faq/getting.xml :
3736             - fix download URL for new gstreamer site
3737             - hide sf.net download page as latest version aren't there
3738             - fix apt URLs
3739             - fill "get via CVS" paragraph (link to dev page on the site)
3740         * docs/faq/general.xml:
3741             hide status tables as they no more exists
3742             change case on plugins license file to reflect reality
3743         * docs/faq/troubleshooting.xml:
3744             remove the wiki question/answer as there is no more wiki
3745
3746 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
3747
3748         * gst/gsterror.h:
3749           include the headers needed for declarations used in this header
3750
3751 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
3752
3753         * docs/random/uraeus/gstreamer_and_midi.txt :
3754           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
3755           (fixes #132288)
3756
3757 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
3758
3759         reviewed by Benjamin Otte  <otte@gnome.org>
3760
3761         * gst/schedulers/gthread-cothreads.h:
3762           free allocated data for main cothread, too when destroying context
3763           (fixes #141417)
3764
3765 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
3766
3767         * docs/manual/goals.xml : remove duplicated paragraph at end 
3768         of doc page (fixes #141448)
3769
3770 2004-04-29  David Schleef  <ds@schleef.org>
3771
3772         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3773         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
3774
3775 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
3776
3777         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3778           fix property
3779         * gst/gstcaps.c:
3780           fix doc string
3781         * po/POTFILES.in:
3782           rename typefind source file
3783
3784 2004-04-28  David Schleef  <ds@schleef.org>
3785
3786         Several new files from Steve Lhomme's MSVC patch (bug #141317):
3787         * win32/GStreamer.vcproj:
3788         * win32/Makefile:
3789         * win32/config.h:
3790         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
3791         (_trewinddir), (_ttelldir), (_tseekdir):
3792         * win32/dirent.h:
3793         * win32/gst-inspect.vcproj:
3794         * win32/gst-launch.vcproj:
3795         * win32/gst-register.vcproj:
3796         * win32/gstbytestream.vcproj:
3797         * win32/gstelements.vcproj:
3798         * win32/gstoptimalscheduler.vcproj:
3799         * win32/gstspider.vcproj:
3800         * win32/gtchar.h:
3801         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
3802         * win32/mman.h:
3803         * win32/mman.inl:
3804         * win32/msvc71.sln:
3805
3806 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3807
3808         * gst/gst.c: (init_post):
3809         * gst/gstinfo.c:
3810           remove useless _gst_progname stuff
3811         * tools/gst-inspect.c: (print_field), (print_caps):
3812           improve caps output
3813
3814 2004-04-28  David Schleef  <ds@schleef.org>
3815
3816         Disable parsing of a lot of files that aren't part of the
3817         exported API.  Move corresponding template files to old/,
3818         waiting for removal when they don't contain anything
3819         interesting.
3820         * docs/gst/Makefile.am:
3821         * docs/gst/gstreamer-sections.txt:
3822         * docs/gst/tmpl/cothreads.sgml:
3823         * docs/gst/tmpl/cothreads_compat.sgml:
3824         * docs/gst/tmpl/gettext.sgml:
3825         * docs/gst/tmpl/gobject2gtk.sgml:
3826         * docs/gst/tmpl/grammar.tab.sgml:
3827         * docs/gst/tmpl/gst-i18n-app.sgml:
3828         * docs/gst/tmpl/gst-i18n-lib.sgml:
3829         * docs/gst/tmpl/gst_private.sgml:
3830         * docs/gst/tmpl/gstaggregator.sgml:
3831         * docs/gst/tmpl/gstarch.sgml:
3832         * docs/gst/tmpl/gstatomic_impl.sgml:
3833         * docs/gst/tmpl/gstbufferstore.sgml:
3834         * docs/gst/tmpl/gstdata_private.sgml:
3835         * docs/gst/tmpl/gstdisksink.sgml:
3836         * docs/gst/tmpl/gstdisksrc.sgml:
3837         * docs/gst/tmpl/gstelementfactory.sgml:
3838         * docs/gst/tmpl/gstextratypes.sgml:
3839         * docs/gst/tmpl/gstfakesink.sgml:
3840         * docs/gst/tmpl/gstfakesrc.sgml:
3841         * docs/gst/tmpl/gstfdsink.sgml:
3842         * docs/gst/tmpl/gstfdsrc.sgml:
3843         * docs/gst/tmpl/gstfilesink.sgml:
3844         * docs/gst/tmpl/gstfilesrc.sgml:
3845         * docs/gst/tmpl/gsthttpsrc.sgml:
3846         * docs/gst/tmpl/gstidentity.sgml:
3847         * docs/gst/tmpl/gstindexfactory.sgml:
3848         * docs/gst/tmpl/gstmarshal.sgml:
3849         * docs/gst/tmpl/gstmd5sink.sgml:
3850         * docs/gst/tmpl/gstmultidisksrc.sgml:
3851         * docs/gst/tmpl/gstmultifilesrc.sgml:
3852         * docs/gst/tmpl/gstpadtemplate.sgml:
3853         * docs/gst/tmpl/gstpipefilter.sgml:
3854         * docs/gst/tmpl/gstschedulerfactory.sgml:
3855         * docs/gst/tmpl/gstsearchfuncs.sgml:
3856         * docs/gst/tmpl/gstshaper.sgml:
3857         * docs/gst/tmpl/gstspider.sgml:
3858         * docs/gst/tmpl/gstspideridentity.sgml:
3859         * docs/gst/tmpl/gststatistics.sgml:
3860         * docs/gst/tmpl/gsttee.sgml:
3861         * docs/gst/tmpl/gsttimecache.sgml:
3862         * docs/gst/tmpl/gsttypefind.sgml:
3863         * docs/gst/tmpl/gsttypefindfactory.sgml:
3864         * docs/gst/tmpl/gstxmlregistry.sgml:
3865         * docs/gst/tmpl/gthread-cothreads.sgml:
3866         * docs/gst/tmpl/old/cothreads.sgml:
3867         * docs/gst/tmpl/old/cothreads_compat.sgml:
3868         * docs/gst/tmpl/old/gettext.sgml:
3869         * docs/gst/tmpl/old/gobject2gtk.sgml:
3870         * docs/gst/tmpl/old/grammar.tab.sgml:
3871         * docs/gst/tmpl/old/gst-i18n-app.sgml:
3872         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
3873         * docs/gst/tmpl/old/gst_private.sgml:
3874         * docs/gst/tmpl/old/gstaggregator.sgml:
3875         * docs/gst/tmpl/old/gstarch.sgml:
3876         * docs/gst/tmpl/old/gstatomic_impl.sgml:
3877         * docs/gst/tmpl/old/gstbufferstore.sgml:
3878         * docs/gst/tmpl/old/gstdata_private.sgml:
3879         * docs/gst/tmpl/old/gstdisksink.sgml:
3880         * docs/gst/tmpl/old/gstdisksrc.sgml:
3881         * docs/gst/tmpl/old/gstelementfactory.sgml:
3882         * docs/gst/tmpl/old/gstextratypes.sgml:
3883         * docs/gst/tmpl/old/gstfakesink.sgml:
3884         * docs/gst/tmpl/old/gstfakesrc.sgml:
3885         * docs/gst/tmpl/old/gstfdsink.sgml:
3886         * docs/gst/tmpl/old/gstfdsrc.sgml:
3887         * docs/gst/tmpl/old/gstfilesink.sgml:
3888         * docs/gst/tmpl/old/gstfilesrc.sgml:
3889         * docs/gst/tmpl/old/gsthttpsrc.sgml:
3890         * docs/gst/tmpl/old/gstidentity.sgml:
3891         * docs/gst/tmpl/old/gstindexfactory.sgml:
3892         * docs/gst/tmpl/old/gstmarshal.sgml:
3893         * docs/gst/tmpl/old/gstmd5sink.sgml:
3894         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
3895         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
3896         * docs/gst/tmpl/old/gstpadtemplate.sgml:
3897         * docs/gst/tmpl/old/gstpipefilter.sgml:
3898         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
3899         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
3900         * docs/gst/tmpl/old/gstshaper.sgml:
3901         * docs/gst/tmpl/old/gstspider.sgml:
3902         * docs/gst/tmpl/old/gstspideridentity.sgml:
3903         * docs/gst/tmpl/old/gststatistics.sgml:
3904         * docs/gst/tmpl/old/gsttee.sgml:
3905         * docs/gst/tmpl/old/gsttimecache.sgml:
3906         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3907         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3908         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3909         * docs/gst/tmpl/old/types.sgml:
3910         * docs/gst/tmpl/types.sgml:
3911
3912         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
3913         gtkdoc-scan doesn't like files with the same name in different
3914         directories.
3915         * gst/elements/Makefile.am:
3916         * gst/elements/gstelements.c:
3917         * gst/elements/gsttypefind.c: 
3918         * gst/elements/gsttypefind.h:
3919         * gst/elements/gsttypefindelement.c:
3920         * gst/elements/gsttypefindelement.h:
3921
3922 2004-04-28  David Schleef  <ds@schleef.org>
3923
3924         A bunch of portability fixes, derived from Steve Lhomme's MSVC
3925         patch (bug #141317):
3926         * gst/gst-i18n-lib.h: Allow disabling gettext.
3927         * gst/gstatomic_impl.h: disable warning when it's dumb.
3928         * gst/gstclock.c: fix include
3929         * gst/gstcompat.h: fix variadic macro
3930         * gst/gstinfo.c: fix include
3931         * gst/gstmacros.h: add defines for inlines on MSVC
3932         * gst/gstplugin.c: fix includes
3933         * gst/gstregistry.c: fix includes
3934         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
3935         * gst/gstsystemclock.c: fix include
3936         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
3937         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
3938         * gst/registries/gstxmlregistry.c:
3939         (gst_xml_registry_parse_element_factory): fix use of non-portable
3940         functions
3941         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
3942         * libs/gst/control/dparammanager.h: same
3943
3944 2004-04-28  David Schleef  <ds@schleef.org>
3945
3946         Move a bunch of unused files to old/ with names that are
3947         not case-insensitive-unique.  These files still contain some
3948         useful information that needs to be merged into gstbin.sgml,
3949         etc., so they shouldn't be deleted yet.
3950         * docs/gst/tmpl/GstBin.sgml:
3951         * docs/gst/tmpl/GstBuffer.sgml:
3952         * docs/gst/tmpl/GstCaps.sgml:
3953         * docs/gst/tmpl/GstClock.sgml:
3954         * docs/gst/tmpl/GstCompat.sgml:
3955         * docs/gst/tmpl/GstData.sgml:
3956         * docs/gst/tmpl/GstElement.sgml:
3957         * docs/gst/tmpl/GstEvent.sgml:
3958         * docs/gst/tmpl/GstIndex.sgml:
3959         * docs/gst/tmpl/GstStructure.sgml:
3960         * docs/gst/tmpl/GstTag.sgml:
3961         * docs/gst/tmpl/old/GstBin.sgml:
3962         * docs/gst/tmpl/old/GstBuffer.sgml:
3963         * docs/gst/tmpl/old/GstCaps.sgml:
3964         * docs/gst/tmpl/old/GstClock.sgml:
3965         * docs/gst/tmpl/old/GstCompat.sgml:
3966         * docs/gst/tmpl/old/GstData.sgml:
3967         * docs/gst/tmpl/old/GstElement.sgml:
3968         * docs/gst/tmpl/old/GstEvent.sgml:
3969         * docs/gst/tmpl/old/GstIndex.sgml:
3970         * docs/gst/tmpl/old/GstStructure.sgml:
3971         * docs/gst/tmpl/old/GstTag.sgml:
3972
3973 2004-04-28  David Schleef  <ds@schleef.org>
3974
3975         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
3976         (gst_caps_append), (gst_caps_append_structure),
3977         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
3978         (gst_caps_set_simple), (gst_caps_set_simple_valist),
3979         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
3980         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
3981         (gst_caps_intersect), (gst_caps_normalize),
3982         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
3983         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
3984         * gst/gstcaps.h: use GST_IS_CAPS().
3985
3986 2004-04-26  David Schleef  <ds@schleef.org>
3987
3988         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
3989         assembly.  gcc doesn't handle it correctly. (bug #141083)
3990         * gst/gsttrashstack.h: same
3991
3992 2004-04-25  Benjamin Otte  <otte@gnome.org>
3993
3994         * gst/gstelement.c: (gst_element_change_state):
3995           fix assertion to do an int comparison
3996
3997 2004-04-25  Benjamin Otte  <otte@gnome.org>
3998
3999         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
4000           better debugging output on error
4001
4002 2004-04-25  Benjamin Otte  <otte@gnome.org>
4003
4004         * gst/gstcaps.c: (gst_caps_subtract):
4005           fix memleak
4006
4007 2004-04-23  Benjamin Otte  <otte@gnome.org>
4008
4009         * gst/gstvalue.c: (gst_value_compare_buffer),
4010         (_gst_value_initialize):
4011           add comparison function for buffers
4012
4013 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
4014
4015         * docs/pwg/pwg.xml:
4016           Just found out that this so-called "ima-wav" format is really
4017           just "dvi adpcm" (according to the MS WAV documentation). So
4018           renaming it. We didn't use it yet anyway.
4019
4020 2004-04-23  Benjamin Otte  <otte@gnome.org>
4021
4022         * gst/gstcaps.c: (gst_caps_is_always_compatible):
4023           call gst_caps_is_subset
4024
4025 2004-04-23  Benjamin Otte  <otte@gnome.org>
4026
4027         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
4028         (gst_caps_is_subset):
4029           add documentation
4030
4031 2004-04-23  Benjamin Otte  <otte@gnome.org>
4032           
4033         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
4034         (gst_caps_structure_subtract), (gst_caps_subtract),
4035         (gst_caps_structure_figure_out_union),
4036         (gst_caps_structure_simplify), (gst_caps_do_simplify):
4037           fix simplifying and subtracting not working correctly with optional
4038           properties
4039           solve assorted problems that make it now simplify ebven more
4040         * docs/gst/tmpl/gstcaps.sgml:
4041         * gst/gstcaps.h:
4042           make gst_caps_do_simplify return a bool to indicate if it simplified
4043         * testsuite/caps/simplify.c: (main):
4044           add more checks. The tests is quite a bit useless right now because
4045           the core is heavily simplifying itself.
4046         * testsuite/caps/caps.h:
4047           fix caps to contain all optional properties
4048
4049 2004-04-22  Benjamin Otte  <otte@gnome.org>
4050
4051         * docs/gst/tmpl/gstcaps.sgml:
4052         * docs/gst/tmpl/gstfilesrc.sgml:
4053         * docs/gst/tmpl/gststructure.sgml:
4054         * docs/gst/tmpl/gstvalue.sgml:
4055           update for recent API changes
4056         * gst/gstcaps.c: (gst_caps_do_simplify):
4057           fix to stop trying with a freed structure
4058         * gst/gstpad.c: (gst_pad_link_fixate):
4059           simplify caps
4060         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
4061           remove C++ comment
4062         * gst/gstpad.h:
4063           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
4064         * gst/gststructure.c: (gst_structure_value_get_generic_type),
4065         (gst_structure_to_string):
4066           keep the correct type when using lists of ranges
4067         * gst/gstvalue.c: (gst_value_list_prepend_value),
4068         (gst_value_list_append_value):
4069           copy the value before adding to the list (d'oh)
4070         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
4071         (gst_value_subtract_int_range_int_range):
4072           handle overflows correctly
4073         * gst/gstvalue.c: (gst_value_subtract_from_list):
4074           fix memleak
4075         * testsuite/caps/caps.h:
4076           add a caps that caused segfaults
4077
4078 2004-04-22  Benjamin Otte  <otte@gnome.org>
4079
4080         * testsuite/refcounting/pad.c: (main):
4081           fix test
4082
4083 2004-04-22  Benjamin Otte  <otte@gnome.org>
4084
4085         * gst/gstcaps.c: (gst_caps_subtract):
4086           allow subtracting ANY and EMPTY from ANY caps
4087
4088 2004-04-22  Benjamin Otte  <otte@gnome.org>
4089
4090         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
4091         (gst_caps_union):
4092           only simplify in functions that create new caps. Simplifying in
4093           gst_caps_append breaks tests.
4094
4095 2004-04-22  Benjamin Otte  <otte@gnome.org>
4096
4097         * gst/gstcaps.c: (gst_caps_structure_simplify):
4098           unset GValue after use
4099         * gst/gstcaps.c: (gst_caps_append), 
4100         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
4101           use gst_caps_simplify (reduces registry size by 30%)
4102         * gst/gstpad.c: (gst_pad_template_new):
4103           don't allow NULL caps
4104
4105 2004-04-22  Benjamin Otte  <otte@gnome.org>
4106
4107         * docs/gst/gstreamer-sections.txt:
4108           add gst_caps_do_simplify
4109         * gst/gstcaps.c:
4110           add documentation for gst_caps_do_simplify
4111         * gst/gstvalue.h:
4112           fix typo in gst_value_register_subtract_func declaration for gst-doc
4113
4114 2004-04-22  Benjamin Otte  <otte@gnome.org>
4115
4116         * gst/gstcaps.c: (gst_caps_from_string_inplace):
4117           fix bug when converting from empty string.
4118         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
4119         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
4120           use gst_caps_new_empty to allocate a new caps. Only that function
4121           allocates memory for caps now.
4122         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
4123         (gst_caps_remove_structure):
4124           add ability to remove one structure (but not to header yet)
4125         * gst/gstcaps.c: (gst_caps_compare_structures),
4126         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
4127         (gst_caps_structure_simplify), (gst_caps_do_simplify),
4128         * gst/gstcaps.h:
4129           add gst_caps_do_simplify that tries to simplify a caps in place.
4130           Deprecate old gst_caps_simplify function.
4131         * testsuite/caps/caps.h:
4132           add caps.h containing a common set of caps to test against.
4133         * testsuite/caps/sets.c: (check_caps), (main):
4134           use it.
4135         * testsuite/caps/.cvsignore:
4136         * testsuite/caps/Makefile.am:
4137         * testsuite/caps/simplify.c: (check_caps), (main):
4138           add test to check correctness and efficency of caps simplification.
4139
4140 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
4141
4142         reviewed by Benjamin Otte  <otte@gnome.org>
4143
4144         * gst/gstparse.c: (_gst_parse_escape):
4145           Free the GString used in _gst_parse_escape()
4146
4147 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4148
4149         * gst/gstpad.c: (gst_pad_link_negotiate):
4150           refuse to link if the link is not possible
4151         * configure.ac:
4152         * testsuite/Makefile.am:
4153         * testsuite/negotiation/.cvsignore:
4154         * testsuite/negotiation/Makefile.am:
4155         * testsuite/negotiation/pad_link.c: (main):
4156           add test that checks the above behaviour
4157
4158 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4159
4160         * docs/gst/gstreamer-sections.txt:
4161           add newly added API
4162
4163 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4164
4165         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4166         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
4167         (gst_filesrc_open_file), (gst_filesrc_close_file),
4168         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
4169         * gst/elements/gstfilesrc.h:
4170           add support for non-regular files (#140734)
4171
4172 2004-04-21  Benjamin Otte  <otte@gnome.org>
4173
4174         * gst/gstpad.c: (gst_pad_link_fixate):
4175           add sophisticated error checking code to see if fixation functions
4176           did their fixation right
4177
4178 2004-04-21  Benjamin Otte  <otte@gnome.org>
4179
4180         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
4181           check for ANY caps before appending/unioning
4182         * gst/gstcaps.c: (gst_caps_is_subset),
4183         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
4184         (gst_caps_structure_subtract), (gst_caps_subtract):
4185         * gst/gstcaps.h:
4186           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
4187           the API. deprecate gst_caps_is_equal_fixed
4188         * gst/gstpad.c: (gst_pad_try_set_caps):
4189         * gst/gstqueue.c: (gst_queue_link):
4190           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
4191         * gst/gststructure.c: (gst_structure_get_name_id):
4192         * gst/gststructure.h:
4193           add function gst_structure_get_name_id
4194         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
4195         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
4196         (gst_value_subtract_int_range_int_range),
4197         (gst_value_subtract_double_double_range),
4198         (gst_value_subtract_double_range_double),
4199         (gst_value_subtract_double_range_double_range),
4200         (gst_value_subtract_from_list), (gst_value_subtract_list),
4201         (gst_value_can_intersect), (gst_value_subtract),
4202         (gst_value_can_subtract), (gst_value_register_subtract_func),
4203         (_gst_value_initialize):
4204         * gst/gstvalue.h:
4205           add support for subtracting values from each other. Note that
4206           subtracting means subtracting as in set theory. Required for caps
4207           stuff above.
4208         * testsuite/caps/.cvsignore:
4209         * testsuite/caps/Makefile.am:
4210         * testsuite/caps/erathostenes.c: (erathostenes), (main):
4211         * testsuite/caps/sets.c: (check_caps), (main):
4212         * testsuite/caps/subtract.c: (check_caps), (main):
4213           add tests for subtraction and equality code.
4214
4215 2004-04-20  David Schleef  <ds@schleef.org>
4216
4217         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
4218         * gst/indexers/Makefile.am:
4219         * gst/schedulers/Makefile.am:
4220         * libs/gst/bytestream/Makefile.am:
4221         * libs/gst/control/Makefile.am:
4222         * libs/gst/getbits/Makefile.am:
4223
4224 2004-04-20  David Schleef  <ds@schleef.org>
4225
4226         * common/as-libtool.mak: Fine-tune DLL building.
4227         * configure.ac: Link plugins against libgstreamer.  Define plugindir
4228         (like gst-plugins)
4229         * examples/plugins/Makefile.am: remove plugindir
4230         * gst/autoplug/Makefile.am: DLL building fixes
4231         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
4232         Windows.
4233         * gst/elements/gstelements.c: Conditionally disable pipefilter.
4234         * gst/indexers/Makefile.am: DLL building fixes
4235         * gst/schedulers/Makefile.am: DLL building fixes.
4236         * libs/gst/bytestream/Makefile.am: DLL building fixes.
4237         * libs/gst/control/Makefile.am: same
4238         * libs/gst/getbits/Makefile.am: same
4239         * testsuite/Makefile.am: New dlopen directory
4240         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
4241         when dlopened.
4242         * testsuite/dlopen/dlopen_gst.c: (main): same
4243         * testsuite/dlopen/loadgst.c: (do_test): same
4244
4245 2004-04-20  David Schleef  <ds@schleef.org>
4246
4247         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
4248         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
4249
4250 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4251
4252         * gst/gstelement.c: (gst_element_wait),
4253         (gst_element_set_time_delay), (gst_element_change_state):
4254           Use GST_TIME_*
4255
4256 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4257
4258         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
4259         (gst_spider_identity_plug):
4260           improve debugging messages
4261         * gst/gstbin.c: (gst_bin_remove_func):
4262           make sure the state_change function is only called with simple state
4263           transitions
4264
4265 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4266
4267         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
4268         (gst_fakesink_set_property), (gst_fakesink_chain):
4269         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
4270         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
4271         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
4272         * gst/elements/gstidentity.c: (gst_identity_chain),
4273         (gst_identity_set_property):
4274         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
4275         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
4276           add warnings to _set_property for unknown arguments
4277           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
4278
4279 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4280
4281         * Makefile.am:
4282         * docs/manuals.mak:
4283           add .po file download snippet
4284           fix a bug in the doc makefile
4285
4286 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4287
4288         * Makefile.am:
4289         * po/LINGUAS:
4290         * po/en_GB.po:
4291           Added en_GB translation (Gareth Owen)
4292
4293 2004-04-20  Johan Dahlin  <johan@gnome.org>
4294
4295         * gst/gstpad.c (_invent_event): Clean up
4296
4297 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4298
4299         * testsuite/caps/filtercaps.c: (main):
4300           fix test to test things correctly (caps are complicated)
4301
4302 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4303
4304         * testsuite/caps/Makefile.am:
4305         * testsuite/caps/filtercaps.c: (main):
4306           add test (that doesn't work right now, but should)
4307
4308 2004-04-19  David Schleef  <ds@schleef.org>
4309
4310         * configure.ac: Add test for allowing unaligned access.  Add define
4311         to put in gstconfig.h.
4312         * docs/gst/gstreamer-sections.txt: New symbols
4313         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
4314         * docs/gst/tmpl/gstfilesrc.sgml:
4315         * docs/gst/tmpl/gstparse.sgml:
4316         * docs/gst/tmpl/gsttypes.sgml:
4317         * docs/gst/tmpl/gstutils.sgml:
4318         * docs/gst/tmpl/gstvalue.sgml:
4319         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
4320         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
4321         on most !i386/!powerpc architectures.  From Daniel Gazard
4322         <daniel.gazard@free.fr>.  (bug #140156)
4323         * po/af.po: Check in changes made by gettext.
4324         * po/az.po:
4325         * po/fr.po:
4326         * po/nl.po:
4327         * po/sr.po:
4328         * po/sv.po:
4329
4330 2004-04-20  Benjamin Otte  <otte@gnome.org>
4331
4332         * gst/schedulers/entryscheduler.c: 
4333         (gst_entry_scheduler_yield):
4334           refuse to yield when decoupled elements insist on doing that.
4335           At least it's better than crashing
4336
4337 2004-04-19  David Schleef  <ds@schleef.org>
4338
4339         * docs/libs/Makefile.am: Change sinclude to include
4340         * docs/gst/Makefile.am: same
4341         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
4342
4343 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
4344
4345         * po/LINGUAS:
4346         * po/uk.po:
4347           Added Ukrainian translation (Maxim V. Dziumanenko)
4348
4349 2004-04-19  Johan Dahlin  <johan@gnome.org>
4350
4351         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
4352         checking here, do it before calling the function.
4353         Clean up, use for loops instead of while loops while iterating
4354         over lists.
4355
4356         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
4357         in debug message.
4358         (gst_spider_create_and_plug): Improve debug message.
4359         General: Replace while loops which iterates over GLists with for
4360         loops. Which are much cleaner, improves readability, especially
4361         for gst_spider_identity_plug
4362
4363         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
4364         fixes bug 140477
4365
4366 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
4367
4368         * po/LINGUAS:
4369         * po/tr.po:
4370           Added Turkish translation (Baris Cicek)
4371
4372 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
4373
4374         * docs/faq/troubleshooting.xml:
4375           Mention gst-register in the FAQ (fixes 139045).
4376
4377 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4378
4379         * docs/gst/gstreamer-sections.txt:
4380
4381 2004-04-17  Benjamin Otte  <otte@gnome.org>
4382
4383         * gst/gstelement.c: (gst_element_dispose):
4384           simplify
4385         * gst/gstpad.c: (gst_pad_call_chain_function):
4386           don't create loads of events due to bad macro usage
4387
4388 2004-04-16  David Schleef  <ds@schleef.org>
4389
4390         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
4391         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
4392         * gst/gstvalue.c: (gst_value_serialize_buffer),
4393         (gst_value_deserialize_buffer), (gst_type_is_fixed),
4394         (_gst_value_initialize): Create a new function gst_type_is_fixed()
4395         to indicate types that are fixed wrt caps or not.  Switching to
4396         this function fixes (bug #140298).
4397         * gst/gstvalue.h:
4398
4399 2004-04-16  David Schleef  <ds@schleef.org>
4400
4401         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
4402         for GST_UNALIGNED_ACESS, since we essentially know which archs
4403         are ok.
4404
4405 2004-04-17  Benjamin Otte  <otte@gnome.org>
4406
4407         * docs/gst/Makefile.am:
4408           ignore gst/parse directory when building docs (fixes #140205)
4409
4410 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4411
4412         * testsuite/refcounting/mem.c: (vmsize):
4413           do error checking
4414
4415 2004-04-16  Johan Dahlin  <johan@gnome.org>
4416
4417         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
4418         and gst_pad_call_get_function.
4419
4420 2004-04-15  David Schleef  <ds@schleef.org>
4421
4422         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
4423         checks if we can access unaligned memory.
4424         * configure.ac: Use it.
4425
4426 2004-04-16  Benjamin Otte  <otte@gnome.org>
4427
4428         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
4429         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
4430         * gst/elements/gstfilesrc.h:
4431           s/seek_happened/need_discont/ and require discont before sending any
4432           data
4433
4434 2004-04-15  David Schleef  <ds@schleef.org>
4435
4436         * gst/gstvalue.c: (gst_value_serialize_buffer),
4437         (gst_value_deserialize_buffer), (_gst_value_initialize):
4438         Register these types as fundamental types. (bug #140015)
4439
4440 2004-04-16  Benjamin Otte  <otte@gnome.org>
4441
4442         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
4443         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
4444         (gst_pad_pull):
4445           implement enforcing discont events before buffers are passed. This
4446           allows state changes of only some elements and later correctly going
4447           on where they left off (or in short: you can now set audio sinks to
4448           NULL to release the device when the pipeline is paused)
4449         * gst/gstpad.c: (gst_pad_call_chain_function),
4450         (gst_pad_call_get_function):
4451         * gst/gstpad.h:
4452           add gst_pad_call_chain_function and gst_pad_call_get_function for
4453           scheduler interaction. They are required because of the changes
4454           above.
4455         * gst/schedulers/entryscheduler.c: (get_buffer),
4456         (gst_entry_scheduler_chain_wrapper),
4457         (gst_entry_scheduler_get_wrapper),
4458         (gst_entry_scheduler_state_transition),
4459         (gst_entry_scheduler_pad_link):
4460         * gst/schedulers/gstbasicscheduler.c:
4461         (gst_basic_scheduler_chain_wrapper),
4462         (gst_basic_scheduler_src_wrapper),
4463         (gst_basic_scheduler_chainhandler_proxy),
4464         (gst_basic_scheduler_gethandler_proxy),
4465         (gst_basic_scheduler_cothreaded_chain),
4466         (gst_basic_scheduler_chain_elements):
4467         * gst/schedulers/gstoptimalscheduler.c:
4468         (get_group_schedule_function), (pad_clear_queued),
4469         (gst_opt_scheduler_pad_link):
4470           use the new functions instead of calling get/chain-functions
4471           directly.
4472
4473 2004-04-15  David Schleef  <ds@schleef.org>
4474
4475         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
4476         * docs/gst/tmpl/gstinfo.sgml: same
4477         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
4478         gtk-doc put here.
4479         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
4480         * examples/queue/queue.c: (main):  We iterate pipelines, not
4481         bins.  (bug #139996)
4482
4483 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
4484
4485         * docs/pwg/advanced-types.xml:
4486           Add MS RLE support. Also document Qt RLE although I have no sample
4487           files for that yet. And document an extra property for ADPCM.
4488
4489 2004-04-15  David Schleef  <ds@schleef.org>
4490
4491         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
4492         (_gst_plugin_fault_handler_setup):  Disable more stuff on
4493         Windows.
4494
4495 2004-04-15  David Schleef  <ds@schleef.org>
4496
4497         * gst/gstinfo.c: (_gst_debug_init): Change some internal
4498         symbol names to not conflict with new gstinfo.h symbols.
4499         * gst/gstinfo.h: Add inline functions for all those crazy
4500         compilers that don't know how to handle variadic macros (MSVC).
4501
4502 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4503
4504         * configure.ac: bump nano to 1
4505
4506 === release 0.8.1 ===
4507
4508 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4509
4510         * NEWS:
4511         * RELEASE:
4512         * configure.ac:
4513           releasing 0.8.1, "Snow Brigade"
4514
4515 2004-04-14  David Schleef  <ds@schleef.org>
4516
4517         * testsuite/Makefile.am: define tests_ignore
4518         * testsuite/Rules: Added new tests_ignore, which get compiled,
4519         but not run (generally because they're inconsistent or have
4520         heisenbugs).  Now we can ensure all the .c files compile in
4521         testsuite/.
4522         * testsuite/bins/Makefile.am: define tests_ignore
4523         * testsuite/bytestream/Makefile.am:
4524         * testsuite/caps/Makefile.am:
4525         * testsuite/clock/Makefile.am:
4526         * testsuite/debug/Makefile.am:
4527         * testsuite/debug/global.c: (gst_debug_log_one),
4528         (gst_debug_log_two): Fix compilation problem.
4529         * testsuite/dynparams/Makefile.am:
4530         * testsuite/elements/Makefile.am:
4531         * testsuite/ghostpads/Makefile.am:
4532         * testsuite/indexers/Makefile.am:
4533         * testsuite/parse/Makefile.am:
4534         * testsuite/plugin/Makefile.am:
4535         * testsuite/refcounting/Makefile.am:
4536         * testsuite/refcounting/element_pad.c: (main): Don't return leak
4537         results, because it's not calculated correctly.
4538         * testsuite/refcounting/pad.c: (main): same
4539         * testsuite/states/Makefile.am:
4540         * testsuite/tags/Makefile.am:
4541         * testsuite/threads/Makefile.am:
4542
4543 2004-04-14  David Schleef  <ds@schleef.org>
4544
4545         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
4546         generating bad code around the cpu detection asm code.
4547
4548 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4549
4550         * tools/gst-inspect.c: (print_element_info):
4551           print numeric version of rank as well, since we added some - 1
4552           rank values to elements
4553
4554 2004-04-13  David Schleef  <ds@schleef.org>
4555
4556         * configure.ac:  Disable various code when compiling for MinGW.
4557         * gst/elements/Makefile.am:
4558         * gst/elements/gstelements.c:
4559         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
4560         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
4561         * gst/registries/gstxmlregistry.c: (make_dir):
4562
4563 2004-04-13  David Schleef  <ds@schleef.org>
4564
4565         * gst/Makefile.am:
4566         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
4567         assembly.
4568         * gst/gstcpuid_i386.s: remove
4569
4570 2004-04-13  David Schleef  <ds@schleef.org>
4571
4572         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
4573         seems to think it needs to be done.
4574         * docs/gst/tmpl/gstfakesink.sgml:
4575         * docs/gst/tmpl/gstfakesrc.sgml:
4576         * docs/gst/tmpl/gstfdsink.sgml:
4577         * docs/gst/tmpl/gstfdsrc.sgml:
4578         * docs/gst/tmpl/gstfilesink.sgml:
4579         * docs/gst/tmpl/gstfilesrc.sgml:
4580         * docs/gst/tmpl/gstidentity.sgml:
4581         * docs/gst/tmpl/gstmd5sink.sgml:
4582         * docs/gst/tmpl/gstmultifilesrc.sgml:
4583         * docs/gst/tmpl/gstpipefilter.sgml:
4584         * docs/gst/tmpl/gstshaper.sgml:
4585         * docs/gst/tmpl/gstspider.sgml:
4586         * docs/gst/tmpl/gstspideridentity.sgml:
4587         * docs/gst/tmpl/gststatistics.sgml:
4588         * docs/gst/tmpl/gsttee.sgml:
4589         * docs/gst/tmpl/gsttypefind.sgml:
4590         * docs/gst/tmpl/gstutils.sgml:
4591
4592 2004-04-13  David Schleef  <ds@schleef.org>
4593
4594         * configure.ac: Changes to remove POSIXisms (mmap in this case)
4595         and to build DLLs on Windows.
4596         * gst/Makefile.am:
4597         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
4598         (gst_filesrc_open_file):
4599         * gst/schedulers/Makefile.am:
4600
4601 2004-04-13  David Schleef  <ds@schleef.org>
4602
4603         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
4604         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
4605         fixating lists.
4606
4607 2004-04-12  David Schleef  <ds@schleef.org>
4608
4609         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
4610         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
4611         to using it.
4612         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
4613         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
4614         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
4615         * gst/gststructure.c: (gst_structure_set_valist),
4616         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
4617         support for buffers.
4618         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
4619         intended to be const.
4620         * gst/gsttag.h: same
4621         * gst/gstvalue.c: (gst_value_serialize_buffer),
4622         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
4623         to (de)serialize buffers.
4624         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
4625         * testsuite/caps/string-conversions.c: (main):
4626         * testsuite/caps/value_serialize.c: add new test
4627
4628 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
4629
4630         * docs/pwg/advanced-types.xml:
4631           Document MS video 1 (video/x-msvideocodec) mimetype/format.
4632
4633 2004-04-11  Benjamin Otte  <otte@gnome.org>
4634
4635         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
4636           rename categories to basic_*
4637         * gst/schedulers/gstbasicscheduler.c: 
4638         (gst_basic_scheduler_chain_wrapper),
4639         (gst_basic_scheduler_chainhandler_proxy),
4640         (gst_basic_scheduler_gethandler_proxy),
4641         (gst_basic_scheduler_eventhandler_proxy):
4642           debugging category fixes - put common stuff in log category
4643         * gst/schedulers/gstbasicscheduler.c: 
4644         (gst_basic_scheduler_chain_elements):
4645           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
4646           active and linking two active chains
4647
4648 2004-04-10  Benjamin Otte  <otte@gnome.org>
4649
4650         * docs/pwg/intro-preface.xml:
4651           fix dead links and remove reference to Wiki
4652
4653 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4654
4655         * gst/schedulers/gstbasicscheduler.c:
4656           make sure we can switch back to the main function if we're still in
4657           the main function (supposed to fix #139617)
4658         * gst/schedulers/gthread-cothreads.h:
4659           don't throw an error when switching to the same cothread
4660
4661 2004-04-09  Benjamin Otte  <otte@gnome.org>
4662
4663         * gst/gstbin.c: (gst_bin_get_type):
4664         * gst/gstclock.c: (gst_clock_get_type):
4665         * gst/gstindex.c: (gst_index_get_type):
4666         * gst/gstobject.c: (gst_object_get_type),
4667         (gst_signal_object_get_type):
4668         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
4669         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
4670         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
4671         * gst/gstqueue.c: (gst_queue_get_type):
4672         * gst/gstregistry.c: (gst_registry_get_type):
4673         * gst/gstsystemclock.c: (gst_system_clock_get_type):
4674         * gst/gstthread.c: (gst_thread_get_type):
4675           don't use memchunks for these objects, use malloc instead
4676
4677 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4678
4679         * docs/gst/.cvsignore:
4680         * docs/gst/Makefile.am:
4681         * docs/gst/gstreamer-sections.txt:
4682         * docs/gst/tmpl/gstaggregator.sgml:
4683         * docs/gst/tmpl/gstbuffer.sgml:
4684         * docs/gst/tmpl/gstclock.sgml:
4685         * docs/gst/tmpl/gstelement.sgml:
4686         * docs/gst/tmpl/gstfakesink.sgml:
4687         * docs/gst/tmpl/gstfakesrc.sgml:
4688         * docs/gst/tmpl/gstfdsink.sgml:
4689         * docs/gst/tmpl/gstfdsrc.sgml:
4690         * docs/gst/tmpl/gstfilesink.sgml:
4691         * docs/gst/tmpl/gstfilesrc.sgml:
4692         * docs/gst/tmpl/gstidentity.sgml:
4693         * docs/gst/tmpl/gstindex.sgml:
4694         * docs/gst/tmpl/gstinfo.sgml:
4695         * docs/gst/tmpl/gstmd5sink.sgml:
4696         * docs/gst/tmpl/gstmultifilesrc.sgml:
4697         * docs/gst/tmpl/gstpad.sgml:
4698         * docs/gst/tmpl/gstpipefilter.sgml:
4699         * docs/gst/tmpl/gstpipeline.sgml:
4700         * docs/gst/tmpl/gstpluginfeature.sgml:
4701         * docs/gst/tmpl/gstqueue.sgml:
4702         * docs/gst/tmpl/gstregistry.sgml:
4703         * docs/gst/tmpl/gstscheduler.sgml:
4704         * docs/gst/tmpl/gstshaper.sgml:
4705         * docs/gst/tmpl/gstspider.sgml:
4706         * docs/gst/tmpl/gstspideridentity.sgml:
4707         * docs/gst/tmpl/gststatistics.sgml:
4708         * docs/gst/tmpl/gstsystemclock.sgml:
4709         * docs/gst/tmpl/gsttee.sgml:
4710         * docs/gst/tmpl/gstthread.sgml:
4711         * docs/gst/tmpl/gsttypefind.sgml:
4712         * docs/gst/tmpl/gstutils.sgml:
4713           further doc build fixes
4714
4715 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4716
4717         * docs/gst/Makefile.am:
4718           make docs exit on scanning problems
4719           fix nonsrcdir build issues
4720         * docs/gst/gstreamer-sections.txt:
4721           adding stuff from -unused
4722         * gst/gstqueue.h:
4723           create GstQueueSize
4724         * gst/schedulers/cothreads_compat.h:
4725           fix cothread warnings
4726
4727 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4728
4729         * docs/gst/gstreamer-sections.txt:
4730           remove defines deprecated by Benjamin
4731
4732 2004-04-07  Benjamin Otte  <otte@gnome.org>
4733
4734         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
4735           when the buffer is complete, don't check if other buffers are needed
4736         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
4737           check that the offset is >0 so we don't try to read before the
4738           beginning of the file
4739         * gst/gstpad.c: (gst_pad_set_pad_template):
4740           sink the template, so we don't end up with 130k pad templates
4741
4742 2004-04-06  Benjamin Otte  <otte@gnome.org>
4743
4744         * gst/autoplug/gstspider.c: (gst_spider_link_add):
4745           don't ref the element, adding already reffed it. And we didn't unref
4746           it later anyway... (huge memleak when you used many spider elements)
4747         * gst/gstelement.c: (gst_element_base_class_finalize):
4748         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
4749         (gst_element_register):
4750         * gst/gsturi.c: (gst_element_make_from_uri):
4751           use gst_object_(un)ref instead of g_object(un)ref
4752
4753 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4754
4755         * gst/gstbuffer.h:
4756           remove macro that wouldn't work anymore because struct member has
4757           been removed.
4758         * gst/schedulers/entryscheduler.c: (schedule_forward):
4759           fix segfault for unconnected pads
4760         
4761 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4762
4763         reviewed by David Schleef <ds@schleef.org>
4764
4765         * gst/gstinfo.h:
4766           *_FORMAT modifiers should require putting a % in front of them for
4767           consistency reasons.
4768
4769 2004-04-05  Colin Walters  <walters@redhat.com>
4770
4771         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
4772         space.
4773
4774 2004-04-05  Benjamin Otte  <otte@gnome.org>
4775
4776         * configure.ac:
4777         * gst/Makefile.am:
4778         * gst/gst_private.h:
4779         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
4780           add support for detecting if GStreamer runs inside valgrind.
4781           requires valgrind (d'oh) and --enable-debug for correct cdetection.
4782           print a big message in valgrind that GStreamer has detected it's
4783           running inside and might now use different code.
4784         * gst/gstmemchunk.c: (populate), (free_area),
4785         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
4786         (gst_mem_chunk_free):
4787           flag memchunks for valgrind, so it can detect leaking of chunks.
4788           This allows detecting leaks of GstBuffer and GstEvent correctly
4789           inside valgrind.
4790
4791 2004-04-05  David Schleef  <ds@schleef.org>
4792
4793         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
4794           jensgr@gmx.net (Jens Granseuer)
4795
4796 2004-04-05  David Schleef  <ds@schleef.org>
4797
4798         * gst/gstbuffer.c: (_gst_buffer_sub_free),
4799         (gst_buffer_default_free), (gst_buffer_default_copy),
4800         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
4801         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
4802         structures in one place.
4803
4804 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4805
4806         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
4807           (GST_TIME_FORMAT, GST_TIME_ARGS)
4808
4809 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4810
4811         * testsuite/elements/Makefile.am:
4812           disable test until it stops breaking make distcheck
4813
4814 2004-04-05  Johan Dahlin  <johan@gnome.org>
4815
4816         * po/sv.po: Updated translation
4817
4818 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4819
4820         * gst/gstplugin.c: (gst_plugin_load_file):
4821           fix segfault for when original plugin was loaded statically
4822
4823 2004-04-05  Benjamin Otte  <otte@gnome.org>
4824
4825         * testsuite/debug/category.c: (main):
4826         * testsuite/debug/commandline.c: (main):
4827         * testsuite/debug/output.c: (main):
4828           fix tests to work again with debugging enabled
4829
4830 2004-04-05  Benjamin Otte  <otte@gnome.org>
4831
4832         * gst/schedulers/gstbasicscheduler.c:
4833         (gst_basic_scheduler_pad_link):
4834           fix to work with recent scheduling changes
4835
4836 2004-04-05  Benjamin Otte  <otte@gnome.org>
4837
4838         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
4839         prepareChangeLog doesn't work when cvs indents):
4840           don't throw an error when no element can be scheduled, there's too
4841           many weird reasons why it doesn't work. Return STOPPED instead.
4842           decoupled elemts' schedulability doesn't depend on bufpens.
4843
4844 2004-04-04  Benjamin Otte  <otte@gnome.org>
4845
4846         * gst/schedulers/gstbasicscheduler.c:
4847         (gst_basic_scheduler_pad_select):
4848           fix uninitialized variable warnings
4849
4850 2004-04-04  Benjamin Otte  <otte@gnome.org>
4851
4852         * gst/gstpad.c: (gst_pad_collect_valist):
4853           fix uninitialized variable warning
4854         * gst/schedulers/entryscheduler.c: (schedule_forward):
4855           fix shadowed variable
4856
4857 2004-04-04  Benjamin Otte  <otte@gnome.org>
4858
4859         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
4860         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
4861         (gst_pad_select):
4862         * gst/gstpad.h:
4863         * gst/gstscheduler.c: (gst_scheduler_pad_select),
4864         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
4865         * gst/gstscheduler.h:
4866           implement gst_pad_collect as replacement for gst_pad_select.
4867           deprecate gst_pad_select and gst_scheduler_(un)lock_element
4868           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
4869           new pad_select, lock and unlock calls.
4870         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
4871         * gst/cothreads.h:
4872         * gst/schedulers/cothreads_compat.h:
4873         * gst/schedulers/gthread-cothreads.h:
4874           remove unused cothread_lock and cothread_unlock calls
4875         * gst/schedulers/entryscheduler.c:
4876         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
4877         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
4878         (gst_entry_scheduler_pad_select):
4879           update to new API
4880         * gst/schedulers/gstbasicscheduler.c:
4881         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
4882         (gst_basic_scheduler_pad_select):
4883           remove useless lock and unlock calls, update pad_select to new API
4884           (untested)
4885         * gst/schedulers/gstoptimalscheduler.c:
4886         (gst_opt_scheduler_class_init):
4887           remove useless select, lock and unlock function calls
4888         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
4889           use gst_pad_collect instead of gst_pad_select
4890
4891 2004-04-04  Benjamin Otte  <otte@gnome.org>
4892
4893         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
4894         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
4895         (schedule_next_element), (print_entry):
4896           add can_schedule_pad to handle element states.
4897           add schedule_forward to select the correct entry to schedule next
4898
4899 2004-04-03  Benjamin Otte  <otte@gnome.org>
4900
4901         * gst/schedulers/entryscheduler.c: 
4902           remove unused variable, fix error inside Rb, fix compile warning in
4903           unreachable code
4904
4905 2004-04-03  Benjamin Otte  <otte@gnome.org>
4906
4907         * gst/schedulers/entryscheduler.c:
4908           completely revamp the inner workings, so it's a lot easier to
4909           understand and extend
4910
4911 2004-04-03  Andy Wingo  <wingo@pobox.com>
4912
4913         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
4914         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
4915         This allows better introspection of pipeline topology.
4916         (add_to_chain): Don't do trickery to put loop elements first;
4917         rather, queue a chain sort by marking the chain as dirty.
4918         (remove_from_chain): Mark the chain dirty.
4919         (sort_chain): New function. Sorts the group list so that terminal
4920         sinks are first. This means elements on the sink side will be
4921         preferentially sscheduled before elements on the src side of the
4922         pipeline.
4923         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
4924         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
4925         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
4926         (group_inc_link): Change argument and variable names to match the
4927         new link structure member names (src and sink).
4928         (group_dec_link): Add some description
4929
4930 2004-04-03  Benjamin Otte  <otte@gnome.org>
4931
4932         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
4933         * gst/gstinfo.h:
4934         * testsuite/debug/category.c: (main):
4935         * testsuite/debug/commandline.c: (main):
4936         * testsuite/debug/output.c: (main):
4937         * testsuite/debug/printf_extension.c: (main):
4938           fix to successfully build and test with --disable-gst-debug
4939           configure switch (fixes #138705)
4940
4941 2004-04-03  Benjamin Otte  <otte@gnome.org>
4942
4943         * docs/pwg/building-boiler.xml:
4944           add cvs login line and s/anonymous/anoncvs/
4945
4946 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
4947
4948         reviewed by Benjamin Otte  <otte@gnome.org>
4949
4950         * gst/gststructure.c: (gst_structure_free):
4951           memleak fix: free fields array (partial fix for #134839)
4952
4953 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
4954
4955         * docs/random/ds/0.9-suggested-changes:
4956           Add a note to change handoff use in fakesrc to be usable in
4957           a more generic way (fakesrc should be renamed to appsrc or so).
4958         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4959           Change signal type to scope, so we can fill the buffer in the
4960           handoff handler (that's the whole use of this signal...).
4961
4962 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
4963
4964         * docs/pwg/other-ntoone.xml:
4965           Document muxers and n-to-1 elements.
4966
4967 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
4968
4969         * gst/registries/gstxmlregistry.c
4970         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
4971         determine if a file is a G_MODULE. The old one discards paths
4972         containing "so" somewhere in the middle. My home directory is
4973         called "soto". Go figure...
4974
4975 2004-03-31  David Schleef  <ds@schleef.org>
4976
4977         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
4978         to eventually deprecate gst_buffer_merge().  (bug: #136408)
4979         * gst/gstbuffer.h:
4980
4981 2004-03-31  David Schleef  <ds@schleef.org>
4982
4983         * gst/gstvalue.c: (gst_value_union_int_int_range),
4984         (gst_value_union_int_range_int_range), (gst_value_can_union),
4985         (gst_value_union), (_gst_value_initialize):  Add some union
4986         implementations.  We didn't have any previously.
4987         * testsuite/caps/Makefile.am:
4988         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
4989         (gst_audioscale_getcaps), (test_caps), (main): A little test
4990         that is the same as the caps manipulation in audioscale.
4991
4992 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4993
4994         * docs/faq/general.xml:
4995           add entry about "does gst support format X?"
4996
4997 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4998
4999         * gst/gstthread.c:
5000           fix docs
5001         * gst/gstutils.h:
5002           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
5003
5004 2004-03-30  Benjamin Otte  <otte@gnome.org>
5005
5006         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
5007           set the offset of the buffer to the requested offset
5008         * gst/elements/gsttypefind.c: (stop_typefinding):
5009           revert patch 1.18 (which I unfortunately don't know the reason for).
5010           This is needed to allow downstream elements to seek. Otherwise
5011           typefind might overwrite a previous seek by downstream elements.
5012           This lead to errors with id3tag and typefind on some mp3s.
5013         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
5014         (gst_entry_scheduler_iterate):
5015           be more verbose when debugging
5016
5017 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
5018
5019         * gst/gstcaps.c: (gst_caps_from_string_inplace):
5020           make sure we don't get NULL strings
5021
5022 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
5023
5024         * gst/gstcaps.c:
5025         * gst/gstelement.c:
5026         * gst/gstelementfactory.c: (gst_element_factory_get_type):
5027         * gst/gstindex.c: (gst_index_resolver_get_type),
5028         (gst_index_get_type), (gst_index_factory_get_type):
5029         * gst/gstinfo.c:
5030         * gst/gstpad.c:
5031         * gst/gstplugin.c:
5032         * gst/gsturi.c: (gst_uri_handler_get_type):
5033         * gst/gstvalue.c:
5034           first batch of documentation fixes
5035
5036 2004-03-29  David Schleef  <ds@schleef.org>
5037
5038         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
5039         * docs/gst/gstreamer-docs.sgml:  More hacking
5040         * docs/gst/gstreamer-sections.txt:
5041         * docs/gst/tmpl/cothreads_compat.sgml:
5042         * docs/gst/tmpl/gstcaps.sgml:
5043         * docs/gst/tmpl/gstclock.sgml:
5044         * docs/gst/tmpl/gstelement.sgml:
5045         * docs/gst/tmpl/gstevent.sgml:
5046         * docs/gst/tmpl/gstpad.sgml:
5047         * docs/gst/tmpl/gstutils.sgml:
5048         * docs/gst/tmpl/gstxml.sgml:
5049         * docs/gst/tmpl/gthread-cothreads.sgml:
5050         * docs/random/ds/0.9-suggested-changes:
5051         * gst/elements/gstfakesink.h: doc fixes
5052         * gst/elements/gstfakesrc.h: doc fixes
5053         * gst/gstcaps.c: doc fixes
5054         * gst/gstcaps.h: doc fixes
5055         * gst/gstelement.c: doc fixes
5056         * gst/gstelement.h: doc fixes
5057         * gst/gstindex.c: doc fixes
5058         * gst/gstinfo.c: doc fixes
5059         * gst/gstpad.c: doc fixes
5060         * gst/gstpad.h: doc fixes
5061         * gst/gstplugin.c: doc fixes
5062         * gst/gsttypefind.h: doc fixes
5063         * gst/gsturi.c: doc fixes
5064         * gst/gstvalue.c: doc fixes
5065
5066 2004-03-29  Colin Walters  <walters@redhat.com>
5067
5068         * gst/registries/gstxmlregistry.c (get_time)
5069         (plugin_times_older_than_recurse):
5070         Use the result of stat to determine whether a path is a file,
5071         so we don't attempt to opendir() files.
5072
5073 2004-03-29  Benjamin Otte  <otte@gnome.org>
5074
5075         * gst/gstpad.c: (gst_pad_set_explicit_caps):
5076           print caps in debugging output when setting caps failed
5077         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
5078         (schedule_next_element), (get_buffer), (run_chainhandler),
5079         (element_may_start), (gst_entry_scheduler_chain_handler),
5080         (gst_entry_scheduler_get_handler),
5081         (gst_entry_scheduler_state_transition),
5082         (gst_entry_scheduler_pad_link):
5083           make this scheduler a testcase for mandatory
5084           discont-before-first-buffer which is needed if we want to allow apps
5085           to release the sound device.
5086           add SCHED_ASSERT macro to print scheduler state before an assertion
5087           triggers.
5088
5089 2004-03-29  Benjamin Otte  <otte@gnome.org>
5090
5091         * COPYING:
5092           replace by LGPL (former COPYING.LIB). The core is completely
5093           licensed LGPL.
5094         * COPYING.LIB:
5095           remove
5096
5097 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
5098
5099         * po/af.po:
5100         * po/sv.po:
5101           updated Afrikaans and Swedish
5102
5103 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
5104
5105         * po/LINGUAS:
5106         * po/az.po:
5107           adding Azerbaijani (Mətin Əmirov)
5108
5109 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
5110
5111         * gst/gstelement.h: 
5112         * gst/gstelement.c (gst_element_set_time_delay): New function for
5113         setting element time taking into account a hardware buffering
5114         delay.
5115         (gst_element_set_time): Now just an invocation of
5116         gst_element_set_time_delay.
5117         * gst/gstclock.h: 
5118         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
5119         allowing to set event times in the future.
5120         (gst_clock_get_event_time): Now just an invocation of
5121         gst_clock_get_event_time_delay.
5122
5123 2004-03-28  Benjamin Otte  <otte@gnome.org>
5124
5125         * gst/gstbin.c: (gst_bin_set_element_sched),
5126         (gst_bin_unset_element_sched):
5127           don't add decoupled elements to schedulers - otherwise it's
5128           impossible to control if a link to a decoupled element was already
5129           removed from a scheduler or not.
5130         * gst/schedulers/cothreads_compat.h:
5131         * gst/schedulers/gthread-cothreads.h:
5132           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
5133           is no "unused" warning.
5134         * gst/schedulers/Makefile.am:
5135         * gst/schedulers/entryscheduler.c:
5136           add new scheduler, based on ideas from talking to David and Martin.
5137           It's supposed to be small and correct. Currently it's also slow (but
5138           it's not noticable)
5139         * examples/retag/retag.c: (main):
5140         * testsuite/bytestream/test1.c: (main):
5141           fix missing NULLs at end of variadic functions
5142         * testsuite/elements/.cvsignore:
5143           update
5144
5145 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
5146
5147         * gst/gstevent.h:
5148         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
5149
5150 2004-03-25  David Schleef  <ds@schleef.org>
5151
5152         * docs/gst/gstreamer-sections.txt:  More doc hacking.
5153         * docs/gst/tmpl/gstaggregator.sgml:
5154         * docs/gst/tmpl/gstautoplugfactory.sgml:
5155         * docs/gst/tmpl/gstbin.sgml:
5156         * docs/gst/tmpl/gstbuffer.sgml:
5157         * docs/gst/tmpl/gstbufferstore.sgml:
5158         * docs/gst/tmpl/gstfakesink.sgml:
5159         * docs/gst/tmpl/gstfakesrc.sgml:
5160         * docs/gst/tmpl/gstmd5sink.sgml:
5161         * docs/gst/tmpl/gstreamer-unused.sgml:
5162         * docs/gst/tmpl/gstsearchfuncs.sgml:
5163         * docs/gst/tmpl/gstshaper.sgml:
5164         * docs/gst/tmpl/gstspider.sgml:
5165         * docs/gst/tmpl/gsttee.sgml:
5166         * docs/gst/tmpl/gstutils.sgml:
5167         * docs/gst/tmpl/gstvalue.sgml:
5168         * docs/gst/tmpl/gstxml.sgml:
5169         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
5170         and we don't support it.
5171         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
5172         (gst_use_threads), (gst_has_threads): same
5173         * gst/gstthreaddummy.c: same
5174         * gst/autoplug/gstspider.c: Make gst_spider_details static.
5175         * gst/autoplug/gstspider.h: same
5176         * gst/elements/gstaggregator.h: Remove bogus function from header
5177         * gst/elements/gstfakesink.h: same
5178         * gst/elements/gstfakesrc.h: same
5179         * gst/elements/gstmd5sink.h: same
5180         * gst/elements/gstshaper.h: same
5181         * gst/elements/gsttee.h: same
5182         * gst/gstbin.c: doc fixes
5183         * gst/gstbin.h: Remove unused definition.
5184         * gst/gstbuffer.c: doc fixes
5185         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
5186         * gst/gstfilter.c: doc fixes
5187         * gst/gsttag.c: doc fixes
5188         * gst/gstvalue.c: doc fixes
5189
5190 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5191
5192         * docs/pwg/advanced-types.xml:
5193           Document typefinding.
5194         * docs/pwg/other-oneton.xml:
5195           Document one-to-n elements, demuxers and parsers.
5196
5197 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
5198
5199         reviewed by: David Schleef  <ds@schleef.org>
5200
5201         * configure.ac: Check bison version (bug #127838)
5202
5203 2004-03-25  David Schleef  <ds@schleef.org>
5204
5205         * docs/gst/gstreamer-docs.sgml: More fine tuning.
5206         * docs/gst/gstreamer-sections.txt:
5207         * docs/gst/tmpl/gstautoplug.sgml:
5208         * docs/gst/tmpl/gststaticautoplug.sgml:
5209         * docs/gst/tmpl/gststaticautoplugrender.sgml:
5210         * docs/gst/tmpl/gstutils.sgml:
5211         * docs/gst/tmpl/gstxml.sgml:
5212
5213 2004-03-24  David Schleef  <ds@schleef.org>
5214
5215         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
5216         manual being such complete crap, that I decided to do major
5217         hacking of it.  This checkin replaces any fine tuning that
5218         may have been done previously, with the benefit of actually
5219         being complete for much of the API that was changed since
5220         0.6.  Further fine tuning will occur shortly.  (bug #134721)
5221         * docs/gst/gstreamer-sections.txt:
5222         * docs/gst/tmpl/GstBin.sgml:
5223         * docs/gst/tmpl/GstBuffer.sgml:
5224         * docs/gst/tmpl/GstCaps.sgml:
5225         * docs/gst/tmpl/GstClock.sgml:
5226         * docs/gst/tmpl/GstCompat.sgml:
5227         * docs/gst/tmpl/GstData.sgml:
5228         * docs/gst/tmpl/GstElement.sgml:
5229         * docs/gst/tmpl/GstEvent.sgml:
5230         * docs/gst/tmpl/GstIndex.sgml:
5231         * docs/gst/tmpl/GstStructure.sgml:
5232         * docs/gst/tmpl/GstTag.sgml:
5233         * docs/gst/tmpl/cothreads.sgml:
5234         * docs/gst/tmpl/cothreads_compat.sgml:
5235         * docs/gst/tmpl/gettext.sgml:
5236         * docs/gst/tmpl/grammar.tab.sgml:
5237         * docs/gst/tmpl/gst-i18n-app.sgml:
5238         * docs/gst/tmpl/gst-i18n-lib.sgml:
5239         * docs/gst/tmpl/gst.sgml:
5240         * docs/gst/tmpl/gst_private.sgml:
5241         * docs/gst/tmpl/gstaggregator.sgml:
5242         * docs/gst/tmpl/gstarch.sgml:
5243         * docs/gst/tmpl/gstatomic.sgml:
5244         * docs/gst/tmpl/gstatomic_impl.sgml:
5245         * docs/gst/tmpl/gstbin.sgml:
5246         * docs/gst/tmpl/gstbuffer.sgml:
5247         * docs/gst/tmpl/gstbufferstore.sgml:
5248         * docs/gst/tmpl/gstcaps.sgml:
5249         * docs/gst/tmpl/gstclock.sgml:
5250         * docs/gst/tmpl/gstcompat.sgml:
5251         * docs/gst/tmpl/gstconfig.sgml:
5252         * docs/gst/tmpl/gstcpu.sgml:
5253         * docs/gst/tmpl/gstdata.sgml:
5254         * docs/gst/tmpl/gstdata_private.sgml:
5255         * docs/gst/tmpl/gstelement.sgml:
5256         * docs/gst/tmpl/gstenumtypes.sgml:
5257         * docs/gst/tmpl/gsterror.sgml:
5258         * docs/gst/tmpl/gstevent.sgml:
5259         * docs/gst/tmpl/gstfakesink.sgml:
5260         * docs/gst/tmpl/gstfakesrc.sgml:
5261         * docs/gst/tmpl/gstfilesink.sgml:
5262         * docs/gst/tmpl/gstfilter.sgml:
5263         * docs/gst/tmpl/gstindex.sgml:
5264         * docs/gst/tmpl/gstinfo.sgml:
5265         * docs/gst/tmpl/gstinterface.sgml:
5266         * docs/gst/tmpl/gstlog.sgml:
5267         * docs/gst/tmpl/gstmacros.sgml:
5268         * docs/gst/tmpl/gstmarshal.sgml:
5269         * docs/gst/tmpl/gstmd5sink.sgml:
5270         * docs/gst/tmpl/gstmultifilesrc.sgml:
5271         * docs/gst/tmpl/gstobject.sgml:
5272         * docs/gst/tmpl/gstpad.sgml:
5273         * docs/gst/tmpl/gstparse.sgml:
5274         * docs/gst/tmpl/gstpipeline.sgml:
5275         * docs/gst/tmpl/gstplugin.sgml:
5276         * docs/gst/tmpl/gstpluginfeature.sgml:
5277         * docs/gst/tmpl/gstqueue.sgml:
5278         * docs/gst/tmpl/gstreamer-unused.sgml:
5279         * docs/gst/tmpl/gstregistry.sgml:
5280         * docs/gst/tmpl/gstregistrypool.sgml:
5281         * docs/gst/tmpl/gstscheduler.sgml:
5282         * docs/gst/tmpl/gstsearchfuncs.sgml:
5283         * docs/gst/tmpl/gstshaper.sgml:
5284         * docs/gst/tmpl/gstspider.sgml:
5285         * docs/gst/tmpl/gstspideridentity.sgml:
5286         * docs/gst/tmpl/gststructure.sgml:
5287         * docs/gst/tmpl/gstsystemclock.sgml:
5288         * docs/gst/tmpl/gsttag.sgml:
5289         * docs/gst/tmpl/gsttaginterface.sgml:
5290         * docs/gst/tmpl/gsttee.sgml:
5291         * docs/gst/tmpl/gstthread.sgml:
5292         * docs/gst/tmpl/gsttrace.sgml:
5293         * docs/gst/tmpl/gsttrashstack.sgml:
5294         * docs/gst/tmpl/gsttypefind.sgml:
5295         * docs/gst/tmpl/gsttypes.sgml:
5296         * docs/gst/tmpl/gsturi.sgml:
5297         * docs/gst/tmpl/gsturitype.sgml:
5298         * docs/gst/tmpl/gstutils.sgml:
5299         * docs/gst/tmpl/gstvalue.sgml:
5300         * docs/gst/tmpl/gstversion.sgml:
5301         * docs/gst/tmpl/gstxml.sgml:
5302         * docs/gst/tmpl/gstxmlregistry.sgml:
5303         * docs/gst/tmpl/gthread-cothreads.sgml:
5304         * docs/gst/tmpl/types.sgml:
5305
5306 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5307
5308         * docs/pwg/other-sink.xml:
5309         * docs/pwg/other-source.xml:
5310           Documentation on how to write source and sink elements. Other
5311           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
5312           manager, autoplugger) are all still pending.
5313
5314 2004-03-25  Benjamin Otte  <otte@gnome.org>
5315
5316         * testsuite/elements/Makefile.am:
5317         * testsuite/elements/gst-compprep-check:
5318           add check to make sure gst-compprep works
5319         * testsuite/elements/gst-inspect-check.in:
5320           improve initialization output
5321         * testsuite/Makefile.am:
5322         * testsuite/gst-inspect-check:
5323           remove old file
5324
5325 2004-03-24  David Schleef  <ds@schleef.org>
5326
5327         * testsuite/elements/Makefile.am:
5328         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
5329         to the testsuite.
5330
5331 2004-03-24  Benjamin Otte  <otte@gnome.org>
5332
5333         * libs/gst/control/dparam.c: (gst_dparam_attach),
5334         (gst_dparam_detach):
5335         * libs/gst/control/dparammanager.c: (gst_dpman_init):
5336           fix lvalue casts for real
5337
5338 2004-03-24  Benjamin Otte  <otte@gnome.org>
5339
5340         * gst/schedulers/gstbasicscheduler.c:
5341         (gst_basic_scheduler_src_wrapper):
5342         * gst/schedulers/gstoptimalscheduler.c:
5343         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5344         (pad_clear_queued), (gst_opt_scheduler_add_element),
5345         (gst_opt_scheduler_remove_element):
5346           fix GStreamer to not have issues with lvalue casts anymore (fixes
5347           #136841)
5348
5349 2004-03-24  Benjamin Otte  <otte@gnome.org>
5350
5351         * gst/gstelement.c:
5352           add documentation about a gobject quirk where the object hasn't the
5353           correct class pointer set on initialization
5354         * gst/schedulers/gstbasicscheduler.c:
5355         (gst_basic_scheduler_src_wrapper):
5356           make sure to not run into an infinite loop
5357
5358 2004-03-22  Benjamin Otte  <otte@gnome.org>
5359
5360         * gst/gstutils.c: (gst_util_dump_mem):
5361         * gst/gstutils.h:
5362           first argument of gst_util_dump_mem should be const
5363
5364 2004-03-22  Johan Dahlin  <johan@gnome.org>
5365
5366         * gst/gstvalue.h: Clean up a little bit.
5367
5368 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
5369
5370         reviewed by Benjamin Otte  <otte@gnome.org>
5371
5372         * gst/autoplug/gstspider.c: (gst_spider_dispose):
5373         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
5374         (gst_aggregator_class_init), (gst_aggregator_init):
5375         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
5376         (gst_filesrc_dispose), (gst_filesrc_set_location):
5377         * gst/elements/gstidentity.c: (gst_identity_finalize),
5378         (gst_identity_class_init), (gst_identity_chain):
5379         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
5380         * gst/elements/gststatistics.c: (gst_statistics_finalize),
5381         (gst_statistics_class_init):
5382         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
5383         (gst_tee_get_property):
5384           clean up used memory in this elements correctly on teardown (closes
5385           #137279)
5386
5387 2004-03-20  Colin Walters  <walters@redhat.com>
5388
5389         * gst/registries/gstxmlregistry.c:
5390         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
5391         registry saving atomic.
5392
5393 2004-03-20  Colin Walters  <walters@redhat.com>
5394
5395         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
5396         Just use
5397         access() instead of actually creating and deleting files.
5398
5399 2004-03-18  David Schleef  <ds@schleef.org>
5400
5401         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
5402         (bug #137625)
5403
5404 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
5405
5406         * po/sv.po: updated translation (Christian Rose)
5407
5408 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
5409
5410         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
5411         (gst_filesink_get_query_types), (_do_init),
5412         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
5413           return FALSE silently
5414         * po/af.po: updated translation (Petri Jooste)
5415
5416 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
5417
5418         * Makefile.am:
5419         * configure.ac:
5420           dist common properly
5421         * po/af.po:
5422         * po/fr.po:
5423         * po/nl.po:
5424         * po/sr.po:
5425         * po/sv.po:
5426           refreshing translations
5427
5428 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
5429
5430         * po/LINGUAS:
5431         * po/sv.po:
5432         * po/af.po:
5433           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
5434
5435 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
5436
5437         * Makefile.am: use common/release.mak
5438
5439 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
5440
5441         * docs/faq/gst-uninstalled:
5442           adding gst-monkeysaudio to the list of possible plugin dirs
5443
5444 2004-03-16  David Schleef  <ds@schleef.org>
5445
5446         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
5447         (gst_init_check_with_popt_table):  Fix some gettext strings to
5448         make them easier to translate.  Required making the strings
5449         non-const.
5450
5451 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5452
5453         * configure.ac: bump nano to 1
5454
5455 === release 0.8.0 ===
5456
5457 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5458
5459         * configure.ac: release 0.8.0, "Executive Slacks"
5460
5461 2004-03-16  Johan Dahlin  <johan@gnome.org>
5462
5463         * gst/schedulers/gstoptimalscheduler.c
5464         (gst_opt_scheduler_pad_unlink): Remove double ;,
5465         spotted by Scott Wheeler
5466
5467 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5468
5469         * configure.ac: bump libtool version
5470
5471 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5472
5473         * gst/gstcaps.h:
5474         * gst/gststructure.h:
5475           add reserved padding
5476
5477 2004-03-15  Benjamin Otte  <otte@gnome.org>
5478
5479         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
5480           set the first parameter for select call correctly.
5481           (fixes #137230)
5482
5483 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5484
5485         * *.c,*.h: don't mix tabs and spaces
5486
5487 2004-03-15  Johan Dahlin  <johan@gnome.org>
5488
5489         * gst/schedulers/gstoptimalscheduler.c
5490         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
5491         crash on MPEG playback. My boolean arithmetic is a bit rusty.
5492
5493         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
5494         
5495 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5496
5497         * testsuite/Rules:
5498           fix gst-register rules
5499
5500 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5501
5502         * testsuite/Rules:
5503           use versioned gst-register
5504
5505 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5506
5507         * docs/libs/gstreamer-libs-sections.txt:
5508           remove </SUBSECTION>
5509         * gst/gstplugin.c:
5510         * gst/gstregistry.c: (gst_registry_add_plugin):
5511         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
5512         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
5513           add debugging and fix some comment blocks
5514
5515 2004-03-15  Johan Dahlin  <johan@gnome.org>
5516
5517         * *.h: Revert indent changes.
5518         
5519 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5520
5521         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
5522           g_error_free the g_error
5523         * tools/gst-feedback-m.m:
5524           check for other versions of gstreamer
5525         * tools/gst-indent:
5526           use sh, not bash
5527
5528 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5529
5530         * tools/gst-register.c: do not spill paths when registries are not
5531           writable, until we fix the "user running gst-register" case.
5532
5533 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5534
5535         * *.c, *.h: commit of gst-indent run on core
5536
5537 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5538
5539         * tools/gst-indent:
5540         * tools/Makefile.am:
5541           add our indentation style as a script
5542
5543 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5544
5545         * po/sr.po:
5546         * po/LINGUAS:
5547           added Serbian translation
5548
5549 2004-03-13  Benjamin Otte  <otte@gnome.org>
5550
5551         * gst/gstelement.c:
5552           add documentation note about gst_element_found_tags_for_pad not
5553           being usable in getfunctions. (see #137042)
5554
5555 2004-03-12  David Schleef  <ds@schleef.org>
5556
5557         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
5558         change API right now!  Readd gst_caps_is_simple() macro.
5559         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
5560         uninitialized variable.  I'd bet this caused crashes.
5561         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
5562
5563 2004-03-12  Johan Dahlin  <johan@gnome.org>
5564
5565         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
5566         * gst/gstcaps.h: Clean up
5567
5568         * gst/gst.c (init_post): call gst_caps_get_type() instead of
5569         _gst_caps_initalize()
5570
5571         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
5572         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
5573
5574         * gst/gststructure.c (gst_structure_get_type): Ditto
5575
5576         * gst/gststructure.h: Ditto
5577         
5578 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5579
5580         * gst/gstqueue.c: (gst_queue_init):
5581           Reset default max. values in queues. Reason is simply to avoid
5582           braindead use. If you want wider values, use the properties. The
5583           default is supposed to always work. Wider values would make this
5584           beast a memory hog by default (250 full-PAL RGB32 video frames?
5585           That's 440 MB! No thank you).
5586
5587 2004-03-10  David Schleef  <ds@schleef.org>
5588
5589         * tools/gst-run.c: (main):  Fix crash when no relevant tools
5590         were found.  (bug #136793)
5591
5592 2004-03-10  Johan Dahlin  <johan@gnome.org>
5593
5594         * gst/schedulers/gstoptimalscheduler.c
5595         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
5596         links to elements within the same group, so we can finally remove
5597         that annoying warning. Refactor the code a little bit
5598         (group_dec_links_for_element): Split out
5599
5600 2004-03-09  David Schleef  <ds@schleef.org>
5601
5602         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
5603         (bug #134863)
5604
5605 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5606
5607         * configure.ac: first bug fix due to major/minor bump
5608
5609 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5610
5611         * configure.ac: bump nano to 1
5612
5613 === release 0.7.6 ===
5614
5615 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5616
5617         * NEWS:
5618         * RELEASE:
5619         * configure.ac:
5620           releasing 0.7.6, "Almost"
5621         * po/fr.po:
5622         * po/nl.po:
5623         * tools/Makefile.am:
5624         * tools/gst-feedback-m.m:
5625           unversioned source
5626
5627 2004-03-09  Johan Dahlin  <johan@gnome.org>
5628
5629         Reviewed by: Thomas Vander Stichele
5630
5631         * gst/gstelement.c (gst_element_class_init): register second
5632         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
5633         language bindings can (de)marshall correctly.
5634
5635         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
5636
5637         * gst/gsterror.c (gst_g_error_get_type): New function
5638
5639         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
5640         with VOID:OBJECT,OBJECT,STRING 
5641
5642 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
5643
5644         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5645         Free a leaked g_timer on early returns.
5646
5647 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5648
5649         * docs/pwg/advanced-types.xml:
5650           Add cinepak description.
5651
5652 2004-03-07  David Schleef  <ds@schleef.org>
5653
5654         * docs/random/mimetypes:  Added cinepak description
5655
5656 2004-03-07  Andy Wingo  <wingo@pobox.com>
5657
5658         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
5659
5660         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
5661         there are no links to other groups when a group is destroyed.
5662         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
5663         removed from a group, make sure the link count to elements linked
5664         to other pads is appropriately decremented. This really fixes
5665         #135672.
5666
5667         The 1.60->1.61 patch has been reapplied in light of this fix.
5668
5669         * gst/gstelement.c (gst_element_dispose): Really protect against
5670         multiple invocations this time.
5671
5672 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5673
5674         * docs/gst/gstreamer-sections.txt:
5675         * docs/gst/tmpl/gsttag.sgml:
5676           remove some deprecated functions, document some existing ones
5677         * gst/gsttag.c: (gst_tag_get_flag):
5678         * gst/gsttag.h:
5679           add accessor function
5680
5681 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5682
5683         * docs/gst/gstreamer-sections.txt:
5684         * docs/gst/tmpl/gsttag.sgml:
5685         * docs/gst/tmpl/gstxml.sgml:
5686         * gst/gsttag.c: (gst_tag_get_flag):
5687         * gst/gsttag.h:
5688
5689 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
5690
5691         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
5692         leak
5693
5694 2004-03-05  David Schleef  <ds@schleef.org>
5695
5696         * REQUIREMENTS: Add bison and flex.
5697         * configure.ac: Fix comment about bison.
5698         * docs/random/ds/0.9-suggested-changes: yer ma
5699         * tools/gst-inspect.c: (print_element_info):  Fix warning.
5700
5701 2004-03-05  Benjamin Otte  <otte@gnome.org>
5702
5703         * gst/gstelement.c: (gst_element_error_full):
5704           revert recent recursive state changing commit - messing with other
5705           elements' states is evil and should be done by apps only.
5706
5707 2004-03-05  Benjamin Otte  <otte@gnome.org>
5708
5709         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
5710           check for empty intersection instead of NULL caps
5711         (gst_element_get_compatible_pad_filtered):
5712           remove old workaround that is only a bug nowadays
5713
5714 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5715
5716         * gst/gstelement.c: (gst_element_error_full):
5717           make elements try to recursively change state to PAUSED on all
5718           parents after an error to suppress ensuing warnings
5719         * gst/parse/grammar.y:
5720           make it check if it was able to sync the state, and throw an error
5721           if not, so stuff like
5722           oggdemux ! vorbisdec ! osssink gets caught
5723
5724 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5725
5726         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
5727           it contains lib64; use AS_AC_EXPAND to handle it properly
5728
5729 2004-03-05  David Schleef  <ds@schleef.org>
5730
5731         * gst/gstcpuid_i386.s:  Remove unused code
5732         * libs/gst/getbits/getbits.c: (gst_getbits_init),
5733         (gst_getbits_newbuf): Remove MMX code
5734         * libs/gst/getbits/getbits.h: Remove MMX code
5735
5736 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
5737
5738         * debian/.cvsignore:
5739         * debian/README.Debian:
5740         * debian/changelog:
5741         * debian/control:
5742         * debian/control.in:
5743         * debian/copyright:
5744         * debian/gstreamer-core-libs-dev.files:
5745         * debian/gstreamer-core-libs.files:
5746         * debian/gstreamer-core.files:
5747         * debian/gstreamer-core.postinst:
5748         * debian/gstreamer-core.postrm:
5749         * debian/gstreamer-doc.files:
5750         * debian/gstreamer-doc.links:
5751         * debian/gstreamer-doc.lintian:
5752         * debian/gstreamer-runtime.files:
5753         * debian/gstreamer-runtime.manpages:
5754         * debian/gstreamer-runtime.postinst:
5755         * debian/gstreamer-runtime.postrm:
5756         * debian/gstreamer-tools.files:
5757         * debian/gstreamer-tools.manpages:
5758         * debian/libgstreamer-dev.files:
5759         * debian/libgstreamer0.4.1.files:
5760         * debian/libgstreamerVERSION.files:
5761         * debian/rules:
5762         Debian package info not maintained here.
5763
5764 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
5765
5766         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
5767         * gst/gstbin.c: (gst_bin_class_init):
5768         * gst/gstelement.c: (gst_element_class_init):
5769         * gst/gstindex.c: (gst_index_class_init):
5770         * gst/gstobject.c: (gst_object_class_init),
5771         (gst_signal_object_class_init):
5772         * gst/gstpad.c: (gst_pad_template_class_init):
5773         * gst/gstregistry.c: (gst_registry_class_init):
5774         * gst/gsturi.c: (gst_uri_handler_base_init):
5775         * gst/gstxml.c: (gst_xml_class_init):
5776         * libs/gst/control/dparam.c: (gst_dparam_class_init):
5777         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
5778           make all signal names use dashes instead of underscore
5779
5780 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5781
5782         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
5783
5784 2004-03-03  Benjamin Otte  <otte@gnome.org>
5785
5786         * gst/schedulers/gstoptimalscheduler.c:
5787           revert last commit by Andy Wingo. It causes segfaults on unreffing
5788           in Rhythmbox. (see bug #135672)
5789
5790 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
5791
5792         * po/fr.po: fix typo
5793
5794 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
5795
5796         * tools/gst-inspect.c: (main): 
5797         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
5798
5799 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5800
5801         * configure.ac:
5802           get GLIB_ONLY and POPT flags for the nonversioned binaries
5803         * tools/Makefile.am:
5804           use them
5805
5806 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5807
5808         * gst/gst.c: (init_post):
5809           change so that GST_REGISTRY now is where the global registry gets
5810           saved, since that is where plugins now get attached to first, and
5811           spilled over to the user registry.  Note that in the case of using
5812           GST_REGISTRY env var, we don't want to affect any real registries
5813           beyond the one given by this var, and thus we don't set a user
5814           registry to spill to.  So make sure GST_REGISTRY is writable.
5815
5816 2004-03-01  David Schleef  <ds@schleef.org>
5817
5818         * AUTHORS:  Added some names.  Add yourself if you're missing.
5819
5820 2004-03-01  David Schleef  <ds@schleef.org>
5821
5822         * MAINTAINERS: Add
5823
5824 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
5825
5826         * configure.ac:
5827           remove whitespace
5828         * docs/gst/tmpl/gstbuffer.sgml:
5829         * docs/gst/tmpl/gstdata.sgml:
5830         * docs/gst/tmpl/gstreamer-unused.sgml:
5831         * docs/gst/tmpl/gstxml.sgml:
5832           doc update
5833         * docs/manuals.mak:
5834           add a FIXME
5835         * docs/pwg/intro-preface.xml:
5836         * docs/pwg/pwg.xml:
5837           remove GNOME
5838         * gst/gst.c: (init_post):
5839           try GST_PLUGIN_PATH paths for the _global_registry first
5840         * gst/gstelement.h:
5841           add the error message as well, otherwise (null) debug info doesn't
5842           make much sense
5843         * tools/gst-register.c: (main):
5844           spill paths to next registry if this registry is not writable
5845         * po/fr.po:
5846         * po/nl.po:
5847           translation updates
5848
5849 2004-03-01  Johan Dahlin  <johan@gnome.org>
5850
5851         * gst/gstbuffer.c (_gst_buffer_initialize): 
5852         * gst/gstdata.c (gst_data_get_type): 
5853         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
5854         instead of ref, since some applications that uses GBoxed
5855         routines depends on a function that actually returns a copy.
5856
5857 2004-02-27  Benjamin Otte  <otte@gnome.org>
5858
5859         * gst/gstbuffer.h:
5860           remove gst_buffer_free, use gst_data_unref
5861         * gst/gstdata.c: (gst_data_get_type):
5862           use refcounting in GstData GBoxed registration
5863         * gst/gstdata.h:
5864           remove gst_data_free, use gst_data_unref
5865
5866 2004-02-27  Johan Dahlin  <johan@gnome.org>
5867
5868         * gst/gstdata.c (gst_data_get_type): New function, register
5869         GstData as a GBoxed type.
5870
5871         * gst/gstdata.h (GST_TYPE_DATA): New macro
5872
5873 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
5874
5875         * Makefile.am:
5876         * gstreamer.spec.in:
5877           put back RELEASE
5878         * gst/Makefile.am:
5879           clean up non-disting of built files
5880         * testsuite/debug/commandline.c:
5881           test fix for option rename
5882
5883 2004-02-26  David Schleef  <ds@schleef.org>
5884
5885         * configure.ac:  We don't really need glib-2.3.  Also remove
5886         some unneeded checks for library functions.
5887         * gst/Makefile.am:  Instead, we need to not dist files created
5888         by glib-genmarshal.
5889
5890 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5891
5892         * configure.ac:
5893           bump glib required version to 2.3.0 for g_value_takes_boxed
5894
5895  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
5896
5897         * common/m4/gst-docs.m4
5898         change flavour text from enable to disable as enable is our default
5899         closes bug Bug 135304
5900
5901 === release 0.7.5 ===
5902  
5903  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5904  
5905         * NEWS:
5906           instate NEWS file
5907         * Makefile.am:
5908         * gstreamer.spec.in:
5909         * RELEASE:
5910           put back release
5911         * configure.ac:
5912         * docs/random/release:
5913           more updates
5914
5915 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5916
5917         * gst/gsttag.c: (_gst_tag_initialize):
5918         * po/fr.po:
5919         * po/nl.po:
5920           remove hyphen from codec tags
5921
5922 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5923
5924         * gst/parse/Makefile.am:
5925           fix dependency so that a make from a clean build works the first
5926           time
5927
5928 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5929
5930         * docs/random/release:
5931           update release strategy
5932         * po/fr.po:
5933           auto-update po file
5934         * po/nl.po:
5935           update dutch translation
5936
5937 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5938
5939         * docs/manual/debugging.xml:
5940         fix manual for new debugging system
5941
5942 2004-02-25  Andy Wingo  <wingo@pobox.com>
5943
5944         * gst/gstpad.c (gst_pad_link_prepare): Re-add
5945         gst_pad_link_prepare. Please email the list with specific reasons
5946         for reverting.
5947
5948 2004-02-24  Andy Wingo  <wingo@pobox.com>
5949
5950         * gst/gstelement.c (gst_element_dispose): Protect against multiple
5951         invocations.
5952
5953         * gst/schedulers/gstoptimalscheduler.c:
5954         I added a mess of prototypes at the top of the file by way of
5955         documentation. Some of the operations on chains and groups were
5956         re-organized.
5957
5958         (create_group): Added a type argument so if the group is enabled,
5959         the setup_group_scheduler knows what to do.
5960         (group_elements): Added a type argument here, too, to be passed on
5961         to create_group.
5962         (group_element_set_enabled): If an unlinked PLAYING element is
5963         added to a bin, we have to create a new group to hold the element,
5964         and this function will be called before the group is added to the
5965         chain. Thus we have a valid case for group->chain==NULL. Instead
5966         of calling chain_group_set_enabled, just set the flag on the group
5967         (the chain's status will be set when the group is added to it).
5968         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
5969         Setup the group scheduler when the group is enabled, not
5970         specifically when an element goes PAUSED->PLAYING. This means
5971         PLAYING elements can be added, linked, and scheduled into a
5972         PLAYING pipeline, as was intended.
5973         (add_to_group): Don't ref the group twice. I don't know when this
5974         double-ref got in here. Removing it has the potential to cause
5975         segfaults if other parts of the scheduler are buggy. If you find
5976         that the scheduler is segfaulting for you, put in an extra ref
5977         here and see if that hacks over the underlying issue. Of course,
5978         then find out what code is unreffing a group it doesn't own...
5979         (create_group): Make the extra refcount floating, and remove it
5980         after adding the element. This means that...
5981         (unref_group): Destroy when the refcount reaches 0, not 1, like
5982         every other refcounted object in the known universe.
5983         (remove_from_group): When a group becomes empty, set it to be not
5984         active, and remove it from its chain. Don't unref it again,
5985         there's no floating reference any more.
5986         (destroy_group): We have to remove the group from the chain in
5987         remove_from_group (rather than here) to break refcounting cycles
5988         (the chain always has a ref on the group). So assert that
5989         group->chain==NULL.
5990         (ref_group_by_count): Removed, it was commented out anyway.
5991         (merge_chains): Use the remove_from_chain and add_to_chain
5992         primitives to do the reparenting, instead of rolling our own
5993         implementation.
5994         (add_to_chain): The first non-disabled group in the chain's group
5995         list will be the entry point for the chain. Because buffers can
5996         accumulate in loop elements' peer bufpens, we preferentially
5997         schedule loop groups before get groups to avoid unnecessary
5998         execution of get-based groups when the bufpens are already full.
5999         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
6000         (get_group_schedule_function): Ditto.
6001         (loop_group_schedule_function): Ditto.
6002         (gst_opt_scheduler_loop_wrapper): Ditto.
6003         (gst_opt_scheduler_iterate): Ditto.
6004
6005         I understand the opt scheduler now, yippee!
6006
6007         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
6008         (gst_pad_get_name, gst_pad_set_chain_function) 
6009         (gst_pad_set_get_function, gst_pad_set_event_function) 
6010         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
6011         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
6012         (gst_pad_set_query_function, gst_pad_get_query_types) 
6013         (gst_pad_get_query_types_default) 
6014         (gst_pad_set_internal_link_function) 
6015         (gst_pad_set_formats_function, gst_pad_set_link_function) 
6016         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
6017         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
6018         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
6019         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
6020         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
6021         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
6022         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
6023         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
6024         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
6025         (gst_pad_event_default_dispatch, gst_pad_event_default) 
6026         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
6027         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
6028         (gst_pad_get_formats_default, gst_pad_get_formats): Better
6029         argument checks, and some doc fixes.
6030
6031         (gst_pad_custom_new_from_template): Um, does anyone
6032         use these functions? Actually make a custom pad instead of a
6033         normal one.
6034         (gst_pad_try_set_caps): Transpose some checks.
6035         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
6036         the pad is in negotiation.
6037         (gst_pad_try_relink_filtered): Use pad_link_prepare.
6038         
6039         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
6040
6041         * gst/gstelement.h: 
6042         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
6043         on the list.
6044
6045 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6046
6047         * gst/gstbin.c: (gst_bin_add):
6048           add error for not being able to add elements
6049
6050 2004-02-22  Julien MOUTTE <julien@moutte.net>
6051
6052         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
6053         audio-codec and video-codec.
6054
6055 2004-02-22  Benjamin Otte  <otte@gnome.org>
6056
6057         reported by: Padraig O'Briain <padraig.obriain@sun.com>
6058
6059         * autogen.sh:
6060           replace test -e with test -x for mkinstalldirs to be more portable.
6061           (fixes #134816)
6062
6063 2004-02-22  Benjamin Otte  <otte@gnome.org>
6064
6065         * gst/gstpad.c:
6066           revert last patch from Andy, it makes gst_pad_can_link_filtered much
6067           too noisy
6068         * gst/gsttag.c: (_gst_tag_initialize):
6069         * gst/gsttag.h:
6070           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
6071         * libs/gst/control/dparam.c: (gst_dparam_attach):
6072         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
6073           check that types for attached dparams match
6074
6075 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6076
6077         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
6078         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
6079         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
6080           fix errors
6081
6082 2004-02-20  Andy Wingo  <wingo@pobox.com>
6083
6084         * gst/gstbin.c:
6085         * gst/gstbuffer.c:
6086         * gst/gstplugin.c:
6087         * gst/registries/gstxmlregistry.c: 
6088         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
6089
6090         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
6091         (gst_element_add_pad): DEBUG->INFO, some fixes.
6092         (gst_element_get_compatible_pad_template): Just see if the
6093         templates' caps intersect, not if one is a strict subset of the
6094         other. This conforms more to what gst_pad_link_intersect() does.
6095         (gst_element_class_add_pad_template): Don't memcpy the pad
6096         template, just ref it.
6097         (gst_element_get_compatible_pad_filtered): Clean up debug messages
6098
6099         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
6100         (gst_pad_link_filtered): Debug changes.
6101         (gst_pad_link_prepare): New function, consolidated from
6102         can_link_filtered and link_filtered.
6103
6104         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
6105         look more like that of the functions in gstelement.c
6106
6107         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
6108         object, and return the empty string if object is NULL.
6109
6110         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
6111         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
6112         LOG, not DEBUG. We still get flex info on debug.
6113
6114         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
6115         debug string more verbose.
6116         (plugin_times_older_than): DEBUG->LOG.
6117
6118 2004-02-20  Julien MOUTTE <julien@moutte.net>
6119
6120         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
6121         will emit found_tag for each stream they demux with the codec.
6122
6123 2004-02-20  Benjamin Otte  <otte@gnome.org>
6124
6125         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
6126           copy navigation event correctly. Check freeing tag lists. 
6127         * gst/gstthread.c: (gst_thread_change_state):
6128           don't abort() on state changing mess - it might happen because of
6129           bugs.
6130         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
6131           use boxed functions
6132         * gst/gstvalue.h:
6133           fix GST_VALUE_HOLDS_CAPS
6134
6135 2004-02-19  David Schleef  <ds@schleef.org>
6136
6137         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
6138         and use it for GST_FUNCTION.  (bug #134750)
6139
6140 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6141
6142         * po/fr.po:
6143         * po/nl.po:
6144           updating translations
6145
6146 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6147
6148         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
6149
6150 2004-02-18  kost@imn.htwk-leipzig.de
6151
6152         reviewed by: David Schleef  <ds@schleef.org>
6153
6154         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
6155         for libgstcontrol.
6156
6157 2004-02-18  David Schleef  <ds@schleef.org>
6158
6159         * libs/gst/control/dparam.c: (gst_dparam_class_init):
6160         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
6161         (gst_dpsmooth_new): Additional fixes to get double dparams working.
6162         * tools/gst-inspect.c: (print_element_info): Support dumping of
6163         double dparam information.
6164
6165 2004-02-17  David Schleef  <ds@schleef.org>
6166
6167         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
6168         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
6169         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
6170         Use GST_TYPE_CAPS in signal prototype.
6171         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
6172         Convert GST_TYPE_CAPS to boxed.
6173         * gst/gstelement.c: (gst_element_class_init):
6174         Use GST_TYPE_TAG_LIST in signal prototype.
6175         * gst/gstindex.c: (gst_index_class_init):
6176         * gst/gstindex.h:
6177         Add GST_TYPE_INDEX_ENTRY type.
6178         * gst/gstmarshal.list:
6179         Add necessary marshal types.
6180         * gst/gstpad.c: (gst_real_pad_class_init),
6181         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
6182         (gst_pad_recover_caps_error):
6183         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
6184         * gst/gststructure.c: (_gst_structure_initialize),
6185         (gst_structure_copy), (_gst_structure_copy_conditional):
6186         * gst/gststructure.h:
6187         Convert GST_TYPE_STRUCTURE to boxed.
6188         * gst/gsttag.c: (gst_tag_list_get_type):
6189         * gst/gsttag.h:
6190         Add GST_TYPE_TAG_LIST type.
6191
6192 2004-02-17  Julien MOUTTE  <julien@moutte.net>
6193
6194         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
6195         to what we agreed with david.
6196         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
6197
6198 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6199
6200         * po/nl.po: update translation
6201
6202 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6203
6204         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
6205           throw an error if spider is trying to play a mime type there is
6206           no decoder for
6207         * po/POTFILES.in:
6208           add gst/autoplug/gstspider.c for translation
6209
6210 2004-02-17  Julien MOUTTE  <julien@moutte.net>
6211
6212         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
6213         silently when the pad is negotiating.
6214
6215 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6216
6217         * docs/faq/Makefile.am:
6218           add script to run gstreamer uninstalled 
6219         * docs/faq/faq.xml:
6220         * docs/faq/developing.xml:
6221         * docs/faq/gst-uninstalled:
6222           extract script to run gstreamer uninstalled
6223         * docs/manuals.mak:
6224           add EXTRA_SOURCES variable for Makefile.am's to set to
6225           use additional SOURCE files for the doc build
6226
6227 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6228
6229         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
6230
6231 2004-02-15  Julien MOUTTE  <julien@moutte.net>
6232
6233         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
6234         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
6235         an error was thrown by osssink. Basically a state change failure for
6236         an element in a different scheduling group was considered as
6237         successful, which means that caps nego was going on and weird stuff
6238         happened. Like I wrote in the comment there, if someone wants to
6239         revert that please drop me a mail explaining why because I really see
6240         no point in keeping that broken behaviour there.
6241         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
6242         be empty, we then return NULL which will trigger a nice error when 
6243         pulling from the pad.
6244
6245 2004-02-13  David Schleef  <ds@schleef.org>
6246
6247         * libs/gst/control/dparam.c: (gst_dparam_class_init),
6248         (gst_dparam_get_property), (gst_dparam_set_property),
6249         (gst_dparam_do_update_default):
6250         * libs/gst/control/dparam.h:
6251         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
6252         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
6253         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
6254         (gst_dpsmooth_do_update_double):
6255         * libs/gst/control/dparam_smooth.h:
6256         * libs/gst/control/dparammanager.c:
6257         (gst_dpman_inline_direct_update):
6258         Add support for double dparams.
6259
6260 2004-02-13  David Schleef  <ds@schleef.org>
6261
6262         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
6263         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
6264
6265 2004-02-13  Mattias Wadman  <mattias@sudac.org>
6266
6267         reviewed by: David Schleef  <ds@schleef.org>
6268
6269         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6270         (gst_fdsrc_init), (gst_fdsrc_set_property),
6271         (gst_fdsrc_get_property), (gst_fdsrc_get):
6272         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
6273         and sends an EOS event if file descriptor reading times out.
6274
6275 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6276
6277         * configure.ac:
6278           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
6279
6280 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6281
6282         * configure.ac: pass required libxml version as argument
6283         (bug reported by Christophe Fergeau)
6284
6285 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6286   
6287         * docs/gst/gstreamer-docs.sgml:
6288         * docs/gst/tmpl/gstxml.sgml:
6289         * docs/libs/gstreamer-libs-docs.sgml:
6290           version API docs
6291
6292 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6293
6294         * gst/gstinfo.c:
6295         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
6296         (gst_registry_pool_feature_filter):
6297         * gst/gstthread.c: (gst_thread_class_init):
6298         * gst/gstvalue.c:
6299           add includes exposed by building without libxml
6300         * gst/indexers/Makefile.am:
6301           do not build fileindex when LOADSAVE disabled; we should have
6302           a better libxml check later since fileindex depends on xml, not
6303           LOADSAVE or REGISTRY
6304         * libs/gst/control/Makefile.am:
6305           link with m
6306         * tools/Makefile.am:
6307           fix wrong source code for gst-xmlinspect
6308
6309 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6310
6311         * configure.ac:
6312           fix gcov help output
6313           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
6314         * docs/random/release:
6315           some updated releasing notes
6316         * gstreamer.spec.in:
6317           more updates
6318
6319 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6320
6321         * docs/faq/faq.xml:
6322         * docs/manual/manual.xml:
6323         * docs/pwg/pwg.xml:
6324         * docs/pwg/titlepage.xml:
6325           put version in documentation
6326
6327 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6328
6329         * tools/Makefile.am: fix man page installation
6330
6331 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6332
6333         * configure.ac:
6334           don't check for libxml when load/save and registry disabled (#105844)
6335         * gstreamer.spec.in:
6336           sync with fedora candidate spec
6337
6338 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6339
6340         * po/fr.po:
6341         * po/nl.po:
6342           replace multidisksrc with multifilesrc
6343
6344 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6345
6346         * po/POTFILES.in:
6347           update to multidisksrc => multifilesrc file renaming (#134145)
6348
6349 2004-02-11  David Schleef  <ds@schleef.org>
6350
6351         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
6352         * docs/gst/tmpl/gstpadtemplate.sgml: same
6353         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
6354         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
6355         fixing dance.
6356         * gst/gstutils.c: Remove disabled code that uses GstProps.
6357         * gst/registries/gstxmlregistry.h: same
6358         * docs/random/ds/0.9-suggested-changes: random notes
6359
6360 2004-02-11  kost@imn.htwk-leipzig.de
6361
6362         reviewed by: David Schleef  <ds@schleef.org>
6363
6364         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
6365         initialisation of clock (bug #134128)
6366
6367 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6368
6369         * configure.ac:
6370         * gst/elements/Makefile.am:
6371         * gst/elements/gstelements.c:
6372         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6373         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
6374         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
6375         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
6376         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
6377         * gst/elements/gstmultifilesrc.h:
6378           rename multidisksrc to multifilesrc (part of #122200)
6379
6380 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6381
6382         * docs/manuals.mak:
6383           fix automake complaints
6384         * gst-element-check.m4:
6385           fix unquotedness
6386
6387 2004-02-11  David Schleef  <ds@schleef.org>
6388
6389         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
6390         * gst/gstatomic_impl.h: Disable sparc implementation.
6391
6392 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6393
6394         * gst-element-check.m4:
6395           fix underquoted macros as reported by automake 1.8.x (#133800)
6396         * configure.ac:
6397           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
6398           by autopoint (fixes #132996)
6399
6400 2004-02-10  Andy Wingo  <wingo@pobox.com>
6401
6402         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
6403         way to do inheritance.
6404         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
6405         (gst_pad_get_query_types, gst_pad_get_query_types_default):
6406         Routine docs.
6407         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
6408         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
6409         doc.
6410         (gst_pad_unlink, gst_pad_is_linked): Docs.
6411         (gst_pad_renegotiate): A brief description of capsnego.
6412         (gst_pad_try_set_caps): Document.
6413         (gst_pad_try_set_caps_nonfixed): Document.
6414         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
6415         (gst_pad_set_parent): Deprecated (although not out of the API).
6416         (gst_pad_get_parent): Deprecated, although many plugins use this.
6417         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
6418         are private and will go away in 0.9.
6419         (gst_pad_perform_negotiate): Doc.
6420         (gst_pad_link_unnegotiate): I think this is meant to be static.
6421         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
6422         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
6423         (gst_pad_get_peer): Doc updates.
6424         (gst_pad_caps_change_notify): Doc.
6425         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
6426         (gst_ghost_pad_new): Doc fixes.
6427
6428         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
6429         (gst_object_check_uniqueness): 
6430
6431         * gst/gstelement.c (gst_element_add_pad) 
6432         (gst_element_add_ghost_pad, gst_element_remove_pad) 
6433         (gst_element_remove_ghost_pad, gst_element_get_pad) 
6434         (gst_element_get_static_pad, gst_element_get_pad_list) 
6435         (gst_element_class_get_pad_template_list) 
6436         (gst_element_class_get_pad_template): Work on the docs.
6437         (gst_element_get_pad_template_list): Uses the class method.
6438         (gst_element_get_compatible_pad_template): Docs, and consolidate
6439         some test conditions. 
6440         (gst_element_get_pad_from_template): New static function.
6441         (gst_element_request_compatible_pad): Docs, and work with
6442         non-request compatible templates. 
6443         (gst_element_get_compatible_pad_filtered): Docs and remove
6444         redundant checks.
6445         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
6446         (gst_element_link_filtered, gst_element_link_many) 
6447         (gst_element_link, gst_element_link_pads) 
6448         (gst_element_unlink_many): Docs.
6449
6450 2004-02-05  Andy Wingo  <wingo@pobox.com>
6451
6452         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
6453         s/pointer/boxed/.
6454
6455         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
6456
6457         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
6458         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
6459         with the type=GST_TYPE_CAPS. This allows language bindings to know
6460         what kind of data they're dealing with.
6461
6462         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
6463         to NULL when g_value_init is called. GstCaps, which rolls its own
6464         type implementation, now does the same instead of allocating empty
6465         caps.
6466         (_gst_caps_initialize, _gst_caps_collect_value,
6467         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
6468         table methods. This allows G_VALUE_COLLECT to work.
6469
6470 2004-02-05  Andy Wingo  <wingo@pobox.com>
6471
6472         * configure.ac:
6473         * testsuite/Makefile.am (SUBDIRS): 
6474         * testsuite/ghostpads/Makefile.am: 
6475         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
6476
6477         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
6478         These two routines are the only ones that set
6479         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
6480         pad template. They should be made static, depending on ABI needs.
6481         (gst_real_pad_dispose): Handle the case of ghost pads without a
6482         parent. Assert after dealing with ghost pads that the ghost pad
6483         list is empty.
6484         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
6485         set after creation.
6486         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
6487         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
6488         functions. set_property will call add_ghost_pad/remove_ghost_pad
6489         as appropriate.
6490         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
6491
6492         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
6493         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
6494         (gst_element_remove_pad): Handle ghost pads as well.
6495         (gst_element_remove_ghost_pad): Deprecated (could be removed,
6496         depending on API-stability needs).
6497
6498 2004-02-05  Andy Wingo  <wingo@pobox.com>
6499
6500         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
6501         of course they're const
6502
6503 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6504
6505         * tools/Makefile.am:
6506         * tools/gst-feedback:
6507         * tools/gst-feedback-0.7:
6508           make gst-feedback versioned too for consistency
6509
6510 2004-02-11  David Schleef  <ds@schleef.org>
6511
6512         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
6513         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
6514
6515 2004-02-10  Julien MOUTTE <julien@moutte.net>
6516
6517         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
6518         the structure does not contain a valid tag list. Adding a safety check
6519         to remove a noisy warning in that case.
6520
6521 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6522
6523         * gst/gst.c: fix name to be in line with others
6524
6525 2004-02-09  Julien MOUTTE <julien@moutte.net>
6526
6527         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
6528         not shout that loud when len is 0. Just return 0 silently.
6529
6530 2004-02-09  Julien MOUTTE  <julien@moutte.net>
6531
6532         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
6533         because data_unref has one and I prefer the debug to be symetric.
6534         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
6535         were refed when added to the queue and unrefed only once when the queue
6536         was flushed. Now the flush handler unref the buffers two times : first
6537         unref for the ref added when pushing in the queue's tail and second
6538         unref to destroy the flushed buffer.
6539
6540 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6541
6542         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
6543
6544 2004-02-06  David Schleef  <ds@schleef.org>
6545
6546         * docs/random/ds/0.9-suggested-changes: Random ramblings
6547         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
6548         to int before printing.
6549         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
6550         * gst/parse/parse.l: same.  See bug #129600
6551
6552 2004-02-06  David Schleef  <ds@schleef.org>
6553
6554         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
6555         (gst_index_add_entry), (gst_index_add_associationv),
6556         (gst_index_add_association): Add gst_index_add_associationv()
6557         and clean up gst_index_add_association(). #127133
6558
6559 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6560
6561         * autogen.sh: check out common with right tag if CVS/Tag exists
6562
6563 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6564
6565         * testsuite/ghostpads/ghostpads.c: (main):
6566           fix testsuite from segfaulting
6567
6568 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6569
6570         * Makefile.am: add release target
6571         * configure.ac: bump nano to 1
6572         * docs/random/release:
6573
6574 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6575
6576         * gst/gstcaps.h:
6577         * gst/gstelement.c: (gst_element_base_class_init),
6578         (gst_element_class_set_details), (gst_element_clear_pad_caps):
6579         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
6580         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
6581         (gst_real_pad_dispose):
6582         * gst/gststructure.c: (gst_structure_free),
6583         (gst_structure_from_string):
6584           put reverted patch back in
6585         * gst/gstelement.c: (gst_element_remove_pad):
6586           free explicit caps if they're set
6587         * gst/gstpad.c: (_gst_pad_default_fixate_func):
6588           copy the structure when fixating
6589
6590 2004-02-05  David Schleef  <ds@schleef.org>
6591
6592         * gst/gstmarshal.list:
6593         * gst/gstpad.c: (gst_real_pad_class_init),
6594         (_gst_real_pad_fixate_accumulator):
6595         Revert POINTER->BOXED change in signal marshaller.
6596
6597 === release 0.7.4 ===
6598                                                                                 
6599 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6600                                                                                 
6601         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
6602         * configure.ac: changed for release
6603
6604 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6605
6606         * gstreamer.spec.in:
6607           bump required version of gtk-doc
6608
6609 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6610
6611         * gst/gstcaps.h:
6612         * gst/gstelement.c: (gst_element_base_class_init),
6613         (gst_element_class_set_details), (gst_element_clear_pad_caps):
6614         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
6615         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
6616         (gst_real_pad_dispose):
6617         * gst/gststructure.c: (gst_structure_free),
6618         (gst_structure_from_string):
6619           revert patch that breaks applications, reapply after release
6620           to get this fixed properly
6621
6622 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6623
6624         * gst/gsttag.c: (_gst_tag_initialize):
6625         * gst/gsttag.h:
6626           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
6627
6628 2004-02-04  David Schleef  <ds@schleef.org>
6629
6630         Fix some memleaks:
6631         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
6632         (gst_spider_plug_from_srcpad):
6633         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6634
6635 2004-02-04  David Schleef  <ds@schleef.org>
6636
6637         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
6638         a GstRealPad before accessing its structure members.
6639
6640 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6641
6642         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
6643         (gst_clock_get_speed):
6644         * gst/gstclock.h:
6645           reset padding, remove unused fields
6646
6647 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6648
6649         * gst/autoplug/gstspideridentity.c:
6650         (gst_spider_identity_sink_loop_type_finding):
6651           use get_allowed_caps, not get_caps (fixes #132519)
6652         * gst/elements/gsttypefind.c: (stop_typefinding):
6653           use correct order when sending buffers and seeking
6654
6655 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6656
6657         * configure.ac:
6658         * gst/gstelement.h:
6659         * gst/gstpad.h:
6660         * gst/gstqueue.h:
6661           upgrade libtool CURRENT, reset padding
6662
6663 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6664
6665         * configure.ac:
6666           bump to prerelease
6667           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
6668
6669 2004-02-04  David Schleef  <ds@schleef.org>
6670
6671         * docs/random/ds/0.9-suggested-changes: random notes
6672         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
6673         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
6674         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
6675         expansion.
6676         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
6677         (gst_filesink_get_query_types): same
6678         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
6679         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
6680         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
6681         to use new GST_PTR_FORMAT.
6682         * gst/gstelement.h: deprecate function factory macros
6683         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
6684         These are our last variadic macros that can't be replaced with
6685         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
6686         attempting to deprecate gst_element_clock_wait().
6687         * gst/gstevent.h: same
6688         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
6689         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
6690         * gst/gstpad.h: deprecate function factory macros similar to above.
6691
6692 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6693
6694         * configure.ac:
6695         * tools/Makefile.am:
6696         * tools/gst-run.c: (popt_callback), (hash_print_key),
6697         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
6698         (get_candidates), (main):
6699           add new source file to generate non-versioned wrapper binaries
6700           for our tools.
6701
6702 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6703
6704         * gst/gstevent.c: (_gst_event_free):
6705           actually break; inside the switch statement
6706         * gst/parse/grammar.y:
6707           fix memleak where GValues weren't unset
6708
6709 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6710
6711         * gst/gststructure.c: (gst_structure_from_string):
6712           fix huge memleak
6713         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
6714         (new_entry), (gst_type_find_element_chain):
6715         * gst/gstelement.c: (gst_element_base_class_init),
6716         (gst_element_class_set_details):
6717         * gst/gstpad.c: (gst_pad_can_link_filtered):
6718           fix smaller memleaks
6719         * gst/gstpad.c: (gst_real_pad_dispose):
6720           check that explicit caps are gone
6721         * gst/gststructure.c: (gst_structure_free):
6722           actually free the structure
6723         * gst/gstelement.c: (gst_element_clear_pad_caps):
6724           unset explicit caps
6725
6726 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6727
6728         * tools/Makefile.am:
6729           use AM_CFLAGS since all the CFLAGS are the same
6730           use AM_LDFAGS
6731
6732 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6733
6734         * docs/manual/gnome.xml:
6735           expand example a little
6736         * gst/gst.c: (gst_init_with_popt_table),
6737         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
6738           make sure popt option displays are done with right textdomain
6739           use GstPoptOption type
6740         * gst/gst.h:
6741           create GstPoptOption type
6742
6743 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6744
6745         * gst/gsterror.c: (_gst_stream_errors_init):
6746         * gst/gsterror.h:
6747           adding error type for no codec
6748         * po/POTFILES.in:
6749           add gst-inspect
6750         * po/nl.po:
6751           update dutch translation
6752         * tools/gst-inspect.c: (print_element_list), (main):
6753           do proper internationalization
6754         * tools/gst-launch.c: (idle_func):
6755           remove commented out function call
6756
6757 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6758
6759         * docs/README:
6760           add some error fixing notes
6761         * docs/gst/gstreamer-sections.txt:
6762           remove double entries
6763         * docs/gst/tmpl/gstbin.sgml:
6764         * docs/gst/tmpl/gstclock.sgml:
6765           remove override
6766         * docs/gst/tmpl/gstelement.sgml:
6767         * docs/gst/tmpl/gstindex.sgml:
6768         * docs/gst/tmpl/gstobject.sgml:
6769         * docs/gst/tmpl/gstpadtemplate.sgml:
6770         * docs/gst/tmpl/gstreamer-unused.sgml:
6771         * docs/gst/tmpl/gsttag.sgml:
6772         * docs/gst/tmpl/gstthread.sgml:
6773         * docs/gst/tmpl/gstxml.sgml:
6774         * gst/gsttag.h:
6775           sync header prototypes with c decls
6776         * gst/gsttaginterface.c:
6777           fix doc headers
6778
6779 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6780
6781         * gst/parse/Makefile.am:
6782         * gst/gstobject.h:
6783           get rid of gstmarshal.h dependency. It's not needed.
6784         * gst/gst.h:
6785         * gst/elements/gstfakesink.c:
6786         * gst/elements/gstfakesrc.c:
6787         * gst/elements/gstidentity.c:
6788         * gst/gstbin.c:
6789         * gst/gstelement.c:
6790         * gst/gstindex.c:
6791         * gst/gstobject.c:
6792         * gst/gstpad.c:
6793         * gst/gstthread.c:
6794         * gst/gstxml.c:
6795         * libs/gst/control/dparam.c:
6796         * libs/gst/control/dparammanager.c:
6797           include gstmarshal.h.
6798         Fixes #132045
6799
6800 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6801
6802         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
6803         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
6804         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
6805         * gst/elements/gstfilesrc.h:
6806           don't ref the filesrc when creating mmaped buffers. Don't keep a
6807           list of not-yet-destroyed buffers.
6808         * gst/gstbuffer.h:
6809           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
6810
6811 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6812
6813         * gst/gst.c: (init_pre):
6814           remove textdomain
6815
6816 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6817
6818         * docs/pwg/advanced-events.xml:
6819         * docs/pwg/advanced-scheduling.xml:
6820         * docs/pwg/intro-basics.xml:
6821         * docs/pwg/other-manager.xml:
6822         * docs/pwg/other-nton.xml:
6823         * docs/pwg/other-ntoone.xml:
6824         * docs/pwg/other-oneton.xml:
6825         * docs/pwg/pwg.xml:
6826           All sort of documentation... Forgot what. Point is that I want this
6827           in before I leave. The 'other-*' will be the last section and will
6828           explain issues specific to these type of elements.
6829
6830 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6831
6832         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
6833         (gst_filesrc_get_read):
6834           set all the values on buffers that we can
6835
6836 2004-02-02  David Schleef  <ds@schleef.org>
6837
6838         Change usage of isblah() to g_ascii_isblah() to be more locale
6839         independent.  (#133076)
6840         * gst/gsturi.c: (gst_uri_protocol_check_internal):
6841         * gst/gstutils.c:
6842         * gst/parse/parse.l:
6843
6844 2004-02-02  Jon Trowbridge  <trow@gnu.org>
6845
6846         reviewed by: David Schleef  <ds@schleef.org>
6847
6848         Fix memory leaks:
6849         * gst/gstcaps.c: (gst_caps_to_string):
6850         * gst/registries/gstxmlregistry.c:
6851         (gst_xml_registry_add_path_list_func),
6852         (gst_xml_registry_parse_padtemplate):
6853
6854 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6855
6856         * gst/gstelement.c: (gst_element_default_error):
6857           suffix error messages with period
6858
6859 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
6860
6861         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
6862         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
6863         * gst/gsterror.c: (gst_error_get_message):
6864           Suffix with dots
6865         * po/fr.po:
6866         * po/nl.po:
6867           Update translation files
6868
6869 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
6870
6871         * gst/autoplug/gstspideridentity.c:
6872         (gst_spider_identity_sink_loop_type_finding):
6873         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
6874         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
6875         (gst_filesink_close_file), (gst_filesink_handle_event),
6876         (gst_filesink_chain):
6877         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
6878         (gst_filesrc_get_read), (gst_filesrc_open_file):
6879         * gst/elements/gstidentity.c: (gst_identity_chain):
6880         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
6881         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
6882         (gst_pipefilter_chain), (gst_pipefilter_open_file):
6883         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
6884         * gst/gsterror.c: (_gst_core_errors_init),
6885         (_gst_library_errors_init), (_gst_resource_errors_init),
6886         (_gst_stream_errors_init), (gst_error_get_message):
6887         * gst/gstpad.c: (gst_pad_set_explicit_caps),
6888         (gst_pad_recover_caps_error), (gst_pad_pull):
6889         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
6890         * gst/schedulers/gstbasicscheduler.c:
6891         (gst_basic_scheduler_chainhandler_proxy),
6892         (gst_basic_scheduler_gethandler_proxy),
6893         (gst_basic_scheduler_cothreaded_chain):
6894           Suffix error messages with period.
6895           Use (NULL) instead of NULL
6896
6897 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
6898
6899         * docs/gst/tmpl/gstelement.sgml:
6900         * docs/gst/tmpl/gstxml.sgml:
6901         * gst/gstelement.c: (gst_element_error_full):
6902           add element path to error
6903
6904 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6905
6906         * docs/random/mimetypes:
6907           update raw int/float info
6908         * gst/gsttag.c: (_gst_tag_initialize):
6909         * gst/gsttag.h:
6910           add GST_TAG_ENCODER
6911
6912 2004-01-30  David Schleef  <ds@schleef.org>
6913
6914         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
6915           missing (#132991)
6916
6917 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
6918
6919         reviewed by Benjamin Otte 
6920           parts of the patch submitted in bug #113913
6921
6922         * configure.ac:
6923           use AC_C_INLINE. Use = instead of == with test
6924         * examples/plugins/example.c:
6925         * gst/autoplug/gstspideridentity.c:
6926         * gst/elements/gstfdsrc.c:
6927         * gst/elements/gstfilesrc.c:
6928         * gst/elements/gstidentity.c:
6929         * gst/elements/gstmultidisksrc.c:
6930         * gst/elements/gststatistics.c:
6931         * gst/gstelement.c:
6932         * gst/gstobject.c:
6933         * gst/gstpad.c:
6934         * gst/gstpipeline.c:
6935         * gst/gstthread.c:
6936           don't end enums with a comma
6937         * gst/gstindex.c: (gst_index_compare_func):
6938           do explicit casting to gint
6939         * gst/gsttrace.c: (gst_trace_text_flush):
6940           #define strsize as a macro
6941
6942 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
6943
6944         * docs/README:
6945         * docs/gst/gstreamer-docs.sgml:
6946         * docs/gst/gstreamer-sections.txt:
6947         * docs/gst/tmpl/gstelement.sgml:
6948         * docs/gst/tmpl/gsterror.sgml:
6949         * docs/gst/tmpl/gstinterface.sgml:
6950         * docs/gst/tmpl/gstreamer-unused.sgml:
6951         * docs/gst/tmpl/gststructure.sgml:
6952         * docs/gst/tmpl/gsttag.sgml:
6953         * docs/gst/tmpl/gsttaginterface.sgml:
6954         * docs/gst/tmpl/gstvalue.sgml:
6955         make sure all API ends up in the built docs
6956         * gst/gstinterface.c:
6957         * gst/gststructure.c: (gst_structure_id_set_value),
6958         (gst_structure_set_value), (gst_structure_id_get_value):
6959         * gst/gststructure.h:
6960         * gst/gstvalue.h:
6961         sync .h with .c declarations
6962
6963 2004-01-30  Julien Moutte  <julien@moutte.net>
6964
6965         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
6966         Ronald will fix riffread.
6967
6968 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6969
6970         * docs/pwg/advanced-interfaces.xml:
6971           Added tuner interface docs.
6972
6973 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6974
6975         * docs/random/mimetypes:
6976           correct Theora information
6977         * gst/gstelement.h:
6978           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
6979
6980 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6981
6982         * gst/gstelement.c: (gst_element_error_full):
6983         * gst/gstelement.h:
6984           GST_ELEMENT_ERROR in enum -> _IN_ERROR
6985
6986 2004-01-29  Julien MOUTTE  <julien@moutte.net>
6987
6988         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
6989         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
6990         again and even before DISCONT.
6991         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
6992         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
6993         bytestream so that it's not stopping to fill the bytestream if events
6994         different than EOS or DISCONT are received. Instead it process them so
6995         that they go downstream.
6996
6997 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6998
6999         * docs/gst/tmpl/gstelement.sgml:
7000         * docs/gst/tmpl/gstreamer-unused.sgml:
7001         * docs/gst/tmpl/gstxml.sgml:
7002         * gst/autoplug/gstspideridentity.c:
7003         (gst_spider_identity_sink_loop_type_finding):
7004         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
7005         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
7006         (gst_filesink_close_file), (gst_filesink_handle_event),
7007         (gst_filesink_chain):
7008         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
7009         (gst_filesrc_get_read), (gst_filesrc_open_file):
7010         * gst/elements/gstidentity.c: (gst_identity_chain):
7011         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
7012         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
7013         (gst_pipefilter_chain), (gst_pipefilter_open_file):
7014         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
7015         * gst/gstelement.h:
7016         * gst/gstpad.c: (gst_pad_set_explicit_caps),
7017         (gst_pad_recover_caps_error), (gst_pad_pull):
7018         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
7019         * gst/schedulers/gstbasicscheduler.c:
7020         (gst_basic_scheduler_chainhandler_proxy),
7021         (gst_basic_scheduler_gethandler_proxy),
7022         (gst_basic_scheduler_cothreaded_chain):
7023           gst_element_error -> GST_ELEMENT_ERROR
7024
7025 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7026
7027         * docs/Makefile.am:
7028         * docs/gst/tmpl/gstelement.sgml:
7029         * docs/gst/tmpl/gstxml.sgml:
7030         * docs/manuals.mak:
7031         * docs/pwg/advanced-request.xml:
7032         * docs/pwg/advanced-scheduling.xml:
7033         * docs/pwg/advanced-tagging.xml:
7034           fix non-validating docbook using CDATA
7035           make sure make check-local gets run first to check if it validates
7036
7037 2004-01-29  Julien MOUTTE <julien@moutte.net>
7038
7039         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
7040         handling (up and downstream).
7041         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
7042         my_filter thing.
7043
7044 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7045
7046         * docs/pwg/advanced-tagging.xml:
7047           Add docs about tag writing.
7048
7049 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7050
7051         * docs/pwg/advanced-tagging.xml:
7052           Add a part about tag reading and application signalling... Tag
7053           writing still needs to be documented.
7054         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
7055           We can set file locations in READY, too.
7056
7057 2004-01-29  Julien MOUTTE <julien@moutte.net>
7058
7059         * docs/random/ds/element-checklist: Adding some notes about src
7060         events.
7061
7062 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7063
7064         * docs/random/mimetypes:
7065           Update docs to point to correct elements for various mimetypes, and
7066           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
7067           <stephane.loeuillet@tiscali.fr>.
7068
7069 2004-01-28  David Schleef  <ds@schleef.org>
7070
7071         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
7072
7073 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7074
7075         * docs/random/mimetypes:
7076           update docs for audio/x-raw-float. Add "buffer-frames=0 means
7077           undefined"
7078         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
7079           make it only work in NULL.
7080         * gst/gstcaps.c:
7081           don't posion NULL caps
7082         * gst/gstelement.c: (gst_element_set_time):
7083           add debugging statement
7084         * gst/gstelement.c: (gst_element_emit_found_tag),
7085         (gst_element_found_tag_func), (gst_element_found_tags):
7086         * gst/gstelement.h:
7087           These functions take const taglists
7088         * gst/gstpad.c: (gst_pad_proxy_getcaps):
7089           fix memleak
7090         * gst/gstpad.c: (gst_pad_event_default):
7091           make more effort on handling discont and clocks, g_warn if everything
7092           fails
7093         * gst/gststructure.c: (gst_structure_remove_fields),
7094         (gst_structure_remove_fields_valist):
7095         * gst/gststructure.h:
7096           add gst_structure_remove_fields(_valist)
7097         * gst/gsttag.c:
7098           fix doc glitch
7099
7100 2004-01-28  David Schleef  <ds@schleef.org>
7101
7102         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
7103         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
7104         Fix memory leakage of gst_caps_to_string().
7105
7106         Use GST_PTR_FORMAT instead of gst_caps_to_string():
7107         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
7108         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
7109         (gst_spider_identity_sink_loop_type_finding):
7110         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
7111         (find_suggest):
7112         * gst/gstpad.c: (gst_pad_try_relink_filtered),
7113         (gst_pad_set_explicit_caps):
7114         * gst/parse/grammar.y:
7115
7116 2004-01-28  David Schleef  <ds@schleef.org>
7117
7118         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
7119         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
7120         * docs/random/ds/0.9-suggested-changes: Notes from Company.
7121         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
7122         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
7123         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
7124         (gst_debug_log_default), (_gst_info_printf_extension),
7125         (_gst_info_printf_extension_arginfo):  Add printf extension.
7126         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
7127         * gst/gststructure.c: (gst_structure_to_string),
7128         (_gst_structure_parse_value): Use gst_value_deserialize() and
7129         remove old code.
7130         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
7131         (gst_value_deserialize_boolean), (gst_strtoi),
7132         (gst_value_deserialize_int), (gst_value_deserialize_double),
7133         (gst_value_deserialize_string), (gst_value_deserialize): Implement
7134         a bunch of deserialize functions and gst_value_deserialize.
7135         * gst/gstvalue.h: er, _de_serialize, not unserialize
7136         * testsuite/caps/string-conversions.c: (main): We don't currently
7137         handle (float) in caps, so convert these to (double).
7138         * testsuite/debug/Makefile.am: Add new test for the printf extension
7139         * testsuite/debug/printf_extension.c: (main): same
7140
7141 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7142
7143         * docs/random/company/time:
7144           Add some docs about clocking and time
7145
7146 2004-01-28  Julien MOUTTE <julien@moutte.net>
7147
7148         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
7149
7150 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7151
7152         * docs/pwg/advanced-clock.xml:
7153         * docs/pwg/advanced-dparams.xml:
7154         * docs/pwg/advanced-events.xml:
7155         * docs/pwg/advanced-interfaces.xml:
7156         * docs/pwg/advanced-midi.xml:
7157         * docs/pwg/advanced-request.xml:
7158         * docs/pwg/advanced-scheduling.xml:
7159         * docs/pwg/advanced-tagging.xml:
7160         * docs/pwg/advanced-types.xml:
7161         * docs/pwg/appendix-checklist.xml:
7162         * docs/pwg/building-boiler.xml:
7163         * docs/pwg/building-chainfn.xml:
7164         * docs/pwg/building-filterfactory.xml:
7165         * docs/pwg/building-pads.xml:
7166         * docs/pwg/building-props.xml:
7167         * docs/pwg/building-signals.xml:
7168         * docs/pwg/building-state.xml:
7169         * docs/pwg/building-testapp.xml:
7170         * docs/pwg/intro-basics.xml:
7171         * docs/pwg/intro-preface.xml:
7172         * docs/pwg/other-autoplugger.xml:
7173         * docs/pwg/other-sink.xml:
7174         * docs/pwg/other-source.xml:
7175         * docs/pwg/titlepage.xml:
7176           fix up id's
7177
7178 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7179
7180         * docs/95NonPath:
7181         * docs/HACKING:
7182         * docs/README:
7183         * docs/building-the-docs-on-debian:
7184           collect relevant bits of doc info
7185
7186 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7187
7188         * docs/pwg/advanced_tagging.xml:
7189           Half-assed commit so Thomas can re-arrange document IDs here to be
7190           consistent, too.
7191
7192 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7193
7194         * docs/manual/autoplugging.xml:
7195         * docs/manual/bins-api.xml:
7196         * docs/manual/bins.xml:
7197         * docs/manual/buffers-api.xml:
7198         * docs/manual/buffers.xml:
7199         * docs/manual/clocks.xml:
7200         * docs/manual/components.xml:
7201         * docs/manual/cothreads.xml:
7202         * docs/manual/debugging.xml:
7203         * docs/manual/dparams-app.xml:
7204         * docs/manual/dynamic.xml:
7205         * docs/manual/elements-api.xml:
7206         * docs/manual/elements.xml:
7207         * docs/manual/factories.xml:
7208         * docs/manual/gnome.xml:
7209         * docs/manual/goals.xml:
7210         * docs/manual/helloworld.xml:
7211         * docs/manual/helloworld2.xml:
7212         * docs/manual/init-api.xml:
7213         * docs/manual/intro.xml:
7214         * docs/manual/links-api.xml:
7215         * docs/manual/links.xml:
7216         * docs/manual/manual.xml:
7217         * docs/manual/motivation.xml:
7218         * docs/manual/pads-api.xml:
7219         * docs/manual/pads.xml:
7220         * docs/manual/plugins-api.xml:
7221         * docs/manual/plugins.xml:
7222         * docs/manual/programs.xml:
7223         * docs/manual/queues.xml:
7224         * docs/manual/quotes.xml:
7225         * docs/manual/schedulers.xml:
7226         * docs/manual/states-api.xml:
7227         * docs/manual/states.xml:
7228         * docs/manual/threads.xml:
7229         * docs/manual/typedetection.xml:
7230         * docs/manual/xml.xml:
7231           use chapter, part, section or misc as id starts for all bits
7232
7233 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7234
7235         * docs/gst/gstreamer-sections.txt:
7236           Fix up TITLE of the sections
7237
7238 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7239
7240         * docs/pwg/advanced_interfaces.xml:
7241           Add documentation on propertyprobing.
7242         * docs/pwg/advanced_events.xml:
7243         * docs/pwg/advanced_tagging.xml:
7244         * docs/pwg/building_boiler.xml:
7245         * docs/pwg/building_filterfactory.xml:
7246         * docs/pwg/pwg.xml:
7247           Move filterfactory and tagging into their own chapter, add a chapter
7248           on events. all these are empty placeholders that will be filled in
7249           some day.
7250
7251 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7252
7253         * docs/pwg/advanced_interfaces.xml:
7254           Docs for mixer interface. Also a check for website uploading.
7255
7256 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7257
7258         * docs/HACKING:
7259         * docs/Makefile.am:
7260         * docs/faq/Makefile.am:
7261         * docs/gst/Makefile.am:
7262         * docs/gst/tmpl/gstelement.sgml:
7263         * docs/gst/tmpl/gstplugin.sgml:
7264         * docs/gst/tmpl/gstreamer-unused.sgml:
7265         * docs/libs/Makefile.am:
7266         * docs/manual/Makefile.am:
7267         * docs/manuals.mak:
7268         * docs/pwg/Makefile.am:
7269         * docs/upload.mak:
7270           Separate out upload target and make it similar for
7271           both docbook and gtk-doc docs
7272
7273 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7274
7275         * docs/manuals.mak:
7276           Fix upload target to work with freedesktop
7277
7278 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7279
7280         * docs/pwg/advanced_types.xml:
7281           Add notes on creating your own types.
7282         * docs/pwg/building_boiler.xml:
7283         * docs/pwg/building_pads.xml:
7284         * docs/pwg/building_state.xml:
7285           Add some stuff about how to retrieve values from structures, how
7286           that relates to types and change layout slightly again to be almost
7287           perfect.
7288
7289 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7290
7291         * docs/pwg/advanced_dparams.xml:
7292         * docs/pwg/advanced_scheduling.xml:
7293           Change index layout slightly.
7294
7295 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7296
7297         * docs/pwg/advanced_clock.xml:
7298         * docs/pwg/advanced_interfaces.xml:
7299         * docs/pwg/advanced_midi.xml:
7300           General placeholders for now.
7301         * docs/pwg/advanced_request.xml:
7302           Explanation about sometimes and request pads.
7303         * docs/pwg/advanced_scheduling.xml:
7304           Concept of bytestream, loopfunctions and schedulers.
7305         * docs/pwg/building_boiler.xml:
7306           Add something about plugin-init.
7307
7308 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7309
7310         * docs/pwg/building_pads.xml:
7311           Fix broken docbook
7312
7313 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7314
7315         * docs/pwg/advanced_interfaces.xml:
7316         * docs/pwg/pwg.xml:
7317           Add as a placeholder for future filling-in.
7318         * docs/pwg/basics_autoplugging.xml:
7319         * docs/pwg/basics_buffers.xml:
7320         * docs/pwg/basics_elements.xml:
7321         * docs/pwg/basics_events.xml:
7322         * docs/pwg/basics_plugins.xml:
7323         * docs/pwg/basics_types.xml:
7324           Remove, because unused (this is all in intro_basics.xml).
7325         * docs/pwg/building_signals.xml:
7326           Short intro to signals + reference to GObject docs - we really
7327           shouldn't go into these sort of things to deply because we don't
7328           use them that extensively anyway.
7329         * docs/pwg/building_state.xml:
7330           Explanation of states. Benjamin, please check.
7331         * docs/pwg/building_testapp.xml:
7332           Put everything in one page - putting only a few lines of content
7333           per page doesn't really make sense.
7334
7335           Time to get into the advanced topics. ;).
7336
7337 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7338
7339         * docs/pwg/advanced_types.xml:
7340           Finish documenting the current state of mimetypes.
7341         * docs/pwg/building_boiler.xml:
7342         * docs/pwg/building_chainfn.xml:
7343         * docs/pwg/building_pads.xml:
7344         * docs/pwg/building_props.xml:
7345         * docs/pwg/building_testapp.xml:
7346           Start documenting the "how to build a simple audio filter" part
7347           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
7348           states and (maybe?) a short introduction to capsnego in the chapter
7349           on pads (building_pads.xml). Capsnego should probably be explained
7350           fully in advanced_capsnego.xml or so.
7351
7352 2004-01-26  David Schleef  <ds@schleef.org>
7353
7354         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
7355         * gst/gstpad.h: Add new function to allow element to (somewhat)
7356         specify non-fixed caps on a pad.
7357         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
7358         that I added a few weeks ago.
7359
7360 2004-01-26  David Schleef  <ds@schleef.org>
7361
7362         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
7363           making try_set_caps() work with non-fixed caps.
7364
7365 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7366
7367         * docs/pwg/advanced_types.xml:
7368         * docs/pwg/intro_basics.xml:
7369         * docs/pwg/intro_preface.xml:
7370         * docs/pwg/pwg.xml:
7371         * docs/pwg/titlepage.xml:
7372           First try to resurrect the PWG. I'm halfway integrating the mimetypes
7373           in here (docs/random/mimetypes), and will from there on work on both
7374           updating outdated parts and adding missing parts.
7375           That doesn't mean I'll fix it completely, but I'll try at least. ;).
7376
7377 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7378
7379         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
7380           policy is set
7381
7382 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7383
7384         * gst/gstelement.h:
7385           remove gst_element_factory_get_version. It doesn't exist anymore.
7386         * gst/gstplugin.c:
7387         * gst/gstplugin.h:
7388           remove gst_plugin_set_name and change gst_plugin_get_longname to
7389           gst_plugin_get_description to match code.
7390         * gst/gsterror.h:
7391           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
7392         * gst/gstpad.c: (gst_pad_try_set_caps):
7393           make it work with nonfixed caps.
7394           Note that even in the nonfixed case the link function of the pad
7395           that tries to set caps isn't called.
7396
7397 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7398
7399         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
7400           fix bug where buffer was not assembled correctly
7401         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
7402           silence by default
7403         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
7404           only seek if there's no more buffers that could work without seeking
7405
7406 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7407
7408         * gst/gsttag.c: (_gst_tag_initialize):
7409         * gst/gsttag.h:
7410           Add application tag (for encoding/muxing app).
7411
7412 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
7413
7414         * autogen.sh:
7415           make autopoint force, and libtoolize not copy
7416         * common/m4/as-docbook.m4:
7417           added docbook xml catalog setup check
7418         * common/m4/gst-doc.m4:
7419           use docbook check
7420
7421 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
7422
7423         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
7424         * gst/gsttag.h:
7425           add GstTagFlag
7426
7427 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7428
7429         * docs/gst/gstreamer-sections.txt:
7430         * docs/gst/tmpl/gst.sgml:
7431         * docs/gst/tmpl/gstbuffer.sgml:
7432         * docs/gst/tmpl/gstclock.sgml:
7433         * docs/gst/tmpl/gstelement.sgml:
7434         * docs/gst/tmpl/gstreamer-unused.sgml:
7435         * docs/gst/tmpl/gstxml.sgml:
7436           sync latest API changes to docs
7437
7438 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7439
7440         * gst/gstpluginfeature.c:
7441           fix doc snippet
7442         * tools/gst-inspect.c: (print_element_list):
7443           fix output of typefind
7444           add GPL header
7445         * tools/gst-launch.c:
7446           add GPL header
7447
7448 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7449
7450         * gst/elements/Makefile.am:
7451         * gst/elements/gstelements.c:
7452         * gst/elements/gsttypefindelement.c:
7453         * gst/elements/gsttypefindelement.h:
7454         * po/POTFILES.in:
7455         * po/fr.po:
7456         * po/nl.po:
7457           renamed gsttypefindelement to gsttypefind, conserving CVS history
7458
7459 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7460
7461         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
7462         * gst/gsttag.h:
7463           add some tags used in ogg as well
7464           fix _ in replaygain tags
7465
7466 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7467
7468         * gst/gsterror.h:
7469           fix wrong GST_LIBRARY_ERROR_ENCODE addition
7470
7471 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7472
7473         * gst/gstelement.c: (gst_element_error_full):
7474         * gst/gstelement.h:
7475           change _extended to _full
7476
7477 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7478
7479         reviewed by: <delete if not using a buddy>
7480
7481         * docs/gst/tmpl/gst.sgml:
7482         * docs/gst/tmpl/gstbuffer.sgml:
7483         * docs/gst/tmpl/gstclock.sgml:
7484         * docs/gst/tmpl/gstelement.sgml:
7485         * docs/gst/tmpl/gstreamer-unused.sgml:
7486         * docs/gst/tmpl/gstxml.sgml:
7487         * gst/gstelement.c: (gst_element_error_full):
7488         * gst/gstelement.h:
7489
7490 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7491
7492         * gst/gstelement.h: fix _gst_element_error_printf prototype
7493
7494 2004-01-20  David Schleef  <ds@schleef.org>
7495
7496         * gst/gststructure.c: (gst_structure_to_string):
7497         Convert function to use gst_value_serialize().
7498         * gst/gstvalue.c: (gst_value_serialize_list),
7499         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
7500         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
7501         (gst_value_serialize_int), (gst_value_serialize_double),
7502         (gst_string_wrap), (gst_value_serialize_string),
7503         (gst_value_serialize), (gst_value_deserialize):
7504         * gst/gstvalue.h:
7505         Add implementations for serialize.
7506
7507 2004-01-20  Julien MOUTTE  <julien@moutte.net>
7508
7509         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
7510         we want to keep that one in the future or change xvidenc.c to use 
7511         another error.
7512
7513 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7514
7515         * gst/gstelement.c: (_gst_element_error_printf):
7516         * gst/gstelement.h:
7517           privatise function
7518
7519 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7520
7521         * docs/random/error:
7522           doc explaining error system
7523         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7524           cleanup
7525
7526 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7527
7528         * gst/gst-i18n-app.h:
7529         * gst/gst-i18n-lib.h:
7530           remove inclusion of config.h
7531         * po/POTFILES.in:
7532         * po/nl.po:
7533           add gst/gstelement.c
7534
7535 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7536
7537         * po/nl.po: updated Dutch translation
7538
7539 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7540
7541         * gst/gsterror.c: (_gst_core_errors_init),
7542         (_gst_library_errors_init), (_gst_resource_errors_init),
7543         (_gst_stream_errors_init):
7544         remove ending punctuation dots
7545
7546 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7547
7548         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
7549         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
7550         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
7551         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
7552         (gst_pipefilter_chain), (gst_pipefilter_open_file):
7553         use GST_ERROR_SYSTEM
7554
7555 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7556
7557         * gst/gstelement.c: (gst_element_error_printf),
7558         (gst_element_error_extended):
7559         * gst/gstelement.h:
7560           add a helper printf function so we can have NULL values passed.
7561
7562 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7563
7564         * gst/gstelement.h:
7565           add G_STMT macros to gst_element_error, which isn't strictly
7566           necessary but people tell me to anyway.
7567
7568 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7569
7570         * gst/Makefile.am:
7571         * gst/autoplug/gstspideridentity.c:
7572         (gst_spider_identity_sink_loop_type_finding):
7573         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
7574         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
7575         (gst_filesink_close_file), (gst_filesink_handle_event),
7576         (gst_filesink_chain):
7577         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
7578         (gst_filesrc_map_region), (gst_filesrc_get_read),
7579         (gst_filesrc_open_file):
7580         * gst/elements/gstidentity.c: (gst_identity_chain):
7581         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
7582         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
7583         (gst_pipefilter_chain), (gst_pipefilter_open_file):
7584         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
7585         * gst/gst.h:
7586         * gst/gst_private.h:
7587         * gst/gstelement.c: (gst_element_class_init),
7588         (gst_element_default_error), (gst_element_error_func),
7589         (gst_element_error_extended):
7590         * gst/gstelement.h:
7591         * gst/gsterror.c: (_gst_core_errors_init),
7592         (_gst_library_errors_init), (_gst_resource_errors_init),
7593         (_gst_stream_errors_init), (gst_error_get_message):
7594         * gst/gsterror.h:
7595         * gst/gstinfo.c: (_gst_debug_init):
7596         * gst/gstmarshal.list:
7597         * gst/gstpad.c: (gst_pad_set_explicit_caps),
7598         (gst_pad_recover_caps_error), (gst_pad_pull):
7599         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
7600         * gst/schedulers/gstbasicscheduler.c:
7601         (gst_basic_scheduler_chainhandler_proxy),
7602         (gst_basic_scheduler_gethandler_proxy),
7603         (gst_basic_scheduler_cothreaded_chain):
7604         * po/POTFILES.in:
7605         * po/fr.po:
7606         * po/nl.po:
7607           change error signal
7608           add error categories
7609
7610 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
7611
7612         * gst/gsttag.c: (_gst_tag_initialize):
7613         * gst/gsttag.h:
7614         Add replaygain tag
7615
7616 2004-01-18  Colin Walters  <walters@verbum.org>
7617
7618         * examples/retag/retag.c: Call gst_init before processing
7619         program args.  Add g_assert to _link_many call.
7620
7621 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7622
7623         * gst/gstpad.c: (gst_pad_alloc_buffer):
7624           Return a newly allocated buffer when the pad has no peer.
7625
7626 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7627
7628         * gst/gstclock.c: (gst_clock_get_time):
7629           make it compile with gcc 2.95 again.
7630           Patch by Scott Wheeler
7631
7632 2004-01-15  David Schleef  <ds@schleef.org>
7633
7634         * gst/gstcaps.h:
7635         Added gst_caps_is_simple() macro.
7636         * testsuite/caps/caps.c: (test1):
7637         * testsuite/caps/intersect2.c: (main):
7638         * testsuite/caps/intersection.c: (main):
7639         Fixes to make 'make check' work again after removing
7640         gst_caps_is_chained().
7641
7642 2004-01-15  Leif Johnson <leif@ambient.2y.net>
7643
7644         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
7645         and additions to the MIDI document.
7646
7647 2004-01-15  David Schleef  <ds@schleef.org>
7648
7649         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
7650         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
7651         of GST_RPAD_, since we don't know if it's a real or ghost pad.
7652
7653 2004-01-15  David Schleef  <ds@schleef.org>
7654
7655         * gst/gstqueue.c:
7656         * gst/gstqueue.h:
7657         Fix the spelling of "treshold" and make min_threshold actually
7658         affect the queue.
7659
7660 2004-01-15  David Schleef  <ds@schleef.org>
7661
7662         * gst/gstcaps.c:
7663         Add lots of documentation.
7664         * gst/gstcaps.h:
7665         Deprecate a few functions.
7666         * gst/gstpad.c:
7667         Removed use of deprecated functions.
7668
7669 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7670
7671         * gst/gstpad.c: (gst_pad_is_linked):
7672         * gst/gstpad.h:
7673           implement gst_pad_is_linked
7674         * gst/gstelement.h:
7675           reserve space for initiate_state_change
7676
7677 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7678
7679         * gst/autoplug/gstspideridentity.c:
7680         (gst_spider_identity_sink_loop_type_finding):
7681           break infinite loop by just returning instead of looping
7682         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
7683           set event time difference correctly. Set it to 1 second instead
7684           of 100ms to be more tolerant
7685         * gst/gstelement.c: (gst_element_set_time):
7686           add debugging output
7687
7688 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7689
7690         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
7691           query if buffers are inside the pool, ignore events
7692
7693 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7694
7695         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
7696         (gst_clock_set_speed), (gst_clock_set_active),
7697         (gst_clock_is_active), (gst_clock_reset),
7698         (gst_clock_handle_discont):
7699         * gst/gstclock.h:
7700           deprecate old interface and disable functions that aren't in use
7701           anymore.
7702         * gst/gstelement.h:
7703         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
7704         (gst_element_set_time), (gst_element_adjust_time):
7705           add concept of "element time" and functions to get/set this time.
7706         * gst/gstelement.c: (gst_element_change_state):
7707           update element time correctly.
7708         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
7709           This is a debug message, not a g_critical.
7710         * gst/gstpad.c: (gst_pad_event_default):
7711           handle discontinuous events right with element time.
7712         * gst/gstscheduler.c: (gst_scheduler_state_transition):
7713           update to clocking fixes.
7714           set clocks on elements in READY=>PAUSED. The old behaviour caused
7715           a wrong element time on the first element that started playing.
7716         * gst/schedulers/gstbasicscheduler.c:
7717         (gst_basic_scheduler_class_init):
7718         * gst/schedulers/gstoptimalscheduler.c:
7719         (gst_opt_scheduler_class_init):
7720           remove code that just implements the default behaviour.
7721         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
7722           update to use new clocking functions
7723         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
7724         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
7725           update to test new element time.
7726         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
7727           use _get_allowed_caps instead of _get_caps. This catches filtered
7728           caps correctly.
7729         * testsuite/debug/commandline.c:
7730           update for new GST_DEBUG syntax.
7731         * testsuite/threads/Makefile.am:
7732           disable a test that only works sometimes.
7733
7734 2004-01-13  Julien MOUTTE <julien@moutte.net>
7735
7736         * po/LINGUAS: Adding fr.
7737         * po/fr.po: Adding french translation.
7738
7739 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7740
7741         * gst/parse/grammar.y:
7742         * po/POTFILES.in:
7743         * po/nl.po:
7744         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
7745           translate parsing error messages
7746
7747 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7748
7749         * po/POTFILES.in: adding gst-launch
7750         * po/nl.po: updated translation, all 99 strings translated
7751         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
7752         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
7753           fix strings for translation
7754
7755 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7756
7757         * gst/gst.c:
7758           - capitalize beginnings of popt options
7759           - fix strings for translation
7760           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
7761
7762 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7763
7764         * po/README: add some notes on how to update translations
7765
7766 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7767
7768         * ABOUT-NLS: removed, is autogenerated from autopoint
7769         * autogen.sh: add autopoint stuff
7770         * configure.ac: fix up gettext stuff
7771         * gst/Makefile.am: add i18n headers to noinst_HEADERS
7772         * gst/elements/gsttypefindelement.c: add header include
7773         * gst/gettext.h: add header, copy from system-installed header
7774         * gst/gst-i18n-app.h: to be included by each app having translations
7775         * gst/gst-i18n-lib.h: to be included by each lib having translations
7776         * gst/gst.c: (init_pre): fix up gettext calls
7777         * gst/gst_private.h: remove i18n stuff, moving to separate headers
7778         * po/LINGUAS: the new way to specify translations present
7779         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
7780         * po/Makevars: the variables filled in for GStreamer
7781         * po/POTFILES.in: added new files with translations
7782         * po/de.po: has new strings
7783         * po/nl.po: readded, has new strings
7784
7785 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7786
7787         * gst/gsttag.c: fix some strings marked for translation
7788
7789 2004-01-13  Iain <iain@prettypeople.org>
7790
7791         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
7792         group when we add an element to it, cos we unref it when we remove one
7793
7794 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7795
7796         * testsuite/debug/commandline.c: (debug_not_reached):
7797         * testsuite/debug/output.c: (check_message):
7798           fix testsuite
7799
7800 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7801
7802         * examples/cutter/.cvsignore:
7803         * examples/helloworld/.cvsignore:
7804         * examples/launch/.cvsignore:
7805         * examples/manual/.cvsignore:
7806         * examples/mixer/.cvsignore:
7807         * examples/pingpong/.cvsignore:
7808         * examples/plugins/.cvsignore:
7809         * examples/queue/.cvsignore:
7810         * examples/queue2/.cvsignore:
7811         * examples/queue3/.cvsignore:
7812         * examples/queue4/.cvsignore:
7813         * examples/retag/.cvsignore:
7814         * examples/thread/.cvsignore:
7815         * examples/typefind/.cvsignore:
7816         * examples/xml/.cvsignore:
7817         * gst/.cvsignore:
7818         * gst/autoplug/.cvsignore:
7819         * gst/elements/.cvsignore:
7820         * gst/indexers/.cvsignore:
7821         * gst/parse/.cvsignore:
7822         * gst/registries/.cvsignore:
7823         * gst/schedulers/.cvsignore:
7824         * libs/gst/bytestream/.cvsignore:
7825         * libs/gst/control/.cvsignore:
7826         * libs/gst/getbits/.cvsignore:
7827         * tests/.cvsignore:
7828         * tests/bufspeed/.cvsignore:
7829         * tests/instantiate/.cvsignore:
7830         * tests/memchunk/.cvsignore:
7831         * tests/muxing/.cvsignore:
7832         * tests/sched/.cvsignore:
7833         * tests/seeking/.cvsignore:
7834         * tests/threadstate/.cvsignore:
7835         * testsuite/.cvsignore:
7836         * testsuite/caps/.cvsignore:
7837         * testsuite/cleanup/.cvsignore:
7838         * testsuite/dynparams/.cvsignore:
7839         * testsuite/plugin/.cvsignore:
7840         * tools/.cvsignore:
7841           update - this is huge, because it includes *.bb, *.bbg and *.da files
7842           which are generated for gcov.
7843
7844 2004-01-11  David Schleef  <ds@schleef.org>
7845
7846         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
7847         a function to parse integers in ways that strto[u]l() does not.
7848
7849 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7850
7851         * tools/gst-inspect.c: (print_caps):
7852           improve output of caps a bit
7853
7854 2004-01-11  David Schleef  <ds@schleef.org>
7855
7856         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
7857         inherit correct flags (READONLY and DONTKEEP).
7858
7859 2004-01-11  David Schleef  <ds@schleef.org>
7860
7861         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
7862         (gst_filesrc_map_region):
7863         * gst/gstbuffer.c: (_gst_buffer_initialize),
7864         (_gst_buffer_sub_free), (gst_buffer_default_copy),
7865         (gst_buffer_new), (gst_buffer_create_sub),
7866         (gst_buffer_is_span_fast), (gst_buffer_span):
7867         * gst/gstbuffer.h:
7868         Change GstBuffer private structure element names. (all files)
7869         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
7870         (gst_queue_link):
7871         * gst/gstqueue.h:
7872         Implement getcaps/pad_link functions that handle the case where
7873         there are data in the queue.
7874
7875 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7876
7877         * gst/elements/gstbufferstore.c:
7878           initialize debugging structure correctly
7879         * gst/elements/gsttee.c: (gst_tee_set_property):
7880           g_object_notify when property was changed
7881         * gst/elements/gsttypefindelement.c:
7882         (gst_type_find_element_change_state):
7883           clear caps correctly
7884
7885 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7886
7887         * gst/gstqueue.c: (gst_queue_init):
7888           Use better defaults for when a queue should block. This
7889           gets rid of jerky playback for quite a few files.
7890           It takes more memory.
7891
7892 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7893
7894         (gst_xml_registry_parse_padtemplate):
7895           make critical message slightly more useful
7896
7897 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7898
7899         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
7900         (gst_debug_message_get), (gst_debug_log_default):
7901         * gst/gstinfo.h:
7902           Change gst_debug_log(_valist) to take a const format string.
7903           Change prototype of log function and functions using those to 
7904           take a GstDebugMessage instead of a string that requires using
7905           gst_debug_message_get.
7906
7907 2004-01-08  David Schleef  <ds@schleef.org>
7908
7909         * Makefile.am:
7910         * configure.ac:
7911         Add option --enable-gcov to build GStreamer with -fprofile-arcs
7912         and -ftest-coverage, which allows gcov to show information about
7913         testsuite coverage.
7914
7915 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7916
7917         * gst/gstutils.h:
7918           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
7919           GST_PARENT_CALL_WITH_DEFAULT
7920         * gst/elements/gstaggregator.c: 
7921         * gst/elements/gstbufferstore.c: 
7922         * gst/elements/gstfakesink.c: 
7923         * gst/elements/gstfakesrc.c: 
7924         * gst/elements/gstfdsink.c: 
7925         * gst/elements/gstfdsrc.c: 
7926         * gst/elements/gstfilesink.c: 
7927         * gst/elements/gstfilesrc.c: 
7928         * gst/elements/gstidentity.c: 
7929         * gst/elements/gstmd5sink.c: 
7930         * gst/elements/gstmultidisksrc.c:
7931         * gst/elements/gstpipefilter.c: 
7932         * gst/elements/gstshaper.c:
7933         * gst/elements/gststatistics.c:
7934         * gst/elements/gsttee.c:
7935         * gst/elements/gsttypefindelement.c:
7936           use them.
7937
7938 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7939
7940         * docs/gst/gstreamer-docs.sgml: remove props
7941         * docs/gst/gstreamer-sections.txt: remove props
7942         * docs/gst/tmpl/gst.sgml:
7943         * docs/gst/tmpl/gstbin.sgml:
7944         * docs/gst/tmpl/gstbuffer.sgml:
7945         * docs/gst/tmpl/gstcaps.sgml:
7946         * docs/gst/tmpl/gstclock.sgml:
7947         * docs/gst/tmpl/gstelement.sgml:
7948         * docs/gst/tmpl/gstindex.sgml:
7949         * docs/gst/tmpl/gstobject.sgml:
7950         * docs/gst/tmpl/gstpad.sgml:
7951         * docs/gst/tmpl/gstpadtemplate.sgml:
7952         * docs/gst/tmpl/gstreamer-unused.sgml:
7953         * docs/gst/tmpl/gstthread.sgml:
7954         * docs/gst/tmpl/gstxml.sgml:
7955           sync with code reorganization
7956
7957 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
7958
7959         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
7960         Make the 'Could not find compatible pad' message more informative.
7961
7962 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7963                                                                                 
7964         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
7965           Fix for if we pass NULL as property to location.
7966         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
7967         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
7968           Fix for instantiate-test (see below).
7969         * gst/gststructure.c: (_gst_structure_parse_value):
7970           Fix compile error on gcc-2.96.
7971         * configure.ac:
7972         * tests/Makefile.am:
7973         * tests/instantiate/Makefile.am:
7974         * tests/instantiate/create.c: (create_all_elements), (main):
7975           Add a test that instantiates all elements. This makes it easy to
7976           track dead code for old API/design (like setting event functions
7977           on sink pads and so on).
7978
7979 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
7980
7981         * gst/gstcaps.c: (gst_caps_append_structure):
7982           Move the poisoning to allow a NULL structure
7983         * gst/gstevent.c: (_gst_event_free):
7984           When freeing a navigation event, free the structure
7985           also
7986
7987 2004-01-04  David Schleef  <ds@schleef.org>
7988
7989         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
7990         Remove usage of gst_pad_proxy_fixate.
7991         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
7992         (gst_caps_split_one), (gst_caps_replace):
7993         Add poisoning code.
7994         * gst/gstmarshal.list:
7995         Add pointer__pointer for fixate signal
7996         * gst/gstpad.c: (gst_real_pad_class_init),
7997         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
7998         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
7999         (gst_pad_set_explicit_caps), (gst_pad_template_new):
8000         Add poisoning code. Add fixate signal on RealPad. Change
8001         set_explicit_caps() to take const GstCaps, like try_set_caps().
8002         * gst/gstpad.h:
8003         * testsuite/caps/Makefile.am:
8004         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
8005
8006 2004-01-03  David Schleef  <ds@schleef.org>
8007
8008         * gst/elements/gsttypefindelement.c:
8009         (gst_type_find_element_have_type), (gst_type_find_element_init):
8010         Use gst_pad_use_explicit_caps for src pad.
8011         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
8012         before using it.
8013
8014 2004-01-03  David Schleef  <ds@schleef.org>
8015
8016         * gst/gstelement.c: (gst_element_link_pads_filtered),
8017         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
8018         that linking was successful.
8019         * gst/gstpad.c: (gst_pad_link_free),
8020         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
8021         (gst_pad_link_try), (gst_pad_link_unnegotiate),
8022         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
8023         GstPadLinkReturn correctly between functions, and don't fail
8024         when DELAYED is used (DELAYED is very important).  Better
8025         cleanup on unlinking and unnegotiation.  Should fix some spider
8026         bugs.
8027
8028 2004-01-02  David Schleef  <ds@schleef.org>
8029
8030         * gst/gstelement.c: (gst_element_class_init),
8031         (gst_element_base_class_init): ->padtemplates should be cleared
8032         in base_init, since we need to have a fresh list for every
8033         class.  (Alternately, we chould copy the list and share the
8034         actual pad templates (not the list), but that would require
8035         changing every plugin to move pad template registration from
8036         base_init to class_init.)
8037
8038 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8039
8040         * gst/gstelement.c: (gst_element_class_add_pad_template):
8041           Refuse registering a pad template if another pad template
8042           with the same name already exists (#114715).
8043
8044 2004-01-02  David Schleef  <ds@schleef.org>
8045
8046         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
8047         (gst_caps_is_equal_fixed): Add new function.
8048         * gst/gstcaps.h: ditto.
8049         * gst/gstpad.c: (gst_real_pad_class_init),
8050         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
8051         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
8052         check new caps against existing caps -- if they're the same, return
8053         OK without renegotiating.  caps-nego-failed signal fixed so that
8054         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
8055         to save an extra caps copy.  Don't complete negotiation if a pad
8056         link function returns DELAYED.
8057
8058 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8059
8060         * gst/gstpad.c: (gst_pad_try_relink_filtered):
8061           Fix wrong g_return_if_fail
8062
8063 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
8064
8065         * gst/gstbin.c: (gst_bin_class_init):
8066         Change the marshalling of element_added/element_removed
8067         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
8068         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
8069
8070 2004-01-01  David Schleef  <ds@schleef.org>
8071
8072         * gst/gstpad.c: (gst_pad_set_explicit_caps),
8073         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
8074         (gst_pad_use_explicit_caps):
8075         * gst/gstpad.h:
8076         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
8077         to use an internal getcaps and link fuction so that negotiation
8078         always results in the explicitly set caps.
8079         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
8080         are particularly useful for decoders.
8081
8082 2003-12-31  David Schleef  <ds@schleef.org>
8083
8084         * gst/elements/gstidentity.c: (gst_identity_class_init),
8085         (gst_identity_init), (gst_identity_chain),
8086         (gst_identity_set_property), (gst_identity_get_property):
8087         * gst/elements/gstidentity.h:
8088         * gst/gstqueue.c: (gst_queue_init):
8089           Negotiation fixes.
8090
8091 2003-12-31  David Schleef  <ds@schleef.org>
8092
8093         * gst/gstcaps.c: (gst_caps_intersect),
8094         (_gst_caps_normalize_foreach), (gst_caps_normalize):
8095           Implement gst_caps_normalize().
8096         * testsuite/caps/normalisation.c: (main):
8097           Add an additional test
8098
8099 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8100
8101         * gst/gstqueue.c: (gst_queue_init):
8102           use gst_pad_proxy_getcaps()
8103
8104 2003-12-31  David Schleef  <ds@schleef.org>
8105
8106         * gst/elements/gstshaper.c: (gst_shaper_link):
8107         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
8108         * gst/gstqueue.c: (gst_queue_link):
8109           Negotiation fixes.
8110
8111 2003-12-31  David Schleef  <ds@schleef.org>
8112
8113         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
8114         * gst/gstpad.h: Add functions that are useful as default pad
8115         link and fixate functions for elements.
8116
8117 2003-12-30  David Schleef  <ds@schleef.org>
8118
8119         * gst/gstpad.c: (gst_pad_link_try):
8120           Fix segfault when attempting to return to old caps
8121
8122 2003-12-29  David Schleef  <ds@schleef.org>
8123
8124         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
8125         (gst_caps_structure_simplify), (gst_caps_simplify):
8126         * gst/gstcaps.h:
8127           Add simplify function
8128         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
8129         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
8130         * gst/gstpad.h:
8131           Copy over srcnotify, sinknotify when calling old pad_link
8132           functions.  Add new is_negotiated() function.
8133         * gst/gststructure.c: (gst_structure_copy):
8134           Fix an incredibly stupid bug that should have been noticed
8135           weeks ago.  _copy() returned the argument, not the new copy.
8136
8137 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8138
8139         * gst/gstcaps.c: (gst_caps_append):
8140           add sanity checks
8141         * gst/gstcaps.h: (gst_caps_debug):
8142           remove, it doesn't exist anymore.
8143         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
8144         (gst_element_threadsafe_properties_post_run):
8145           make debugging messages not clutter up THREAD debug category
8146         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
8147         (gst_element_change_state):
8148           update to new caps API
8149         * gst/gstinterface.c: (gst_implements_interface_cast):
8150           don't put vital code in g_return_if_fail
8151         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
8152         (gst_pad_link_filtered):
8153           add pst_pad_try_link and use it.
8154         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
8155           implement correctly, deprecate first one.
8156         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
8157           add and implement.
8158         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
8159           implement.
8160         (gst_pad_get_negotiated_caps):
8161           add and implement. Make GST_PAD_CAPS call this function.
8162         (gst_pad_get_caps):
8163           remove unneeded check..
8164         (gst_pad_recover_caps_error):
8165           disable, always return FALSE.
8166         (gst_real_pad_dispose):
8167           don't free caps and appfilter anymore, they're unused.
8168         * gst/gstpad.h:
8169           Reflect changes mentioned above.
8170         * gst/gstsystemclock.c: (gst_system_clock_wait):
8171           Make 'clock is way behind' a debugging message.
8172         * gst/gstthread.c: (gst_thread_change_state):
8173           Fix debugging message
8174
8175 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8176
8177         * gst/gstinfo.h:
8178           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
8179         * docs/gst/tmpl/gstreamer-unused.sgml:
8180           removed all traces of cvs conflicts
8181
8182 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8183
8184         * configure.ac:
8185         * gst/schedulers/cothreads_compat.h:
8186         * libs/Makefile.am:
8187           remove last instances of wingo cothread usage
8188
8189 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8190
8191         * gst/gstplugin.c:
8192         * gst/gstversion.h.in:
8193         * gst/parse/grammar.y:
8194           change comment block from /** to /* when not gtk-doc comments
8195
8196 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8197
8198         * gst/gst.c: whitespace and doc style fixes
8199
8200 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8201
8202         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
8203
8204 2003-12-24  Colin Walters  <walters@verbum.org>
8205
8206         * gst/elements/gsttypefindelement.c:
8207           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
8208           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
8209           Don't double-free caps.
8210
8211 2003-12-23  David Schleef  <ds@schleef.org>
8212
8213         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
8214           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
8215           Many little fixes and additions of debug statements to
8216           get rhythmbox working.
8217
8218 2003-12-23  Colin Walters  <walters@verbum.org>
8219
8220         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
8221         Use GST_PAD_LINK_SUCCESSFUL.
8222
8223 2003-12-23  David Schleef  <ds@schleef.org>
8224
8225         * gst/elements/gstaggregator.c:
8226         * gst/elements/gsttee.c:
8227           Use gst_pad_proxy_getcaps().
8228         * gst/gstpad.c:
8229         * gst/gstpad.h:
8230           Add gst_pad_proxy_getcaps(), which filter elements can use
8231           as a generic getcaps implementation.
8232           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
8233           was advertised.
8234
8235 2003-12-23  David Schleef  <ds@schleef.org>
8236
8237         * gst/gstpad.c:
8238           Rearrange/rewrite much of the pad negotiation code, since it
8239           resembled pasta.  This actually changes the way some
8240           negotiation works, since the previous code was inconsistent
8241           depending on how it was invoked.  Add (internal) structure
8242           GstPadLink, which is used to hold some information (more in
8243           the future) about the link between two pads.  Fixes a number
8244           of bugs, including random lossage of filter caps when the
8245           initial negotiation is delayed.  A few functions are still
8246           unimplemented.
8247         * gst/gstpad.h:
8248           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
8249           these when testing GstPadLinkReturn values instead of comparing
8250           directly.
8251
8252 2003-12-23  David Schleef  <ds@schleef.org>
8253
8254         * gst/gstvalue.c: 
8255         * gst/gstvalue.h:
8256           Rearrange lots of code.  Change registration of compare function
8257           into registration of compare/serialize/deserialize functions.
8258           Doesn't include implementation of gst_value_[de]serialize(),
8259           but that should be easy.
8260
8261 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
8262
8263         * docs/gst/gstreamer-sections.txt:
8264         * docs/gst/tmpl/gstprops.sgml: removed
8265         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
8266           David removed props and caps code, so let's remove their docs as well.
8267           Removed all no longer existing symbols from gstreamer-sections.txt
8268           
8269 2003-12-22  Colin Walters  <walters@verbum.org>
8270
8271         * gst/gsttaginterface.c, gst/gsttaginterface.h,
8272           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
8273           of tags directly.
8274
8275 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8276
8277         * gst/elements/gstelements.c:
8278           Set ranks of elements to NONE, so the autoplugger doesn't use them.
8279         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
8280           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
8281           gst_caps (peer).
8282
8283 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8284
8285         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
8286         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
8287         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
8288         (gst_spider_identity_sink_loop_type_finding):
8289         * gst/autoplug/gstspideridentity.h:
8290           Fix autoplugging in spider element, so it works with new caps.
8291           This was mainly caused by identifying empty caps incorrectly.
8292
8293 2003-12-22  David Schleef  <ds@schleef.org>
8294
8295         * gststructure.c, gstvalue.c, gstvalue.h: Add
8296           gst_value_init_and_copy() and use it, to avoid silly mistakes in
8297           using g_value_copy()
8298
8299 2003-12-21  David Schleef  <ds@schleef.org>
8300
8301         * many, many files: Merge CAPS branch.  This includes:
8302           - implemention of GstValue and several GstValue types
8303           - implemention of GstStructure
8304           - entire rewrite of GstCaps
8305           - removal of GstProps
8306           - many changes to GstPad to compensate for new caps paradigm
8307           - removal of GstBufferpool
8308         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
8309         gstvalue.h, gst/gstcaps[2]*.[ch]:
8310           - rename gstcaps2.[ch] to gstcaps.[ch]
8311
8312 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8313
8314         * gst/gstqueue.c: (gst_queue_handle_pending_events),
8315         (gst_queue_chain), (gst_queue_handle_src_event):
8316           implement timeout for sending events. Workaround for if the
8317           pipeline on this queue is not passing any data.
8318
8319 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
8320                                                                                 
8321         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
8322         * moved CVS to freedesktop.org
8323