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