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