gst/gstbin.c: Disable duration query caching in bins until it gets fixed (see #324807).
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-12-29  Tim-Philipp Müller  <tim at centricular dot net>
2
3         * gst/gstbin.c: (gst_bin_query):
4           Disable duration query caching in bins until it gets
5           fixed (see #324807).
6
7 2005-12-27  Tim-Philipp Müller  <tim at centricular dot net>
8
9         * tools/gst-inspect.c: (print_element_properties_info):
10           Handle properties of POINTER and BOXED type.
11
12 2005-12-27  Tim-Philipp Müller  <tim at centricular dot net>
13
14         * gst/gst.c: (init_post):
15           Init tags stuff and some other things before loading
16           any static plugins (there may be other static plugins
17           than just the GStreamer ones, and they may want to
18           register their own tags or formats or whatever, and
19           preferably without segfaulting).
20
21         * plugins/elements/gstqueue.c: (gst_queue_handle_src_query):
22           Print at least a warning in the debug logs if we drop a
23           query just because we don't know how to adjust the value
24           in the particular format.
25
26 2005-12-24  David Schleef  <ds@schleef.org>
27
28         * tools/gstreamer-completion:
29           Replacement for gst-complete written in sh and sed.  Only
30           completes names of features, but that's 90% of what I want
31           it for.  Properties are not available in registry.xml.  (Maybe
32           they should be...)
33
34 === release 0.10.1 ===
35
36 2005-12-23  Thomas Vander Stichele <thomas at apestaart dot org>
37
38         * configure.ac:
39           releasing 0.10.1, "Nollaig chridheil"
40
41 2005-12-22  Tim-Philipp Müller  <tim at centricular dot net>
42
43         * docs/faq/cvs.xml:
44           Add missing quote, should be make ERROR_CFLAGS="".
45
46 2005-12-20  Wim Taymans  <wim@fluendo.com>
47
48         * docs/design/part-trickmodes.txt:
49         More documentation on trickmodes.
50
51 2005-12-20  Edward Hervey  <edward@fluendo.com>
52
53         * gst/gstcaps.c: (gst_static_caps_get_type):
54         * gst/gstcaps.h:
55           API addition: GST_TYPE_STATIC_CAPS
56         Added gpointer GType for GstStaticCaps so we can wrap them in bindings.
57         * gst/gstpadtemplate.c: (gst_static_pad_template_get_type):
58         * gst/gstpadtemplate.h:
59           API addition: GST_TYPE_STATIC_PAD_TEMPLATE
60         Added gpointer GType for GstStaticPadTemplate so we can wrap them in
61         bindings.
62
63 2005-12-18  Wim Taymans  <wim@fluendo.com>
64
65         * libs/gst/base/gstadapter.c:
66         * libs/gst/base/gstadapter.h:
67         * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
68         (gst_base_sink_get_position):
69         * libs/gst/base/gstbasesink.h:
70         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
71         (gst_base_src_default_query), (gst_base_src_default_do_seek),
72         (gst_base_src_do_seek), (gst_base_src_perform_seek),
73         (gst_base_src_send_event), (gst_base_src_update_length),
74         (gst_base_src_get_range), (gst_base_src_loop),
75         (gst_base_src_start):
76         * libs/gst/base/gstbasesrc.h:
77         * libs/gst/base/gstbasetransform.h:
78         * libs/gst/base/gstcollectpads.h:
79         * libs/gst/base/gstpushsrc.c:
80         * libs/gst/base/gstpushsrc.h:
81         * libs/gst/dataprotocol/dataprotocol.c:
82         * libs/gst/dataprotocol/dataprotocol.h:
83         * libs/gst/net/gstnetclientclock.h:
84         * libs/gst/net/gstnettimeprovider.h:
85         Documentation updates.
86
87 2005-12-18  Tim-Philipp Müller  <tim at centricular dot net>
88
89         * docs/manual/basics-helloworld.xml:
90           Remove superfluous closing bracket in helloworld example.
91
92 2005-12-17  Tim-Philipp Müller  <tim at centricular dot net>
93
94         * tools/gst-launch.1.in:
95           Update gst-launch man page; add a section with useful
96           environment variables. Fixes #323882.
97
98 2005-12-16  Stefan Kost  <ensonic@users.sf.net>
99
100         * gst/gst.c:
101         * gst/gst_private.h:
102           change some char* into char[]
103
104 2005-12-16  Wim Taymans  <wim@fluendo.com>
105
106         * gst/gstregistryxml.c: (load_feature):
107         Cleanups.
108         Don't use g_object_unref on GstObjects so that we avoid
109         leaks on unsafe glibs.
110
111 2005-12-16  Wim Taymans  <wim@fluendo.com>
112
113         * gst/gstbin.c: (gst_bin_recalc_state):
114         Small doc updates.
115
116 2005-12-16  Wim Taymans  <wim@fluendo.com>
117
118         * common/check.mak:
119         Added make forever target for check.
120
121 2005-12-16  Thomas Vander Stichele  <thomas at apestaart dot org>
122
123         * gst/gst.c: (init_post):
124           make the registry cache file HOST_CPU-dependent
125
126 2005-12-16  Andy Wingo  <wingo@pobox.com>
127
128         * plugins/elements/gstbufferstore.c
129         (gst_buffer_store_cleared_func): Pay attention to g_list_append
130         return value.
131
132         * tests/check/gst/gstobject.c
133         (test_fake_object_name_threaded_unique): Pay attention to
134         g_list_sort return value.
135
136 2005-12-16  Tim-Philipp Müller  <tim at centricular dot net>
137
138         * tools/gst-feedback-m.m:
139           Update for 0.9/0.10 (fixes #323870).
140
141 2005-12-15  Tim-Philipp Müller  <tim at centricular dot net>
142
143         * gst/gstminiobject.c: (gst_value_mini_object_lcopy):
144           Fix lcopy for mini objects, the mini object needs to be ref'ed.
145           
146         * tests/check/gst/gstminiobject.c: (my_foo_init),
147         (my_foo_get_property), (my_foo_set_property), (my_foo_class_init),
148         (test_value_collection), (gst_mini_object_suite):
149           Add test to ensure refcounts end up as expected when passing
150           GstMiniObjects through g_object_get() and g_object_set().
151
152 2005-12-14  Julien MOUTTE  <julien@moutte.net>
153
154         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
155         (gst_collect_pads_remove_pad), (gst_collect_pads_is_collected),
156         (gst_collect_pads_event), (gst_collect_pads_chain): Refactoring
157         of collectpads. This version removes a lot of races without
158         touching API/ABI. Yay !
159
160 2005-12-14  Jan Schmidt  <thaytan@mad.scientist.com>
161
162         * gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_link_prepare):
163           Don't allow activation of a srcpad in pull_range if it has no
164           getrange function.
165           Change some debug statements to be a little clearer
166
167         * plugins/elements/gsttypefindelement.c:
168         (gst_type_find_handle_src_query):
169           Check that we have a peer before executing queries thereupon.
170
171         * tests/examples/metadata/read-metadata.c: (message_loop):
172           Use gst_bus_pop instead of gst_bus_poll when we just want it to
173           immediately return us any available message with 0 timeout.
174
175 2005-12-12  Michael Smith  <msmith@fluendo.com>
176
177         * gst/gsttypefindfactory.c: (gst_type_find_factory_call_function):
178           Don't unref factories after calling them.
179         * libs/gst/base/gsttypefindhelper.c: (gst_type_find_helper):
180         * plugins/elements/gsttypefindelement.c:
181         (gst_type_find_element_chain):
182           Free lists of factories after using them. Fixing typefinding memory
183           leaks.
184
185 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
186
187         * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
188         (gst_plugin_feature_load):
189           more meaningful debug output
190         * configure.ac:
191         * tests/Makefile.am:
192         * tests/old/examples/Makefile.am:
193           make make distcheck happy again
194
195 2005-12-12  Tim-Philipp Müller  <tim at centricular dot net>
196
197         * plugins/elements/gsttypefindelement.c: (stop_typefinding):
198           Catch the special case where we are operating chain-based,
199           but the downstream peer pad has no chain function. Emit a
200           custom error message in this case instead of letting the
201           core generate one implying that this is some sort of core
202           bug. It's not, it just means that whatever got plugged
203           into the pipeline downstream when we announced the type
204           can only operate pull-based, while our source can only
205           operate push-based (e.g. http://foo/bar.mov ! qtdemux ! ...)
206           Error string has not been marked for translation yet, as
207           it probably needs some more work first.
208
209         (gst_type_find_element_get_best_possibility):
210           Add helper function to find the best of all available
211           found possibilities that qualify given the min. threshold.
212
213         (gst_type_find_element_handle_event):
214           Fix the case where we get an EOS while still in TYPEFIND
215           mode (we want to chose the best of all possible types,
216           not just the first type that happens to be in our unsorted
217           list of possible types).
218
219         (gst_type_find_element_chain):
220           Make sure we return GST_FLOW_ERROR when we errored out
221           in stop_typefinding(); also, don't just find the best of
222           all found type entries and then use the last examined
223           type entry, but actually use the best entry.
224
225 2005-12-12  Tim-Philipp Müller  <tim at centricular dot net>
226
227         * tests/examples/typefind/typefind.c: (type_found):
228         * tests/examples/xml/runxml.c: (xml_loaded):
229           More gcc4 fixes and a mem leak fix.
230
231 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
232
233         * tests/examples/xml/createxml.c: (object_saved):
234           gcc 4 fixes
235
236 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
237
238         * tests/Makefile.am:
239           enable the examples even more
240
241 2005-12-12  Andy Wingo  <wingo@pobox.com>
242
243         * libs/gst/net/gstnettimeprovider.c
244         (gst_net_time_provider_class_init, gst_net_time_provider_init)
245         (gst_net_time_provider_set_property)
246         (gst_net_time_provider_get_property):
247         API addition: Export "active" as a GObject property.
248         (gst_net_time_provider_thread): Only respond to time queries if
249         the time provider is active.
250
251         * libs/gst/net/gstnettimeprovider.h: Add an "active" boolean to
252         NetTimeProvider, preserving binary compat.
253
254 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
255
256         * tests/examples/controller/audio-example.c: (main):
257         * tests/examples/launch/Makefile.am:
258           convert comments again
259
260 2005-12-12  Wim Taymans  <wim@fluendo.com>
261
262         * libs/gst/base/gstpushsrc.c:
263         Fix typo.
264
265 2005-12-12  Wim Taymans  <wim@fluendo.com>
266
267         * docs/libs/gstreamer-libs-sections.txt:
268         Added new symbol to docs.
269
270         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
271         (gst_base_src_init), (gst_base_src_set_format),
272         (gst_base_src_default_query), (gst_base_src_query),
273         (gst_base_src_default_do_seek), (gst_base_src_do_seek),
274         (gst_base_src_perform_seek), (gst_base_src_send_event),
275         (gst_base_src_default_event), (gst_base_src_event_handler),
276         (gst_base_src_set_property), (gst_base_src_get_property),
277         (gst_base_src_wait), (gst_base_src_do_sync),
278         (gst_base_src_update_length), (gst_base_src_get_range),
279         (gst_base_src_check_get_range), (gst_base_src_loop),
280         (gst_base_src_default_negotiate), (gst_base_src_start),
281         (gst_base_src_activate_push), (gst_base_src_activate_pull),
282         (gst_base_src_change_state):
283         * libs/gst/base/gstbasesrc.h:
284         Implement seeking to other formats than _BYTES.
285         Implement more seeking methods correctly.
286         Doc updates.
287         Added query vmethod.
288         Added do_seek vmethod to make life easier for subclasses
289         when seeking.
290         API addition: gst_base_src_set_format()
291
292 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
293
294         * tests/examples/Makefile.am:
295           added that too
296
297 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
298
299         * configure.ac:
300         * docs/random/ensonic/media-device-daemon.txt:
301         * tests/examples/controller/.cvsignore:
302         * tests/examples/controller/Makefile.am:
303         * tests/examples/controller/audio-example.c: (main):
304         * tests/examples/helloworld/.cvsignore:
305         * tests/examples/helloworld/Makefile.am:
306         * tests/examples/helloworld/helloworld.c: (event_loop), (main):
307         * tests/examples/launch/.cvsignore:
308         * tests/examples/launch/Makefile.am:
309         * tests/examples/launch/mp3parselaunch.c: (event_loop), (main):
310         * tests/examples/metadata/.cvsignore:
311         * tests/examples/metadata/Makefile.am:
312         * tests/examples/metadata/read-metadata.c: (message_loop),
313         (make_pipeline), (print_tag), (main):
314         * tests/examples/queue/.cvsignore:
315         * tests/examples/queue/Makefile.am:
316         * tests/examples/queue/queue.c: (event_loop), (main):
317         * tests/examples/typefind/.cvsignore:
318         * tests/examples/typefind/Makefile.am:
319         * tests/examples/typefind/typefind.c: (type_found), (event_loop),
320         (main):
321         * tests/examples/xml/.cvsignore:
322         * tests/examples/xml/Makefile.am:
323         * tests/examples/xml/createxml.c: (object_saved), (main):
324         * tests/examples/xml/runxml.c: (xml_loaded), (event_loop), (main):
325         * tests/old/examples/Makefile.am:
326         * tests/old/examples/TODO:
327         * tests/old/examples/controller/.cvsignore:
328         * tests/old/examples/controller/Makefile.am:
329         * tests/old/examples/controller/audio-example.c:
330         * tests/old/examples/helloworld/.cvsignore:
331         * tests/old/examples/helloworld/Makefile.am:
332         * tests/old/examples/helloworld/helloworld.c:
333         * tests/old/examples/launch/.cvsignore:
334         * tests/old/examples/launch/Makefile.am:
335         * tests/old/examples/launch/mp3parselaunch.c:
336         * tests/old/examples/launch/mp3play:
337         * tests/old/examples/manual/Makefile.am:
338         * tests/old/examples/metadata/Makefile.am:
339         * tests/old/examples/metadata/read-metadata.c:
340         * tests/old/examples/queue/.cvsignore:
341         * tests/old/examples/queue/Makefile.am:
342         * tests/old/examples/queue/queue.c:
343         * tests/old/examples/typefind/.cvsignore:
344         * tests/old/examples/typefind/Makefile.am:
345         * tests/old/examples/typefind/typefind.c:
346         * tests/old/examples/xml/.cvsignore:
347         * tests/old/examples/xml/Makefile.am:
348         * tests/old/examples/xml/createxml.c:
349         * tests/old/examples/xml/runxml.c:
350           applied some simple fixing to some examples
351           re-enabled the working examples
352
353 2005-12-12  Wim Taymans  <wim@fluendo.com>
354
355         * gst/gstsegment.c: (gst_segment_init),
356         (gst_segment_set_last_stop), (gst_segment_set_seek),
357         (gst_segment_set_newsegment), (gst_segment_to_stream_time),
358         (gst_segment_to_running_time):
359         Added more documentation.
360         Make sure the last_pos value is updated properly.
361         Make sure to_stream_time and to_running_time don't
362         operate on wrong values.
363
364         * tests/check/gst/gstsegment.c: (GST_START_TEST):
365         Update check.
366
367 2005-12-12  Michael Smith  <msmith@fluendo.com>
368
369         * plugins/elements/gsttypefindelement.c: (free_entry),
370         (gst_type_find_element_chain):
371           Now that we're not leaking factories, make sure we keep references
372           to them while we need them.
373
374 2005-12-12  Thomas Vander Stichele  <thomas at apestaart dot org>
375
376         * tests/check/gst/struct_i386.h:
377           ifdef out the XML structs
378
379 2005-12-12  Thomas Vander Stichele  <thomas at apestaart dot org>
380
381         * gst/gstvalue.c: (gst_value_transform_double_fraction):
382           floor is not needed, F is always positive; this obviates the
383           need for adding -lm when building without libxml
384
385 2005-12-12  Wim Taymans  <wim@fluendo.com>
386
387         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
388         Take current playback rate into account when reporting
389         the position.
390
391 2005-12-11  Tim-Philipp Müller  <tim at centricular dot net>
392
393         * docs/manual/mime-world.fig:
394           Let's try this again, this time with a file that is
395           actually in XFig format.
396
397 2005-12-11  Tim-Philipp Müller  <tim at centricular dot net>
398
399         * docs/manual/mime-world.fig:
400           Add audioconvert element to diagram so that it
401           matches the text and the code (fixes #319526).
402
403 2005-12-11  Tim-Philipp Müller  <tim at centricular dot net>
404
405         * docs/pwg/building-chainfn.xml:
406         * docs/pwg/building-pads.xml:
407         * docs/pwg/building-state.xml:
408         * docs/pwg/other-source.xml:
409           Update state change stuff for 0.10 (fixes #322969).
410
411 2005-12-11  Tim-Philipp Müller  <tim at centricular dot net>
412
413         * docs/manual/advanced-dataaccess.xml:
414         * docs/manual/appendix-checklist.xml:
415         * docs/manual/appendix-programs.xml:
416         * docs/manual/basics-pads.xml:
417         * docs/manual/highlevel-components.xml:
418         * docs/manual/manual.xml:
419           Update for 0.10: s/0.9/0.10/; s/audioscale/audiorsample/;
420           add converters in front of pipelines; remove curly
421           brackets for threads stuff, they no longer exist; use
422           GST_TYPE_FRACTION for framerates; update some pieces of
423           code to 0.10, but there's plenty more to do.
424
425         * docs/manual/appendix-porting.xml:
426           Expand on asynchroneous state changes; s/0.9/0.10/;
427           mention disappearance of gst_init_get_popt_table()
428           (fixes #322916).
429
430 2005-12-11  Tim-Philipp Müller  <tim at centricular dot net>
431
432         * docs/faq/using.xml:
433           Spider no longer exists, and neither does gst-launch-ext.
434           Update examples to use decodebin and playbin and put
435           converters in front of sinks (fixes #323726).
436
437 2005-12-09  Michael Smith  <msmith@fluendo.com>
438
439         * plugins/elements/gsttypefindelement.c: (find_peek),
440         (gst_type_find_element_chain):
441           Fix leaking element factories in typefinding.
442           Fix problem where we forgot about a probable type on non-seekable
443           files, and thus later mis-typefound it.
444
445 2005-12-09  Michael Smith  <msmith@fluendo.com>
446
447         * common/m4/gst-makecontext.m4:
448         * common/m4/gst-mcsc.m4:
449         * configure.ac:
450         * win32/common/config.h:
451         * win32/common/config.h.in:
452           Remove makecontext stuff; not used in 0.10 and causes problems on
453           HPUX according to bug #322441
454
455 2005-12-07  Wim Taymans  <wim@fluendo.com>
456
457         * tests/check/Makefile.am:
458         * tests/check/libs/libsabi.c: (GST_START_TEST), (gstabi_suite),
459         (main):
460         * tests/check/libs/struct_i386.h:
461         Added ABI check for libs
462
463 2005-12-07  Wim Taymans  <wim@fluendo.com>
464
465         * tests/check/Makefile.am:
466         And add the struct_i386.h to dist.
467
468 2005-12-07  Wim Taymans  <wim@fluendo.com>
469
470         * tests/check/Makefile.am:
471         * tests/check/gst/.cvsignore:
472         * tests/check/gst/gstabi.c: (GST_START_TEST), (gstabi_suite),
473         (main):
474         * tests/check/gst/struct_i386.h:
475         Added check for ABI compatibility.
476
477 2005-12-07  Wim Taymans  <wim@fluendo.com>
478
479         * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
480         (gst_fake_src_get_times), (gst_fake_src_create):
481         Fix broken sync option, fixes #323259
482
483 2005-12-07  Wim Taymans  <wim@fluendo.com>
484
485         * gst/gstbuffer.c:
486         Small docs update.
487
488         * gst/gstcaps.c: (gst_caps_is_equal):
489         Don't assert on NULL <--> X. Fixes #323260
490
491         * gst/gstminiobject.c: (gst_mini_object_replace):
492         If we're doing atomic operations, we might just as well use
493         the proper way to get an atomic pointer.
494
495         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
496         Clean up debugging.
497
498 2005-12-07  Michael Smith  <msmith@fluendo.com>
499
500         * gst/parse/grammar.y:
501           Remove handling of { } for threads.
502
503 2005-12-06  David Schleef  <ds@schleef.org>
504
505         * libs/gst/base/gstbasetransform.c: speling fix.
506
507 2005-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
508
509         * docs/libs/tmpl/gstdataprotocol.sgml:
510         * docs/random/omega/testing/gstobject.c:
511         * gst/gst.c:
512         * gst/gstclock.c:
513         * gst/gstelement.c:
514         * gst/gstelementfactory.c:
515         * gst/gsterror.c:
516         * gst/gstevent.c:
517         * gst/gstghostpad.c:
518         * gst/gstinfo.c:
519         * gst/gstpadtemplate.c:
520         * gst/gstregistryxml.c:
521         * gst/gsttaglist.c:
522         * gst/gsttagsetter.c:
523         * gst/gsttypefind.c:
524         * gst/gstvalue.c:
525         * libs/gst/base/gstbasesrc.c:
526         * libs/gst/net/gstnetclientclock.c:
527         * libs/gst/net/gstnettimeprovider.c:
528         * plugins/elements/gstfakesrc.c:
529         * plugins/elements/gstfdsrc.c:
530         * plugins/elements/gstfilesrc.c:
531         * plugins/elements/gstidentity.c:
532         * plugins/elements/gstqueue.c:
533         * plugins/elements/gsttypefindelement.c:
534         * plugins/indexers/gstfileindex.c:
535         * plugins/indexers/gstmemindex.c:
536         * tests/check/gst/gsttag.c:
537         * tests/old/examples/cutter/cutter.c:
538         * tests/old/examples/mixer/mixer.c:
539         * tests/old/examples/xml/runxml.c: (main):
540         * tests/old/testsuite/caps/normalisation.c:
541         * tests/old/testsuite/debug/global.c:
542         * tests/old/testsuite/parse/parse1.c:
543         * tools/gst-xmlinspect.c:
544         * win32/common/dirent.c:
545           expand tabs
546
547 === release 0.10.0 ===
548
549 2005-12-05   <thomas (at) apestaart (dot) org>
550
551         * configure.ac:
552           releasing 0.10.0, "Maroilles"
553
554 2005-12-05  Thomas Vander Stichele  <thomas at apestaart dot org>
555
556         submitted by: Funda Wang <fundawang@linux.net.cn>
557
558         * po/LINGUAS:
559         * po/zh_CN.po:
560           added Chinese (Traditional) translation
561
562 2005-12-05  Thomas Vander Stichele  <thomas at apestaart dot org>
563
564         * docs/gst/gstreamer-sections.txt:
565         * docs/libs/tmpl/gstdataprotocol.sgml:
566         * docs/random/thomasvs/TODO:
567         * gst/gstutils.c:
568         * gst/gstutils.h:
569           fix docs
570
571 2005-12-05  Andy Wingo  <wingo@pobox.com>
572
573         patch by: Wim Taymans <wim@fluendo.com>
574
575         * libs/gst/base/gstbasetransform.c
576         (gst_base_transform_prepare_output_buf)
577         (gst_base_transform_buffer_alloc):
578         * plugins/elements/gstqueue.c (gst_queue_bufferalloc): Call
579         alloc_buffer_and_set_caps.
580
581         * gst/gstpad.c (gst_pad_alloc_buffer): Changed to not call
582         set_caps on the source pad.
583         (gst_pad_alloc_buffer_and_set_caps): New function, does what
584         alloc_buffer used to do. Fixes #322874.
585
586         * docs/gst/gstreamer-sections.txt: 
587         * docs/design/part-negotiation.txt: 
588         * docs/pwg/advanced-negotiation.xml: Update for the alloc_buffer
589         changes.
590
591 2005-12-05  Thomas Vander Stichele  <thomas at apestaart dot org>
592
593         patch by: Sebastien Moutte
594
595         * win32/MANIFEST:
596         * win32/common/config.h.in:
597         * win32/vs6/libgstcontroller.dsp:
598           win32 build fixes
599
600 2005-12-05  Wim Taymans  <wim@fluendo.com>
601
602         * gst/gstcaps.c: (gst_caps_is_equal):
603         * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
604         (gst_fake_src_create):
605         Back out previous code changes, leave doc updates, file bugs 
606         instead. 
607
608 2005-12-05  Wim Taymans  <wim@fluendo.com>
609
610         * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
611         (gst_fake_src_get_times), (gst_fake_src_create):
612         * plugins/elements/gstfakesrc.h:
613         Fix broken sync code.
614
615 2005-12-05  Wim Taymans  <wim@fluendo.com>
616
617         * gst/gstcaps.c: (gst_caps_is_equal):
618         Comparing NULL against !NULL yields different caps, not a
619         failure.
620
621 2005-12-05  Wim Taymans  <wim@fluendo.com>
622
623         * gst/gstpipeline.c:
624         Fix small typo in docs.
625
626 2005-12-05  Andy Wingo  <wingo@pobox.com>
627
628         patch by: Thomas Vander Stichele  <thomas at apestaart dot org>
629
630         * gst/gst.c (init_post): remove hard-coded 0.9 location for
631         registries/plugins with a MAJORMINOR one.
632         (plugin_desc): Rename library from gstcoreleements to
633         staticelements. Fixes #323222.
634
635 2005-12-05  Tim-Philipp Müller  <tim at centricular dot net>
636
637         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init):
638           Change debug category to 'collectpads' from 'collect_pads'
639           (fixes #323250).
640
641 2005-12-04  Thomas Vander Stichele  <thomas at apestaart dot org>
642
643         patch by: Sebastien Moutte
644
645         * libs/gst/controller/gstinterpolation.c:
646           use convert function for uint64/double
647         * win32/vs6/libgstcontroller.dsp:
648           link to GLib
649
650 2005-12-04  Thomas Vander Stichele  <thomas at apestaart dot org>
651
652         * gst/gstutils.c: (gst_util_guint64_to_gdouble),
653         (gst_util_gdouble_to_guint64), (gst_util_uint64_scale_int64):
654         * gst/gstutils.h:
655         * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
656           add tests that seem to show that the guint64/gdouble conversions
657           are correct.
658
659 2005-12-02  Wim Taymans  <wim@fluendo.com>
660
661         * gst/gstregistry.c: (gst_registry_add_path):
662         * gst/gstregistry.h:
663         * gst/gstregistryxml.c:
664         Fix docs again.
665
666 2005-12-02  Wim Taymans  <wim@fluendo.com>
667
668         * gst/gstutils.c: (gst_util_uint64_scale_int64),
669         (gst_util_uint64_scale_int):
670         Small cleanup.
671
672         * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object):
673         Add debug log line.
674
675         * libs/gst/base/gstbasetransform.c: (gst_base_transform_event):
676         Add FIXME.
677
678 2005-12-02  Thomas Vander Stichele  <thomas at apestaart dot org>
679
680         * win32/MANIFEST:
681         * win32/common/config.h:
682         * win32/vs6/gstreamer.dsw:
683         * win32/vs6/libgstcoreelements.dsp:
684         * win32/vs6/libgstelements.dsp:
685           renamed core elements plugin
686
687 2005-12-02  Thomas Vander Stichele  <thomas at apestaart dot org>
688
689         * tools/gst-run.c: (compare_major_minor), (find_highest_version),
690         (get_candidates):
691           do piece-wise major/minor comparison so 0.9 < 0.10
692           also allow .exe extensions for tools
693
694 2005-12-02  Michael Smith  <msmith@fluendo.com>
695
696         * gst/gst.c:
697           Escape a % to make gtkdoc happier; bug 322958.
698
699 === release 0.9.7 ===
700
701 2005-12-01   <thomas (at) apestaart (dot) org>
702
703         * configure.ac:
704           releasing 0.9.7, "My Dog Has No Nose"
705
706 2005-12-01  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
707
708         * common/gst-xmlinspect.py:
709         * configure.ac:
710         * docs/libs/tmpl/gstdataprotocol.sgml:
711         * docs/random/release:
712         * po/af.po:
713         * po/az.po:
714         * po/bg.po:
715         * po/ca.po:
716         * po/cs.po:
717         * po/de.po:
718         * po/en_GB.po:
719         * po/fr.po:
720         * po/it.po:
721         * po/nb.po:
722         * po/nl.po:
723         * po/ru.po:
724         * po/sq.po:
725         * po/sr.po:
726         * po/sv.po:
727         * po/tr.po:
728         * po/uk.po:
729         * po/vi.po:
730         * win32/common/config.h:
731         * win32/common/config.h.in:
732         * win32/vs6/gst_inspect.dsp:
733         * win32/vs6/gst_launch.dsp:
734         * win32/vs6/libgstbase.dsp:
735         * win32/vs6/libgstelements.dsp:
736         * win32/vs6/libgstreamer.dsp:
737         * win32/vs7/GStreamer.vcproj:
738         * win32/vs7/gst-inspect.vcproj:
739         * win32/vs7/gst-launch.vcproj:
740         * win32/vs7/libgstbase.vcproj:
741           bump GST_MAJORMINOR to 0.10
742           reset libtool version
743
744 2005-12-01  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
745
746         * po/LINGUAS:
747         * po/bg.po:
748           Added Bulgarian translation by (Alexander Shopov)
749
750 2005-12-01  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
751
752         * tests/check/gst/gstplugin.c:
753           fix test
754
755 2005-12-01  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
756
757         * common/gst-xmlinspect.py:
758         * common/gtk-doc-plugins.mak:
759         * configure.ac:
760         * docs/Makefile.am:
761         * docs/gst/Makefile.am:
762         * docs/gst/gstreamer-docs.sgml:
763         * docs/gst/gstreamer-sections.txt:
764         * docs/gst/gstreamer.types:
765         * docs/gst/gstreamer.types.in:
766         * docs/plugins/Makefile.am:
767         * docs/plugins/gstreamer-plugins-docs.sgml:
768         * docs/plugins/gstreamer-plugins-sections.txt:
769         * docs/plugins/gstreamer-plugins.types:
770         * docs/plugins/inspect.stamp:
771         * docs/plugins/inspect/plugin-coreelements.xml:
772         * docs/plugins/inspect/plugin-coreindexers.xml:
773         * docs/plugins/scanobj-build.stamp:
774         * gstreamer.spec.in:
775         * plugins/elements/Makefile.am:
776         * plugins/elements/gstelements.c:
777         * plugins/elements/gstfakesink.c:
778         * plugins/elements/gstfakesrc.c:
779         * plugins/elements/gstfilesink.c:
780         * plugins/elements/gstfilesrc.c:
781         * plugins/elements/gstqueue.c:
782         * plugins/indexers/Makefile.am:
783         * plugins/indexers/gstindexers.c:
784           document core plugins in a separate document just like all the
785           others
786           rename these plugins to something starting with core
787
788 2005-12-01  Andy Wingo  <wingo@pobox.com>
789
790         * gst/gstevent.h (struct _GstEvent): Meant to remove the extra
791         padding here before, but it missed the commit.
792
793 2005-12-01  Thomas Vander Stichele  <thomas at apestaart dot org>
794
795         * libs/gst/controller/gstinterpolation.c:
796           whitespace prices have crashed, we should feel free to use some now
797           use gst_guint64_to_gdouble
798
799 2005-12-01  Thomas Vander Stichele  <thomas at apestaart dot org>
800
801         * libs/gst/controller/gstcontroller.c:
802         * libs/gst/controller/gsthelper.c:
803         * libs/gst/controller/gstinterpolation.c:
804         * libs/gst/controller/lib.c:
805           wrap config.h include
806
807 2005-12-01  Thomas Vander Stichele  <thomas at apestaart dot org>
808
809         * docs/gst/gstreamer-sections.txt:
810           update docs
811
812 2005-12-01  Thomas Vander Stichele  <thomas at apestaart dot org>
813
814         * plugins/elements/gstelements.c:
815         * plugins/elements/gstfdsink.c: (gst_fd_sink__base_init),
816         (gst_fd_sink__class_init), (gst_fd_sink__init),
817         (gst_fd_sink__chain), (gst_fd_sink__set_property),
818         (gst_fd_sink__get_property):
819         * plugins/elements/gstfdsink.h:
820         * plugins/elements/gstfdsrc.c: (_do_init), (gst_fd_src_base_init),
821         (gst_fd_src_class_init), (gst_fd_src_init), (gst_fd_src_dispose),
822         (gst_fd_src_update_fd), (gst_fd_src_start), (gst_fd_src_stop),
823         (gst_fd_src_unlock), (gst_fd_src_set_property),
824         (gst_fd_src_get_property), (gst_fd_src_create),
825         (gst_fd_src_is_seekable), (gst_fd_src_get_size),
826         (gst_fd_src_uri_get_type), (gst_fd_src_uri_get_protocols),
827         (gst_fd_src_uri_get_uri), (gst_fd_src_uri_set_uri),
828         (gst_fd_src_uri_handler_init):
829         * plugins/elements/gstfdsrc.h:
830         * plugins/elements/gstqueue.c: (gst_queue_get_type):
831           more anal cleanup
832
833 2005-11-30  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
834
835         * docs/gst/Makefile.am:
836         * docs/gst/gstreamer.types.in:
837         * gst/Makefile.am:
838           fix the docs build
839
840 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
841
842         * configure.ac:
843         * gst/Makefile.am:
844         * gst/gst.c:
845         * gst/gstplugin.h:
846         * gst/gstregistry.h:
847         * tests/benchmarks/complexity.c:
848         * tests/benchmarks/mass-elements.c:
849         * tests/check/Makefile.am:
850         * tools/Makefile.am:
851         * tools/gst-inspect.c:
852         * tools/gst-xmlinspect.c:
853           various fixes to make
854           --disable-nls --disable-registry --disable-loadsave
855           --disable-parse --disable-gst-debug
856           work and get the core .so down to 360444 bytes after stripping
857
858 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
859
860         * Makefile.am:
861         * configure.ac:
862           descend into tests
863         * docs/random/thomasvs/TODO:
864         * tests/Makefile.am:
865         * tests/README:
866           add a README
867
868 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
869
870         * win32/GStreamer.vcproj:
871         * win32/MANIFEST:
872         * win32/Makefile:
873         * win32/Makefile.inspect:
874         * win32/Makefile.launch:
875         * win32/Makefile.register:
876         * win32/README.txt:
877         * win32/gst-inspect.vcproj:
878         * win32/gst-launch.vcproj:
879         * win32/gst-register.vcproj:
880         * win32/gstelements.vcproj:
881         * win32/gstgetbits.def:
882         * win32/gstgetbits.vcproj:
883         * win32/gstreamer-dbg.def:
884         * win32/gstreamer.def:
885         * win32/libgstbase.def:
886         * win32/libgstbase.vcproj:
887         * win32/link_oldruntime.c:
888         * win32/mman.c:
889         * win32/mman.h:
890         * win32/mman.inl:
891         * win32/msvc71.sln:
892           move even more stuff, win32/ is nice and clean now
893
894 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
895
896         * libs/gst/control/.cvsignore:
897         * win32/MANIFEST:
898         * win32/config.h:
899         * win32/dirent.c:
900         * win32/dirent.h:
901         * win32/gstbytestream.def:
902         * win32/gstbytestream.vcproj:
903         * win32/gstconfig.h:
904         * win32/gstenumtypes.c:
905         * win32/gstenumtypes.h:
906         * win32/gstoptimalscheduler.vcproj:
907         * win32/gstversion.h:
908         * win32/gtchar.h:
909         * win32/testsuite/bins.vcproj:
910         * win32/testsuite/bytestream.vcproj:
911         * win32/testsuite/caps.vcproj:
912         * win32/testsuite/cleanup.vcproj:
913         * win32/testsuite/clock.vcproj:
914         * win32/testsuite/debug.vcproj:
915         * win32/testsuite/dlopen.vcproj:
916         * win32/testsuite/dynparams.vcproj:
917         * win32/testsuite/elements.vcproj:
918         * win32/testsuite/ghostpads.vcproj:
919         * win32/testsuite/indexers.vcproj:
920         * win32/testsuite/negotiation.vcproj:
921         * win32/testsuite/parse.vcproj:
922         * win32/testsuite/plugin.vcproj:
923         * win32/testsuite/refcounting.vcproj:
924         * win32/testsuite/schedulers.vcproj:
925         * win32/testsuite/states.vcproj:
926         * win32/testsuite/tags.vcproj:
927         * win32/testsuite/threads.vcproj:
928           remove old win32 stuff that isn't maintained and should be
929           reorganized
930
931 2005-11-30  Andy Wingo  <wingo@pobox.com>
932
933         * configure.ac (GST_PKG_DEPS): Revert previous patch, makes
934         loading the gst.interfaces python module bork.
935
936         * configure.ac (GST_PKG_DEPS): Use gmodule-no-export-2.0.pc,
937         available since GLib 2.2. Fixes #318031.
938
939 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
940
941         * Makefile.am:
942         * check/.cvsignore:
943         * check/Makefile.am:
944         * check/elements/.cvsignore:
945         * check/elements/fakesrc.c:
946         * check/elements/fdsrc.c:
947         * check/elements/identity.c:
948         * check/generic/.cvsignore:
949         * check/generic/states.c:
950         * check/gst-libs/.cvsignore:
951         * check/gst-libs/controller.c:
952         * check/gst-libs/gdp.c:
953         * check/gst/.cvsignore:
954         * check/gst/capslist.h:
955         * check/gst/gst.c:
956         * check/gst/gstbin.c:
957         * check/gst/gstbuffer.c:
958         * check/gst/gstbus.c:
959         * check/gst/gstcaps.c:
960         * check/gst/gstelement.c:
961         * check/gst/gstevent.c:
962         * check/gst/gstghostpad.c:
963         * check/gst/gstiterator.c:
964         * check/gst/gstmessage.c:
965         * check/gst/gstminiobject.c:
966         * check/gst/gstobject.c:
967         * check/gst/gstpad.c:
968         * check/gst/gstpipeline.c:
969         * check/gst/gstplugin.c:
970         * check/gst/gstsegment.c:
971         * check/gst/gststructure.c:
972         * check/gst/gstsystemclock.c:
973         * check/gst/gsttag.c:
974         * check/gst/gstutils.c:
975         * check/gst/gstvalue.c:
976         * check/net/.cvsignore:
977         * check/net/gstnetclientclock.c:
978         * check/net/gstnettimeprovider.c:
979         * check/pipelines/.cvsignore:
980         * check/pipelines/cleanup.c:
981         * check/pipelines/simple_launch_lines.c:
982         * check/pipelines/stress.c:
983         * check/states/.cvsignore:
984         * check/states/sinks.c:
985         * configure.ac:
986         * examples/Makefile.am:
987         * examples/appreader/.cvsignore:
988         * examples/appreader/Makefile.am:
989         * examples/appreader/appreader.c:
990         * examples/controller/.cvsignore:
991         * examples/controller/Makefile.am:
992         * examples/controller/audio-example.c:
993         * examples/cutter/.cvsignore:
994         * examples/cutter/Makefile.am:
995         * examples/cutter/cutter.c:
996         * examples/cutter/cutter.h:
997         * examples/events/Makefile.am:
998         * examples/events/seek.c:
999         * examples/helloworld/.cvsignore:
1000         * examples/helloworld/Makefile.am:
1001         * examples/helloworld/helloworld.c:
1002         * examples/helloworld2/.cvsignore:
1003         * examples/helloworld2/Makefile.am:
1004         * examples/helloworld2/helloworld2.c:
1005         * examples/launch/.cvsignore:
1006         * examples/launch/Makefile.am:
1007         * examples/launch/mp3parselaunch.c:
1008         * examples/launch/mp3play:
1009         * examples/manual/.cvsignore:
1010         * examples/manual/Makefile.am:
1011         * examples/manual/extract.pl:
1012         * examples/metadata/Makefile.am:
1013         * examples/metadata/read-metadata.c:
1014         * examples/mixer/.cvsignore:
1015         * examples/mixer/Makefile.am:
1016         * examples/mixer/mixer.c:
1017         * examples/mixer/mixer.h:
1018         * examples/pingpong/.cvsignore:
1019         * examples/pingpong/Makefile.am:
1020         * examples/pingpong/pingpong.c:
1021         * examples/plugins/.cvsignore:
1022         * examples/plugins/Makefile.am:
1023         * examples/plugins/example.c:
1024         * examples/plugins/example.h:
1025         * examples/pwg/.cvsignore:
1026         * examples/pwg/Makefile.am:
1027         * examples/pwg/extract.pl:
1028         * examples/queue/.cvsignore:
1029         * examples/queue/Makefile.am:
1030         * examples/queue/queue.c:
1031         * examples/queue2/.cvsignore:
1032         * examples/queue2/Makefile.am:
1033         * examples/queue2/queue2.c:
1034         * examples/queue3/.cvsignore:
1035         * examples/queue3/Makefile.am:
1036         * examples/queue3/queue3.c:
1037         * examples/queue4/.cvsignore:
1038         * examples/queue4/Makefile.am:
1039         * examples/queue4/queue4.c:
1040         * examples/retag/.cvsignore:
1041         * examples/retag/Makefile.am:
1042         * examples/retag/retag.c:
1043         * examples/retag/transcode.c:
1044         * examples/thread/.cvsignore:
1045         * examples/thread/Makefile.am:
1046         * examples/thread/thread.c:
1047         * examples/typefind/.cvsignore:
1048         * examples/typefind/Makefile.am:
1049         * examples/typefind/typefind.c:
1050         * examples/xml/.cvsignore:
1051         * examples/xml/Makefile.am:
1052         * examples/xml/createxml.c:
1053         * examples/xml/runxml.c:
1054         * tests/Makefile.am:
1055         * tests/check/Makefile.am:
1056         * testsuite/.cvsignore:
1057         * testsuite/Makefile.am:
1058         * testsuite/Rules:
1059         * testsuite/caps/.cvsignore:
1060         * testsuite/caps/Makefile.am:
1061         * testsuite/caps/app_fixate.c:
1062         * testsuite/caps/audioscale.c:
1063         * testsuite/caps/caps.c:
1064         * testsuite/caps/caps.h:
1065         * testsuite/caps/caps_strings:
1066         * testsuite/caps/compatibility.c:
1067         * testsuite/caps/deserialize.c:
1068         * testsuite/caps/enumcaps.c:
1069         * testsuite/caps/eratosthenes.c:
1070         * testsuite/caps/filtercaps.c:
1071         * testsuite/caps/fixed.c:
1072         * testsuite/caps/fraction-convert.c:
1073         * testsuite/caps/fraction-multiply-and-zero.c:
1074         * testsuite/caps/intersect2.c:
1075         * testsuite/caps/intersection.c:
1076         * testsuite/caps/normalisation.c:
1077         * testsuite/caps/random.c:
1078         * testsuite/caps/renegotiate.c:
1079         * testsuite/caps/sets.c:
1080         * testsuite/caps/simplify.c:
1081         * testsuite/caps/string-conversions.c:
1082         * testsuite/caps/structure.c:
1083         * testsuite/caps/subtract.c:
1084         * testsuite/caps/union.c:
1085         * testsuite/debug/.cvsignore:
1086         * testsuite/debug/Makefile.am:
1087         * testsuite/debug/category.c:
1088         * testsuite/debug/commandline.c:
1089         * testsuite/debug/global.c:
1090         * testsuite/debug/output.c:
1091         * testsuite/debug/printf_extension.c:
1092         * testsuite/dlopen/.cvsignore:
1093         * testsuite/dlopen/Makefile.am:
1094         * testsuite/dlopen/dlopen_gst.c:
1095         * testsuite/dlopen/loadgst.c:
1096         * testsuite/elements/.cvsignore:
1097         * testsuite/elements/Makefile.am:
1098         * testsuite/elements/gst-inspect-check.in:
1099         * testsuite/elements/struct_i386.h:
1100         * testsuite/elements/struct_size.c:
1101         * testsuite/indexers/.cvsignore:
1102         * testsuite/indexers/Makefile.am:
1103         * testsuite/indexers/cache1.c:
1104         * testsuite/indexers/indexdump.c:
1105         * testsuite/parse/.cvsignore:
1106         * testsuite/parse/Makefile.am:
1107         * testsuite/parse/parse1.c:
1108         * testsuite/parse/parse2.c:
1109         * testsuite/plugin/.cvsignore:
1110         * testsuite/plugin/Makefile.am:
1111         * testsuite/plugin/README:
1112         * testsuite/plugin/dynamic.c:
1113         * testsuite/plugin/linked.c:
1114         * testsuite/plugin/loading.c:
1115         * testsuite/plugin/registry.c:
1116         * testsuite/plugin/static.c:
1117         * testsuite/plugin/static2.c:
1118         * testsuite/plugin/testplugin.c:
1119         * testsuite/plugin/testplugin2.c:
1120         * testsuite/plugin/testplugin2_s.c:
1121         * testsuite/plugin/testplugin_s.c:
1122         * testsuite/refcounting/.cvsignore:
1123         * testsuite/refcounting/Makefile.am:
1124         * testsuite/refcounting/bin.c:
1125         * testsuite/refcounting/element.c:
1126         * testsuite/refcounting/element_pad.c:
1127         * testsuite/refcounting/mainloop.c:
1128         * testsuite/refcounting/mem.c:
1129         * testsuite/refcounting/mem.h:
1130         * testsuite/refcounting/object.c:
1131         * testsuite/refcounting/pad.c:
1132         * testsuite/refcounting/sched.c:
1133         * testsuite/refcounting/thread.c:
1134         * testsuite/states/.cvsignore:
1135         * testsuite/states/Makefile.am:
1136         * testsuite/states/bin.c:
1137         * testsuite/states/locked.c:
1138         * testsuite/states/parent.c:
1139         * testsuite/threads/.cvsignore:
1140         * testsuite/threads/159566.c:
1141         * testsuite/threads/159852.c:
1142         * testsuite/threads/Makefile.am:
1143         * testsuite/threads/queue.c:
1144         * testsuite/threads/signals.c:
1145         * testsuite/threads/staticrec.c:
1146         * testsuite/threads/thread.c:
1147         * testsuite/threads/threadb.c:
1148         * testsuite/threads/threadc.c:
1149         * testsuite/threads/threadd.c:
1150         * testsuite/threads/threade.c:
1151         * testsuite/threads/threadf.c:
1152         * testsuite/threads/threadg.c:
1153         * testsuite/threads/threadh.c:
1154         * testsuite/threads/threadi.c:
1155           move all of these under tests
1156
1157 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1158
1159         * configure.ac:
1160         * tests/Makefile.am:
1161           fix distcheck
1162
1163 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1164
1165         * docs/gst/gstreamer-sections.txt:
1166         * tests/sched/.cvsignore:
1167         * tests/sched/Makefile.am:
1168         * tests/sched/cases/(fs-fs).xml:
1169         * tests/sched/cases/(fs-i-fs).xml:
1170         * tests/sched/cases/(fs-i-i-fs).xml:
1171         * tests/sched/cases/(fs-i-q[i-fs]).xml:
1172         * tests/sched/dynamic-pipeline.c:
1173         * tests/sched/interrupt1.c:
1174         * tests/sched/interrupt2.c:
1175         * tests/sched/interrupt3.c:
1176         * tests/sched/runtestcases:
1177         * tests/sched/runxml.c:
1178         * tests/sched/sched-stress.c:
1179         * tests/sched/sort.c:
1180         * tests/sched/testcases:
1181         * tests/sched/testcases1.tc:
1182         * tests/seeking/.cvsignore:
1183         * tests/seeking/Makefile.am:
1184         * tests/seeking/seeking1.c:
1185         * tests/threadstate/.cvsignore:
1186         * tests/threadstate/Makefile.am:
1187         * tests/threadstate/test1.c:
1188         * tests/threadstate/test2.c:
1189         * tests/threadstate/threadstate1.c:
1190         * tests/threadstate/threadstate2.c:
1191         * tests/threadstate/threadstate3.c:
1192         * tests/threadstate/threadstate4.c:
1193         * tests/threadstate/threadstate5.c:
1194           remove obsolete tests
1195         * configure.ac:
1196         * tests/bench-complexity.scm:
1197         * tests/bench-mass_elements.scm:
1198         * tests/complexity.c:
1199         * tests/complexity.gnuplot:
1200         * tests/instantiate/.cvsignore:
1201         * tests/instantiate/Makefile.am:
1202         * tests/instantiate/caps.c:
1203         * tests/mass_elements.c:
1204         * tests/network-clock-utils.scm:
1205         * tests/network-clock.scm:
1206         * tests/plot-data:
1207         First pass at cleaning up tests/ dir before moving the rest
1208         Combined with CVS surgery
1209
1210 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1211
1212         * po/POTFILES.in:
1213           queue has moved, update
1214
1215 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1216
1217         * docs/gst/gstreamer-sections.txt:
1218           remove double entries from the docs
1219         * gst/gst_private.h:
1220         * gst/gstinfo.c: (_gst_debug_init):
1221           remove the THREAD debug category
1222         * gst/Makefile.am:
1223         * gst/gstqueue.c:
1224         * gst/gstqueue.h:
1225         * docs/gst/gstreamer.types:
1226         * plugins/elements/gstqueue.c: (gst_queue_get_type),
1227         (gst_queue_init), (gst_queue_finalize), (gst_queue_change_state):
1228           completely move queue and fix up debugging categories
1229
1230 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1231
1232         * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
1233           make initialization portable, using LL is not
1234
1235 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1236
1237         * win32/common/gstconfig.h:
1238           add large padding
1239
1240 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1241
1242         * win32/common/libgstreamer.def:
1243           rename symbols; sort base section
1244
1245 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1246
1247         * gst/gstclock.c: (do_linear_regression):
1248           remove crack non-portable handrolled DEBUG macro
1249
1250 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1251
1252         * docs/random/release:
1253           update notes
1254         * win32/common/gstenumtypes.c: (register_gst_object_flags),
1255         (gst_object_flags_get_type), (register_gst_bin_flags),
1256         (gst_bin_flags_get_type), (register_gst_buffer_flag),
1257         (gst_buffer_flag_get_type), (register_gst_bus_flags),
1258         (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
1259         (gst_bus_sync_reply_get_type), (register_gst_caps_flags),
1260         (gst_caps_flags_get_type), (register_gst_clock_return),
1261         (gst_clock_return_get_type), (register_gst_clock_entry_type),
1262         (gst_clock_entry_type_get_type), (register_gst_clock_flags),
1263         (gst_clock_flags_get_type), (register_gst_state),
1264         (gst_state_get_type), (register_gst_state_change_return),
1265         (gst_state_change_return_get_type), (register_gst_state_change),
1266         (gst_state_change_get_type), (register_gst_element_flags),
1267         (gst_element_flags_get_type), (register_gst_core_error),
1268         (gst_core_error_get_type), (register_gst_library_error),
1269         (gst_library_error_get_type), (register_gst_resource_error),
1270         (gst_resource_error_get_type), (register_gst_stream_error),
1271         (gst_stream_error_get_type), (register_gst_event_type_flags),
1272         (gst_event_type_flags_get_type), (register_gst_event_type),
1273         (gst_event_type_get_type), (register_gst_seek_type),
1274         (gst_seek_type_get_type), (register_gst_seek_flags),
1275         (gst_seek_flags_get_type), (register_gst_format),
1276         (gst_format_get_type), (register_gst_index_certainty),
1277         (gst_index_certainty_get_type), (register_gst_index_entry_type),
1278         (gst_index_entry_type_get_type),
1279         (register_gst_index_lookup_method),
1280         (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
1281         (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
1282         (gst_index_resolver_method_get_type), (register_gst_index_flags),
1283         (gst_index_flags_get_type), (register_gst_debug_level),
1284         (gst_debug_level_get_type), (register_gst_debug_color_flags),
1285         (gst_debug_color_flags_get_type), (register_gst_iterator_result),
1286         (gst_iterator_result_get_type), (register_gst_iterator_item),
1287         (gst_iterator_item_get_type), (register_gst_message_type),
1288         (gst_message_type_get_type), (register_gst_mini_object_flags),
1289         (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
1290         (gst_pad_link_return_get_type), (register_gst_flow_return),
1291         (gst_flow_return_get_type), (register_gst_activate_mode),
1292         (gst_activate_mode_get_type), (register_gst_pad_direction),
1293         (gst_pad_direction_get_type), (register_gst_pad_flags),
1294         (gst_pad_flags_get_type), (register_gst_pad_presence),
1295         (gst_pad_presence_get_type), (register_gst_pad_template_flags),
1296         (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
1297         (gst_pipeline_flags_get_type), (register_gst_plugin_error),
1298         (gst_plugin_error_get_type), (register_gst_plugin_flags),
1299         (gst_plugin_flags_get_type), (register_gst_rank),
1300         (gst_rank_get_type), (register_gst_query_type),
1301         (gst_query_type_get_type), (register_gst_tag_merge_mode),
1302         (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
1303         (gst_tag_flag_get_type), (register_gst_task_state),
1304         (gst_task_state_get_type), (register_gst_alloc_trace_flags),
1305         (gst_alloc_trace_flags_get_type),
1306         (register_gst_type_find_probability),
1307         (gst_type_find_probability_get_type), (register_gst_uri_type),
1308         (gst_uri_type_get_type), (register_gst_parse_error),
1309         (gst_parse_error_get_type):
1310         * win32/common/gstenumtypes.h:
1311         * win32/common/gstversion.h:
1312           update visual studio generated files
1313
1314 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1315
1316         * win32/vs6/libgstbase.dsp:
1317         * win32/vs6/libgstelements.dsp:
1318           update project files for new locations
1319
1320 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1321
1322         * Makefile.am:
1323           remove some files
1324         * README:
1325           reinstate and update
1326         * DEVEL:
1327         * REQUIREMENTS:
1328           removed
1329         * LICENSE:
1330         * docs/random/LICENSE:
1331           moved to random
1332
1333 2005-11-30  Edward Hervey  <edward@fluendo.com>
1334
1335         * gst/gsttypefind.c: (gst_type_find_register):
1336         * gst/gsttypefind.h:
1337         * gst/gsttypefindfactory.c: (gst_type_find_factory_init),
1338         (gst_type_find_factory_dispose):
1339         * gst/gsttypefindfactory.h:
1340         Fix memory leak in GstTypeFindFactory.
1341
1342 2005-11-29  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1343
1344         * gst/gst.c:
1345         * plugins/elements/Makefile.am:
1346         * plugins/elements/gstelements.c:
1347         * plugins/elements/gstqueue.c:
1348           move queue from core to the elements plugin
1349
1350 2005-11-29  Andy Wingo  <wingo@pobox.com>
1351
1352         * libs/gst/base/gstbasetransform.h: 
1353         * libs/gst/base/gstbasesrc.h: 
1354         * libs/gst/base/gstbasesink.h: en-LARGE the padding.
1355
1356         * gst/gstconfig.h.in (GST_PADDING_LARGE): New define, the number
1357         of pointers by which to pad very extensible base classes (like the
1358         ones in libs/gst/base).
1359
1360 2005-11-29  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1361
1362         * docs/gst/gstreamer-docs.sgml:
1363         * docs/gst/gstreamer-sections.txt:
1364         * docs/libs/gstreamer-libs-docs.sgml:
1365         * docs/libs/gstreamer-libs-sections.txt:
1366           moving documentation from core to lib
1367
1368 2005-11-29  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1369
1370         * check/Makefile.am:
1371         * configure.ac:
1372         * docs/gst/Makefile.am:
1373         * gst/Makefile.am:
1374         * gst/base/.cvsignore:
1375         * gst/base/Makefile.am:
1376         * gst/base/README:
1377         * gst/base/gstadapter.c:
1378         * gst/base/gstadapter.h:
1379         * gst/base/gstbasesink.c:
1380         * gst/base/gstbasesink.h:
1381         * gst/base/gstbasesrc.c:
1382         * gst/base/gstbasesrc.h:
1383         * gst/base/gstbasetransform.c:
1384         * gst/base/gstbasetransform.h:
1385         * gst/base/gstcollectpads.c:
1386         * gst/base/gstcollectpads.h:
1387         * gst/base/gstpushsrc.c:
1388         * gst/base/gstpushsrc.h:
1389         * gst/base/gsttypefindhelper.c:
1390         * gst/base/gsttypefindhelper.h:
1391         * gst/check/Makefile.am:
1392         * gst/check/gstcheck.c:
1393         * gst/check/gstcheck.h:
1394         * gst/net/Makefile.am:
1395         * gst/net/gstnet.h:
1396         * gst/net/gstnetclientclock.c:
1397         * gst/net/gstnetclientclock.h:
1398         * gst/net/gstnettimepacket.c:
1399         * gst/net/gstnettimepacket.h:
1400         * gst/net/gstnettimeprovider.c:
1401         * gst/net/gstnettimeprovider.h:
1402         * libs/gst/Makefile.am:
1403         * libs/gst/base/Makefile.am:
1404         * libs/gst/base/gstbasetransform.c:
1405         * libs/gst/check/Makefile.am:
1406         * plugins/elements/Makefile.am:
1407         * po/POTFILES.in:
1408           CVS surgery + support to move base, check, and net out of gst
1409           and into libs/gst
1410
1411 2005-11-29  Andy Wingo  <wingo@pobox.com>
1412
1413         * gst/gstevent.h (struct _GstEvent): Only one pointer of padding.
1414
1415         * gst/gststructure.h (struct _GstStructure): Only one pointer of
1416         padding.
1417
1418         * gst/gstquery.h (struct _GstQuery): Only one pointer of padding.
1419
1420         * gst/gstpluginfeature.h: Remove a comment in PluginFeature.
1421
1422         * gst/gstplugin.h (struct _GstPluginClass): Add some padding.
1423
1424         * gst/gstobject.h: (struct _GstObject): Only one pointer of
1425         padding; reduces object size by about 30%. We don't expect
1426         anything else to go into gstobject.
1427
1428         * gst/gstminiobject.h (struct _GstMiniObject)
1429         (struct _GstMiniObjectClass): Only one pointer of padding; the
1430         payload is only a pointer and two ints anyway. For the class there
1431         are only two methods as well.
1432         
1433         * gst/gstelement.h (struct _GstElementClass): Removed
1434         the state_changed signal callback, it is not used.
1435
1436 2005-11-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1437
1438         * docs/gst/gstreamer.types:
1439           fix includes, though they are a little dinky
1440
1441 2005-11-29  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1442
1443         * check/Makefile.am:
1444           look in the right place for elements, a lot more chance of
1445           success
1446         * gst/Makefile.am:
1447           remove indexers and elements subdirs
1448         * plugins/Makefile.am:
1449           make indexers conditional
1450
1451 2005-11-29  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1452
1453         * Makefile.am:
1454         * configure.ac:
1455         * plugins/elements/Makefile.am:
1456         * plugins/elements/gstcapsfilter.c:
1457         * plugins/elements/gstfilesink.c:
1458         * plugins/elements/gstfilesrc.c:
1459         * plugins/elements/gstidentity.c:
1460         * plugins/indexers/Makefile.am:
1461           do CVS surgery and related build fixery to move elements
1462           and indexers in a new gstreamer/plugins directory, out of the
1463           gst/ directory
1464
1465 2005-11-29  Andy Wingo  <wingo@pobox.com>
1466
1467         * check/Makefile.am:
1468         * pkgconfig/gstreamer-net-uninstalled.pc.in:
1469         * pkgconfig/gstreamer-net.pc.in:
1470         * gst/net/Makefile.am: Rename gstnet-tempname to gstnet. Fixes
1471         #322257.
1472
1473 2005-11-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1474
1475         * tools/Makefile.am:
1476         * tools/gst-complete.1.in:
1477         * tools/gst-complete.c:
1478         * tools/gst-compprep.1.in:
1479         * tools/gst-compprep.c:
1480           removing -compprep and -complete
1481
1482 2005-11-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1483
1484         * gst/gstevent.c: (gst_event_new_new_segment),
1485         (gst_event_parse_new_segment):
1486         * gst/gstevent.h:
1487           fix #320529 - clean up new_segment API and structure.
1488           Let's hope everyone was using the methods, and not the structure.
1489
1490 2005-11-29  Edward Hervey  <edward@fluendo.com>
1491
1492         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1493         (gst_base_sink_event), (gst_base_sink_do_sync),
1494         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
1495         Properly handle non GST_FORMAT_TIME segment
1496         * gst/elements/gstidentity.c: (gst_identity_transform_ip):
1497         Properly handle non GST_FORMAT_TIME segment
1498         * gst/gstsegment.c:
1499         This function is valid if the accumulator is 0 and the format
1500         is different from the requested format.
1501         
1502 2005-11-29  Jan Schmidt  <thaytan@mad.scientist.com>
1503
1504         * docs/gst/gstreamer-sections.txt:
1505         Add gst_query_new_seeking and gst_query_parse_seeking to the
1506         docs.
1507
1508 2005-11-29  Jan Schmidt  <thaytan@mad.scientist.com>
1509
1510         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
1511           Treat a pad alloc with new caps the same as if we were not
1512           negotiated, in order to allow a changing upstream output
1513           to produce a new format of data.
1514
1515 2005-11-29  Edward Hervey  <edward@fluendo.com>
1516
1517         * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
1518         (gst_base_transform_event), (gst_base_transform_eventfunc):
1519         The event virtual method is now properly implemented, with a default
1520         handler
1521         Sub classes should call the parent_class event method. They should
1522         return FALSE if they had a problem handling the given event, or don't
1523         want GstBaseTransform to send that even downstream
1524         * gst/elements/gstidentity.c: (gst_identity_class_init),
1525         (gst_identity_init), (gst_identity_event),
1526         (gst_identity_transform_ip), (gst_identity_set_property),
1527         (gst_identity_get_property):
1528         * gst/elements/gstidentity.h:
1529         Added the single-segment boolean property.
1530         If set to TRUE, it will output a single segment of data, starting from
1531         0, will eat up all incoming newsegment, and modify the timestamp of the
1532         buffers accordingly
1533
1534 2005-11-29  Tim-Philipp Müller  <tim at centricular dot net>
1535
1536         * gst/gstghostpad.c: (gst_proxy_pad_get_target):
1537           Don't ref NULL target pad (#322751). Improve docs.
1538
1539 2005-11-29  Michael Smith  <msmith@fluendo.com>
1540
1541         * gst/gstregistryxml.c: (load_plugin):
1542           Don't crash if we failed to load a feature from a plugin. 
1543
1544 2005-11-28  Thomas Vander Stichele  <thomas at apestaart dot org>
1545
1546         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
1547         (GST_START_TEST):
1548           use more check API and less GLib API
1549
1550 2005-11-28  Thomas Vander Stichele  <thomas at apestaart dot org>
1551
1552         * Makefile.am:
1553           don't run checks if we don't have check
1554         * common/check.mak:
1555           remove the registry when running make torture
1556         * docs/gst/gstreamer-sections.txt:
1557           remove second multiply
1558         * gst/gstqueue.c: (gst_queue_loop):
1559           fix a compile warning when disabling debug
1560
1561 2005-11-28  Jan Schmidt  <thaytan@mad.scientist.com>
1562
1563         * gst/gstinfo.h:
1564         Hey! Let's print the pad name if the pointer != NULL instead
1565         of when it == NULL :-)
1566
1567 2005-11-28  Wim Taymans  <wim@fluendo.com>
1568
1569         * check/gst/gstutils.c: (GST_START_TEST):
1570         Updated check, add some scaling accuracy checking code.
1571
1572         * gst/gstutils.c: (gst_util_div128_64),
1573         (gst_util_uint64_scale_int64), (gst_util_uint64_scale),
1574         (gst_util_uint64_scale_int):
1575         Fix 6 times faster division code. Optimize for common 
1576         1/1 and less common X/1 cases.
1577
1578 2005-11-28  Wim Taymans  <wim@fluendo.com>
1579
1580         * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
1581         More checks.
1582
1583         * gst/gstclock.c: (gst_clock_finalize), (gst_clock_set_master),
1584         (do_linear_regression), (gst_clock_add_observation):
1585         Cleanups.
1586         Release lock when the clock cannot be slaved.
1587         Catch the case where the regression returned an invalid denominator.
1588
1589         * gst/gstutils.c: (gst_util_div128_64_iterate),
1590         (gst_util_div128_64), (gst_util_uint64_scale_int64),
1591         (gst_util_uint64_scale), (gst_util_uint64_scale_int):
1592         Add protentially more performant non-iterative 128/64 divide function
1593         that unfortunatly does not work yet.
1594         Shortcut the trivial 0/X = 0 case.
1595         Remove the warnings on overflow.
1596
1597 2005-11-28  Thomas Vander Stichele  <thomas at apestaart dot org>
1598
1599         * gst/gstplugin.c: (gst_plugin_register_func):
1600           everything causing a plugin not to load should be at least a WARNING
1601
1602 2005-11-28  Stefan Kost  <ensonic@users.sf.net>
1603
1604         * docs/random/ensonic/dparams.txt:
1605           some TODOs for the next dev cycle
1606         * libs/gst/controller/gstcontroller.c:
1607         (gst_controlled_property_set_interpolation_mode),
1608         (gst_controlled_property_new):
1609         * libs/gst/controller/gstcontroller.h:
1610           use base type to assign acccessor functions
1611
1612 2005-11-28  Jan Schmidt  <thaytan@mad.scientist.com>
1613
1614         * check/Makefile.am:
1615         Oops, that should have been top_srcdir
1616
1617 2005-11-28  Jan Schmidt  <thaytan@mad.scientist.com>
1618
1619         * check/Makefile.am:
1620         * check/elements/fdsrc.c: (GST_START_TEST):
1621         Use a cmdline define to specify the location of a file to use for
1622         testing, to avoid breaking distcheck.
1623
1624 2005-11-28  Andy Wingo  <wingo@pobox.com>
1625
1626         * gst/gstpad.c (fixate_value): Use array functions for arrays.
1627
1628 2005-11-28  Edward Hervey  <edward@fluendo.com>
1629
1630         * tools/gst-launch.c: (main):
1631         Clarify the output strings, makes it easier to translate.
1632         Fixes #322626
1633
1634 2005-11-28  Thomas Vander Stichele  <thomas at apestaart dot org>
1635
1636         * gst/Makefile.am:
1637           don't try and build net if we don't even have <sys/socket.h>
1638
1639 2005-11-27  Jan Schmidt  <thaytan@mad.scientist.com>
1640
1641         * check/Makefile.am:
1642         * check/elements/fdsrc.c: (event_func), (setup_fdsrc),
1643         (cleanup_fdsrc), (GST_START_TEST), (fdsrc_suite), (main):
1644           Add tests for fdsrc seekability
1645
1646         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
1647         (gst_fdsrc_init), (gst_fdsrc_update_fd), (gst_fdsrc_start),
1648         (gst_fdsrc_set_property), (gst_fdsrc_is_seekable),
1649         (gst_fdsrc_get_size), (gst_fdsrc_uri_set_uri):
1650         * gst/elements/gstfdsrc.h:
1651           fdsrc should not be a 'live' source.
1652           Implement seeking on seekable fd's.
1653
1654         * gst/gstquery.c: (gst_query_new_seeking),
1655         (gst_query_parse_seeking):
1656         * gst/gstquery.h:
1657           Implement SEEKING query functions: 
1658             *_new_seeking and *_parse_seeking
1659
1660 2005-11-27  Stefan Kost  <ensonic@users.sf.net>
1661
1662         * gst/gstelement.c: (gst_element_dispose):
1663           don't loop forever
1664
1665         * gst/gstiterator.c:
1666         * gst/gststructure.c:
1667           doc fixes
1668
1669         * libs/gst/controller/gstcontroller.c:
1670         (gst_controlled_property_set_interpolation_mode):
1671         * libs/gst/controller/gstcontroller.h:
1672         * libs/gst/controller/gstinterpolation.c:
1673         (interpolate_none_get_enum_value_array):
1674           support controlling enums
1675
1676 2005-11-27  Tim-Philipp Müller  <tim at centricular dot net>
1677
1678         * gst/gstvalue.c:
1679           Improve documentation for gst_value_union().
1680
1681         * gst/gstvalue.h:
1682           Change return value for union, intersect and subtract functions
1683           from gint to gboolean.
1684
1685 2005-11-27  Tim-Philipp Müller  <tim at centricular dot net>
1686
1687         * gst/gstvalue.c: (gst_value_serialize_any_list),
1688         (gst_value_transform_any_list_string),
1689         (gst_value_deserialize_list), (gst_value_deserialize_array),
1690         (gst_value_set_int_range), (gst_value_deserialize_int_range),
1691         (gst_value_set_double_range), (gst_value_deserialize_double_range),
1692         (gst_value_set_fraction_range_full),
1693         (gst_value_deserialize_fraction_range),
1694         (gst_value_deserialize_caps), (gst_value_deserialize_buffer),
1695         (gst_value_deserialize_boolean),
1696         (gst_value_deserialize_int_helper), (gst_value_deserialize_double),
1697         (gst_value_serialize_float), (gst_value_deserialize_float),
1698         (gst_string_wrap), (gst_value_deserialize_string),
1699         (gst_value_deserialize_enum), (gst_value_deserialize_flags),
1700         (gst_value_union_int_range_int_range),
1701         (gst_value_intersect_int_range_int_range),
1702         (gst_value_intersect_double_range_double_range),
1703         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
1704         (gst_value_subtract_int_range_int_range),
1705         (gst_value_subtract_double_double_range),
1706         (gst_value_subtract_double_range_double_range),
1707         (gst_value_deserialize_fraction):
1708         * gst/gstvalue.h:
1709           Use gint, gdouble and gchar in our API instead of int, double and
1710           char (and make usage in gstvalue.c more consistent).
1711
1712 2005-11-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1713
1714         * check/Makefile.am:
1715         * libs/gst/controller/Makefile.am:
1716         * libs/gst/dataprotocol/Makefile.am:
1717           fix up Makefile.am and remove GST_ENABLE_NEW
1718
1719 2005-11-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1720
1721         * configure.ac:
1722         * gst/Makefile.am:
1723         * gst/base/Makefile.am:
1724         * gst/check/Makefile.am:
1725         * gst/elements/Makefile.am:
1726         * gst/net/Makefile.am:
1727           update LDFLAGS use some more
1728
1729 2005-11-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1730
1731         * common/m4/gst-doc.m4:
1732           Fixes #312589
1733
1734 2005-11-26  Edward Hervey  <edward@fluendo.com>
1735
1736         * gst/gstpluginfeature.c: (gst_plugin_feature_load):
1737         This shouldn't issue a g_warning since it returns NULL if it
1738         couldn't find the plugin, and all functions using this behave
1739         properly on a NULL return. Switching to a GST_WARNING.
1740
1741 2005-11-25  Jan Schmidt  <thaytan@mad.scientist.com>
1742
1743         * gst/gstbin.c: (gst_bin_handle_message_func):
1744         Don't leak clock messages.
1745
1746 2005-11-25  Wim Taymans  <wim@fluendo.com>
1747
1748         * gst/gstutils.c: (gst_util_uint64_scale_int64),
1749         (gst_util_uint64_scale_int):
1750         Optimisations, remove unneeded vars.
1751
1752 2005-11-25  Wim Taymans  <wim@fluendo.com>
1753
1754         * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
1755         Added more checks for the high precision uint64 cases.
1756
1757         * gst/gstutils.c: (gst_util_uint64_scale_int64),
1758         (gst_util_uint64_scale), (gst_util_uint64_scale_int):
1759         Implement high precision (guint64 * guint64) / guint64.
1760
1761 2005-11-24  Wim Taymans  <wim@fluendo.com>
1762
1763         * gst/base/gstbasesrc.c: (gst_base_src_query):
1764         Fix wrong percentage query.
1765
1766         * gst/gstutils.c: (gst_util_uint64_scale),
1767         (gst_util_uint64_scale_int):
1768         Add some more common cases that can be handled 
1769         efficiently to _scale.
1770
1771 2005-11-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1772
1773         * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST),
1774         (gst_mini_object_suite):
1775           don't use check calls from threads; check probably isn't
1776           threadsafe and using a lock to make it threadsafe would
1777           defeat the purpose of this check
1778         * gst/check/gstcheck.c:
1779         * gst/check/gstcheck.h:
1780           use GST_DEBUG some more
1781
1782 2005-11-24  Wim Taymans  <wim@fluendo.com>
1783
1784         * gst/gstutils.c: (gst_util_uint64_scale),
1785         (gst_util_uint64_scale_int):
1786         Chain trivial case to _scale_int.
1787
1788 2005-11-24  Wim Taymans  <wim@fluendo.com>
1789
1790         * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
1791         Added test for scaling.
1792
1793         * gst/gstclock.h:
1794         Small doc fix.
1795
1796         * gst/gstutils.c: (gst_util_uint64_scale_int):
1797         Implemented high precision scaling code.
1798
1799 2005-11-24  Stefan Kost  <ensonic@users.sf.net>
1800
1801         * gst/gstinfo.h:
1802           do not crash on pad==NULL
1803
1804 2005-11-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1805
1806         Patch by: Stefan Kost
1807
1808         * common/gtk-doc.mak:
1809         * docs/gst/Makefile.am:
1810         * docs/libs/Makefile.am:
1811           Fix distcheck issues for the libraries docs build
1812           Closes #319599.
1813
1814 2005-11-24  Michael Smith <msmith@fluendo.com>
1815
1816         * docs/manual/basics-helloworld.xml:
1817           Fix bug #315027: memory leak in example code in docs.
1818
1819 2005-11-24  Michael Smith <msmith@fluendo.com>
1820
1821         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1822           Unlock the PREROLL_LOCK in a failure case.
1823
1824 2005-11-24  Wim Taymans  <wim@fluendo.com>
1825
1826         * docs/gst/gstreamer-sections.txt:
1827         * gst/base/gstadapter.h:
1828         * gst/base/gstbasesink.h:
1829         * gst/base/gstbasesrc.h:
1830         * gst/base/gstbasetransform.h:
1831         * gst/base/gstpushsrc.h:
1832         * gst/elements/gstfakesink.h:
1833         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type):
1834         * gst/elements/gstfakesrc.h:
1835         * gst/elements/gstfilesink.h:
1836         * gst/elements/gstfilesrc.h:
1837         * gst/gst.c:
1838         * gst/gstbin.c:
1839         * gst/gstbuffer.c: (_gst_buffer_copy):
1840         * gst/gstbus.h:
1841         * gst/gstcaps.c:
1842         * gst/gstchildproxy.c:
1843         * gst/gstclock.c:
1844         * gst/gstelement.c:
1845         * gst/gstelementfactory.c:
1846         * gst/gstelementfactory.h:
1847         * gst/gstevent.c:
1848         * gst/gstghostpad.h:
1849         * gst/gstindex.h:
1850         * gst/gstinterface.h:
1851         * gst/gstminiobject.c:
1852         * gst/gstminiobject.h:
1853         * gst/gstpad.c:
1854         * gst/gstpad.h:
1855         * gst/gstpadtemplate.h:
1856         * gst/gstpipeline.h:
1857         * gst/gstpluginfeature.h:
1858         * gst/gstquery.h:
1859         * gst/gstqueue.h:
1860         * gst/gsttaglist.c:
1861         * gst/gsttaglist.h:
1862         * gst/gsttagsetter.c:
1863         * gst/gsttagsetter.h:
1864         * gst/gsttrace.c:
1865         * gst/gsttrace.h:
1866         * gst/gsttypefind.h:
1867         * gst/gsturi.h:
1868         * gst/gstvalue.c:
1869         * gst/net/gstnetclientclock.c:
1870         * gst/net/gstnetclientclock.h:
1871         * gst/net/gstnettimepacket.c:
1872         * gst/net/gstnettimeprovider.c:
1873         * gst/net/gstnettimeprovider.h:
1874         Doc fixes.
1875
1876 2005-11-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1877
1878         * configure.ac: back to HEAD
1879
1880 === release 0.9.6 ===
1881
1882 2005-11-23  Thomas Vander Stichele <thomas at apestaart dot org>
1883
1884         * configure.ac:
1885           releasing 0.9.6, "Always On Time"
1886
1887 2005-11-23  Wim Taymans  <wim@fluendo.com>
1888
1889         * docs/gst/gstreamer-sections.txt:
1890         * gst/glib-compat.c:
1891         * gst/gsttagsetter.c:
1892         * gst/gstvalue.c:
1893         * gst/net/gstnetclientclock.c:
1894         * gst/net/gstnettimepacket.h:
1895         Doc updates.
1896
1897 2005-11-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1898
1899         * docs/faq/using.xml:
1900         * docs/libs/tmpl/gstcontrol.sgml:
1901         * docs/manual/advanced-dparams.xml:
1902         * docs/manual/appendix-checklist.xml:
1903         * docs/manual/basics-elements.xml:
1904         * docs/pwg/other-source.xml:
1905         * docs/random/moving-plugins:
1906         * gst/gstpad.c:
1907         * tools/gst-launch.1.in:
1908           remove mentions of sinesrc
1909
1910 2005-11-23  Michael Smith <msmith@fluendo.com>
1911
1912         * docs/gst/gstreamer-sections.txt:
1913           Update for new API and API changes.
1914         * gst/gstobject.h:
1915           Documentation fix: GST_TRYLOCK -> GST_OBJECT_TRYLOCK
1916         * gst/gstvalue.c:
1917           Documentation typo fix.
1918         * gst/net/gstnettimepacket.c:
1919           Documentation fixes for arguments.
1920
1921 2005-11-23  Jan Schmidt  <thaytan@mad.scientist.com>
1922
1923         * gst/gststructure.c: (gst_structure_get_fraction),
1924         (gst_structure_parse_value),
1925         (gst_structure_fixate_field_nearest_fraction):
1926         * gst/gststructure.h:
1927         * gst/gstutils.c: (gst_util_uint64_scale_int):
1928         * gst/gstutils.h:
1929         * scripts/update-funcnames:
1930         API Changes. 
1931         Rename gst_util_clock_time_scale to gst_util_uint64_scale_int
1932         Make gst_structure_fixate_field_nearest_fraction take a numerator
1933         and denominator argument instead of a GValue
1934         add gst_structure_get_fraction helper function.
1935
1936 2005-11-23  Wim Taymans  <wim@fluendo.com>
1937
1938         * docs/design/part-TODO.txt:
1939         Update TODO.
1940
1941         * gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
1942         * gst/net/gstnetclientclock.h:
1943         Use parent fields for timeout and window_size.
1944
1945 2005-11-23  Andy Wingo  <wingo@pobox.com>
1946
1947         * check/net/gstnetclientclock.c (test_functioning): Adjust to
1948         rate_num/rate_denom change.
1949
1950         * gst/net/gstnetclientclock.c
1951         (gst_net_client_clock_observe_times): Take the SLAVE_LOCK not the
1952         OBJECT_LOCK. Don't call add_observation with the lock.
1953
1954         * gst/gstclock.c (gst_clock_init): Initialize the rate as a
1955         fraction.
1956         (gst_clock_adjust_unlocked): Adjust using uint64_scale and the
1957         rate fraction.
1958         (gst_clock_set_calibration, gst_clock_get_calibration): Change to
1959         deal with rate as a fraction whose numerator and denominator are
1960         GstClockTime values.
1961         (gst_clock_set_master): Only use the OBJECT_LOCK to set the
1962         master; the other fields are protected by the SLAVE_LOCK.
1963         (do_linear_regression): Note that this must be called with the
1964         SLAVE_LOCK.
1965         (gst_clock_add_observation): Take the SLAVE_LOCK, not the
1966         OBJECT_LOCK. Call set_calibration instead of touching the
1967         variables directly.
1968         (gst_clock_set_property, gst_clock_get_property): Protect
1969         master/slave parameters with the SLAVE_LOCK.
1970
1971         * gst/gstclock.h (GstClock): Remove rate, add rate_numerator and
1972         rate_denominator. PR3C1S3. Add a new lock, the SLAVE_LOCK, and
1973         note that all of the instance variables that add_observation and
1974         the set_master functions use are protected by that lock and not
1975         the OBJECT_LOCK.
1976         (GST_CLOCK_SLAVE_LOCK, GST_CLOCK_SLAVE_UNLOCK): New macros.
1977
1978         * gst/gstclock.c (gst_clock_add_observation): No longer requires
1979         the caller to take the object lock.
1980
1981 2005-11-23  Wim Taymans  <wim@fluendo.com>
1982
1983         * gst/gsterror.c: (_gst_core_errors_init):
1984         * gst/gsterror.h:
1985         Add error for clock stuff.
1986
1987         * gst/gstpipeline.c: (gst_pipeline_change_state),
1988         (gst_pipeline_set_clock):
1989         Post clock error when clock cannot be used in a pipeline.
1990
1991 2005-11-23  Stefan Kost  <ensonic@users.sf.net>
1992
1993         * docs/gst/gstreamer-sections.txt:
1994           make two symbols from gstinfo private for the docs
1995         * gst/base/gstcollectpads.h:
1996         * gst/gstutils.c:
1997           fix doc typos, update docs
1998
1999 2005-11-22  Wim Taymans  <wim@fluendo.com>
2000
2001         * gst/base/gstbasesink.c: (gst_base_sink_class_init),
2002         (gst_base_sink_wait), (gst_base_sink_do_sync),
2003         (gst_base_sink_handle_event):
2004         * gst/base/gstbasesink.h:
2005         No need to store the clock, the parent element class already
2006         has it.
2007
2008         * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_add_func):
2009         Updates for clock_set returning a gboolean
2010
2011         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_wait),
2012         (gst_clock_id_wait_async), (gst_clock_class_init),
2013         (gst_clock_init), (gst_clock_finalize),
2014         (gst_clock_get_internal_time), (gst_clock_get_time),
2015         (gst_clock_slave_callback), (gst_clock_set_master),
2016         (gst_clock_get_master), (do_linear_regression),
2017         (gst_clock_add_observation), (gst_clock_set_property),
2018         (gst_clock_get_property):
2019         * gst/gstclock.h:
2020         Implement master/slave. When setting a clock as a slave, a
2021         periodic timeout is scheduled to sample master and slave times.
2022         Then the slave clock is recalibrated to match offset and rate
2023         of the master clock.
2024         Update logging a bit.
2025         Add flag so that a clock can state that is cannot be slaved to
2026         another clock.
2027
2028         * gst/gstelement.c: (gst_element_set_clock):
2029         * gst/gstelement.h:
2030         The set clock returns a gboolean for when an element cannot
2031         deal with the selected clock in the pipeline. 
2032
2033         * gst/gstpipeline.c: (gst_pipeline_change_state),
2034         (gst_pipeline_set_clock):
2035         * gst/gstpipeline.h:
2036         Handle the case where the selected clock cannot be set on
2037         the pipeline.
2038
2039         * gst/net/gstnetclientclock.c: (gst_net_client_clock_class_init),
2040         (gst_net_client_clock_init), (gst_net_client_clock_finalize),
2041         (gst_net_client_clock_set_property),
2042         (gst_net_client_clock_get_property),
2043         (gst_net_client_clock_observe_times):
2044         * gst/net/gstnetclientclock.h:
2045         Use regression code in GstClock parent, remove duplicated
2046         functionality.
2047
2048 2005-11-22  Michael Smith <msmith@fluendo.com>
2049
2050         * gst/gstutils.c: (gst_util_clock_time_scale):
2051         * gst/gstutils.h:
2052         * docs/gst/gstreamer-sections.txt:
2053           Rename method to have extra underscore.
2054
2055 2005-11-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2056
2057         * gst/elements/Makefile.am:
2058         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type):
2059         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
2060         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
2061         (gst_fake_src_init), (gst_fake_src_prepare_buffer),
2062         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size):
2063         * gst/elements/gstfakesrc.h:
2064         * gst/gstqueue.c: (queue_leaky_get_type):
2065           correctly fix GEnumValues so that nick is the short lowercase
2066           dashed tag
2067         * tools/gst-inspect.c: (print_element_properties_info):
2068           also show the nick, since it's useful to use from parse_launch
2069           syntax
2070           Fixes #322139
2071
2072 2005-11-22  Michael Smith <msmith@fluendo.com>
2073
2074         * gst/gstutils.c: (gst_util_clocktime_scale):
2075         * gst/gstutils.h:
2076         * docs/gst/gstreamer-sections.txt:
2077           Add util method for scaling a clocktime by a fraction. Useful 
2078           implementation is left as an exercise for the reader.
2079
2080 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
2081
2082         * gst/gstvalue.c: (gst_value_collect_fraction_range):
2083         If needed, allocate storage in the destination value during
2084         collection.
2085
2086 2005-11-22  Edward Hervey  <edward@fluendo.com>
2087
2088         * docs/gst/gstreamer-sections.txt:
2089         * gst/Makefile.am:
2090         * gst/gst.h:
2091         * gst/gsturitype.c:
2092         * gst/gsturitype.h:
2093         * gst/gstutils.c: (gst_util_set_object_arg):
2094         * tools/gst-compprep.c: (main):
2095         * tools/gst-inspect.c: (print_element_properties_info):
2096         Removed GstURI, closes bug #321061
2097
2098 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
2099
2100         * check/gst/gststructure.c: (GST_START_TEST):
2101         * gst/gststructure.c: (gst_structure_parse_value):
2102           Oops, broke automatic string type parsing.
2103           Add a test to catch it in future.
2104
2105 2005-11-22  Andy Wingo  <wingo@pobox.com>
2106
2107         * gst/gsttagsetter.c (gst_tag_setter_get_tag_merge_mode) 
2108         (gst_tag_setter_set_tag_merge_mode, gst_tag_setter_get_tag_list):
2109         Actually rename the function implementations. Grr.
2110
2111 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
2112
2113         * check/gst/capslist.h:
2114           Comment test cases
2115         * check/gst/gststructure.c: (GST_START_TEST),
2116         (gst_structure_suite):
2117           Test automatic value type detection in gst_structure_from_string.
2118         * gst/gststructure.c: (gst_structure_parse_value):
2119           Add fraction as a type we try and guess automatically in
2120           caps/structure strings.
2121
2122 2005-11-22  Andy Wingo  <wingo@pobox.com>
2123
2124         patch by: Torsten Schoenfeld <kaffeetisch gmx de>
2125
2126         * gst/gsttagsetter.h:
2127         * gst/gsttagsetter.c: (gst_tag_setter_merge_tags)
2128         (gst_tag_setter_add_tags, gst_tag_setter_add_tag_values)
2129         (gst_tag_setter_add_tag_valist)
2130         (gst_tag_setter_add_tag_valist_values): Renamed from _merge, _add,
2131         _add_values, _add_valist, and _add_valist_values. Since this is an
2132         interface the function suffixes should be more explicit so
2133         language binding don't end up with element.add_valist ->
2134         gst_tag_setter_add_valist, for example. Fixes #322069.
2135
2136 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
2137
2138         * check/gst/gstcaps.c: (GST_START_TEST):
2139           Extend caps string tests to check that a caps to string
2140           conversion is reversible and produces the same caps.
2141
2142         * gst/gststructure.c: (gst_structure_value_get_generic_type):
2143           Output "fraction" as the generic type fraction range, so caps
2144           serialisation and deserialisation works.
2145         * check/gst/capslist.h:
2146         * gst/gstvalue.c: (gst_value_deserialize_fraction):
2147           Support 'MIN' and 'MAX' for deserialising fractions.
2148
2149 2005-11-22  Andy Wingo  <wingo@pobox.com>
2150
2151         * gst/gstevent.h (gst_event_new_new_segment)
2152         (gst_event_parse_new_segment, gst_event_new_buffer_size)
2153         (gst_event_parse_buffer_size, gst_ghost_pad_new_no_target):
2154         Renamed from *_newsegment, *_buffersize, *_notarget.
2155
2156         * scripts/update-funcnames: New script, performs the changes
2157         listed above.
2158
2159 2005-11-22  Wim Taymans  <wim@fluendo.com>
2160
2161         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2162         Make sure the GstFlowReturn is returned.
2163
2164         * gst/gstbus.c: (gst_bus_add_signal_watch_full),
2165         (gst_bus_add_signal_watch):
2166         * gst/gstbus.h:
2167         add gst_bus_add_signal_watch_full.
2168
2169         * gst/gstplugin.c: (gst_plugin_load_file):
2170         Small style cleanup.
2171
2172 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
2173
2174         * check/gst/gstevent.c: (test_event), (GST_START_TEST):
2175           Block the fakesrc srcpad when we send an event, to avoid
2176           contention on the stream_lock causing random test failures.
2177
2178 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
2179
2180         * check/gst/gstvalue.c: (GST_START_TEST):
2181         * gst/gstvalue.c: (gst_value_fraction_subtract):
2182           Fix subtraction.
2183
2184 2005-11-22  Stefan Kost  <ensonic@users.sf.net>
2185
2186         * gst/gst.h:
2187           include "gstchildproxy.h"
2188         * gst/gstchildproxy.h:
2189         * libs/gst/controller/gstcontroller.h:
2190           use G_GNUC_NULL_TERMINATED
2191
2192 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
2193
2194         * check/gst/capslist.h:
2195         * check/gst/gstcaps.c: (GST_START_TEST):
2196         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
2197         * gst/gststructure.c: (gst_structure_parse_range),
2198         (gst_structure_fixate_field_nearest_fraction):
2199         * gst/gststructure.h:
2200         * gst/gstvalue.c: (gst_value_init_fraction_range),
2201         (gst_value_free_fraction_range), (gst_value_copy_fraction_range),
2202         (gst_value_collect_fraction_range),
2203         (gst_value_lcopy_fraction_range), (gst_value_set_fraction_range),
2204         (gst_value_set_fraction_range_full),
2205         (gst_value_get_fraction_range_min),
2206         (gst_value_get_fraction_range_max),
2207         (gst_value_serialize_fraction_range),
2208         (gst_value_transform_fraction_range_string),
2209         (gst_value_compare_fraction_range),
2210         (gst_value_deserialize_fraction_range),
2211         (gst_value_intersect_fraction_fraction_range),
2212         (gst_value_intersect_fraction_range_fraction_range),
2213         (gst_value_subtract_fraction_fraction_range),
2214         (gst_value_subtract_fraction_range_fraction),
2215         (gst_value_subtract_fraction_range_fraction_range),
2216         (gst_value_collect_fraction), (gst_value_fraction_multiply),
2217         (gst_value_fraction_subtract), (gst_value_deserialize_fraction),
2218         (gst_value_transform_string_fraction), (_gst_value_initialize):
2219         * gst/gstvalue.h:
2220           Implement fraction ranges and extend GstFraction to support
2221           arithmetic subtraction, as well as deserialization from integer
2222           strings such as "100"
2223           Add a testsuite as for int and double range set operations
2224
2225 2005-11-21  Andy Wingo  <wingo@pobox.com>
2226
2227         * gst/gsttaglist.h: 
2228         * gst/gstcaps.h: 
2229         * gst/gststructure.h: Add glib-compat.h.
2230
2231 2005-11-21  Wim Taymans  <wim@fluendo.com>
2232
2233         * gst/gstbin.c: (gst_bin_change_state_func):
2234         Fix for #321595
2235
2236 2005-11-21  Wim Taymans  <wim@fluendo.com>
2237
2238         * gst/gstsegment.h:
2239         And add a nice define too.
2240
2241 2005-11-21  Wim Taymans  <wim@fluendo.com>
2242
2243         * gst/gstsegment.c: (gst_segment_copy), (gst_segment_get_type),
2244         (gst_segment_new), (gst_segment_free), (gst_segment_init),
2245         (gst_segment_set_duration), (gst_segment_set_last_stop),
2246         (gst_segment_set_seek), (gst_segment_set_newsegment),
2247         (gst_segment_to_stream_time), (gst_segment_to_running_time),
2248         (gst_segment_clip):
2249         * gst/gstsegment.h:
2250         Make binding friendly.
2251
2252 2005-11-21  Andy Wingo  <wingo@pobox.com>
2253
2254         * gst/gsttagsetter.h: 
2255         * gst/gsttaglist.h: 
2256         * gst/gststructure.h: 
2257         * gst/gstcaps.h: 
2258         * gst/gstutils.h: Sprinkle NULL_TERMINATED to taste. Fixes
2259         #319940.
2260
2261         * gst/gsterror.c (_gst_core_errors_init):
2262         * gst/gsterror.h (GST_CORE_ERROR_MISSING_PLUGIN): New error
2263         category.
2264
2265         * gst/Makefile.am (gst_headers): Add glib-compat.h.
2266         (noinst_HEADERS): noinst the -private.
2267
2268 2005-11-21  Michael Smith <msmith@fluendo.com>
2269
2270         * gst/gstplugin.h:
2271         * gst/gstregistry.h:
2272           Remove unimplemented declarations for which we can see no sensible
2273           use.
2274
2275 2005-11-21  Andy Wingo  <wingo@pobox.com>
2276
2277         * gst/gst.h: Include glib-compat.h.
2278
2279         * gst/glib-compat.h: Add G_GNUC_NULL_TERMINATED.
2280
2281         * gst/glib-compat.c: Include the public and the private header.
2282
2283         * gst/glib-compat-private.h: Copied here from glib-compat.h.
2284
2285         * gst/gstvalue.c: 
2286         * gst/gstpad.c: 
2287         * gst/gstregistryxml.c: s/glib-compat/glib-compat-private/.
2288
2289         * check/gst/gstevent.c (create_custom_events): Check that
2290         FLUSH_STOP is serialized.
2291
2292         * check/elements/identity.c (event_func): 
2293         * check/elements/fakesrc.c (event_func): No stream lock, the core
2294         takes it.
2295
2296         * gst/base/gstbasetransform.c (gst_base_transform_event): No more
2297         stream lock taking, yay.
2298
2299         * gst/gstevent.h (GST_EVENT_FLUSH_STOP): Marked as serialized to
2300         ensure that core takes the stream lock.
2301
2302         * gst/base/gstbasesrc.c (gst_base_src_do_seek): Update for stream
2303         lock name change.
2304
2305         * gst/base/gstbasesink.c (gst_base_sink_event): No need to take
2306         the stream lock for EOS, NEWSEGMENT, or FLUSH_STOP, the core does
2307         it already. For the flush start we do take it though so we get the
2308         right preroll state change messages.
2309
2310         * gst/gstqueue.c (gst_queue_sink_activate_push): No need to take
2311         the stream lock here, the core does it for us.
2312
2313         * gst/gstpad.h (GST_PAD_GET_STREAM_LOCK): Renamed from
2314         GST_STREAM_GET_LOCK.
2315         (GST_PAD_STREAM_LOCK, GST_PAD_STREAM_TRYLOCK) 
2316         (GST_PAD_STREAM_UNLOCK, GST_PAD_STREAM_UNLOCK_FULL) 
2317         (GST_PAD_STREAM_LOCK_FULL): Renamed from GST_STREAM_*.
2318         (GST_PAD_GET_PREROLL_LOCK): Renamed from GST_PREROLL_GET_LOCK.
2319         (GST_PAD_PREROLL_LOCK, GST_PAD_PREROLL_TRYLOCK) 
2320         (GST_PAD_PREROLL_UNLOCK): Renamed from GST_PREROLL_*.
2321
2322         * gst/gstpad.c: Update for stream lock name change.
2323
2324         * gst/base/gstbasesink.c: Update for preroll lock name change.
2325
2326 2005-11-21  Wim Taymans  <wim@fluendo.com>
2327
2328         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_master),
2329         (gst_clock_get_master):
2330         * gst/gstclock.h:
2331         * gst/gstsystemclock.c: (gst_system_clock_init):
2332         Convert Clock flags to object flags.
2333         Added methods to manage master/slave clocks.
2334
2335 2005-11-21  Wim Taymans  <wim@fluendo.com>
2336
2337         * check/gst/gstsegment.c: (GST_START_TEST):
2338         * docs/design/part-TODO.txt:
2339         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2340         (gst_base_sink_event), (gst_base_sink_do_sync),
2341         (gst_base_sink_activate_pull), (gst_base_sink_get_position),
2342         (gst_base_sink_query), (gst_base_sink_change_state):
2343         * gst/base/gstbasesink.h:
2344         * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
2345         (gst_base_src_default_newsegment),
2346         (gst_base_src_configure_segment), (gst_base_src_do_seek),
2347         (gst_base_src_get_range), (gst_base_src_loop),
2348         (gst_base_src_change_state):
2349         * gst/base/gstbasesrc.h:
2350         * gst/base/gstbasetransform.c:
2351         (gst_base_transform_prepare_output_buf),
2352         (gst_base_transform_event), (gst_base_transform_change_state):
2353         * gst/base/gstbasetransform.h:
2354         * gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
2355         (gst_collect_pads_event):
2356         * gst/base/gstcollectpads.h:
2357         * gst/elements/gstfakesrc.c: (gst_fake_src_init),
2358         (gst_fake_src_create):
2359         * gst/elements/gstfakesrc.h:
2360         * gst/elements/gstidentity.c: (gst_identity_transform_ip):
2361         * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
2362         (gst_segment_set_last_stop), (gst_segment_set_seek),
2363         (gst_segment_set_newsegment), (gst_segment_to_stream_time),
2364         (gst_segment_to_running_time), (gst_segment_clip):
2365         * gst/gstsegment.h:
2366         More segment updates, replace code in plugins with segment
2367         helper functions.
2368
2369 2005-11-21  Jan Schmidt  <thaytan@mad.scientist.com>
2370
2371         * gst/elements/gstfdsrc.c: (gst_fdsrc_uri_set_uri):
2372         Don't ignore sscanf results
2373
2374 2005-11-21  Andy Wingo  <wingo@pobox.com>
2375
2376         * gst/gstpad.h (GST_IS_PAD_FAST): Removed.
2377
2378         * *.h:
2379         * *.c: Ran scripts/update-macros. Oh yes.
2380
2381         * gst/gstobject.h (GST_OBJECT_GET_LOCK, GST_OBJECT_LOCK)
2382         (GST_OBJECT_TRYLOCK, GST_OBJECT_UNLOCK): Renamed from
2383         GST_GET_LOCK, etc.
2384
2385         * scripts/update-macros: New script. Run it on your files to
2386         change GST_LOCK to GST_OBJECT_LOCK, and the same for UNLOCK as
2387         well.
2388
2389 2005-11-21  Stefan Kost  <ensonic@users.sf.net>
2390
2391         * docs/gst/Makefile.am:
2392         * docs/gst/gstreamer-docs.sgml:
2393         * docs/gst/gstreamer-sections.txt:
2394         * docs/gst/gstreamer.types:
2395         * gst/gstinfo.h:
2396           more docs fixes, add new api to the docs
2397
2398 2005-11-21  Andy Wingo  <wingo@pobox.com>
2399
2400         * gst/gstbin.c (gst_bin_remove_func): Wim claims I can remove this
2401         state_broadcast call.
2402
2403         * gst/gstsegment.c (gst_segment_init): Initialize abs_rate.
2404
2405 2005-11-21  Julien MOUTTE  <julien@moutte.net>
2406
2407         * gst/gstvalue.c: (gst_value_intersect_array): Fix wrong
2408         function calls for arrays.
2409
2410 2005-11-21  Stefan Kost  <ensonic@users.sf.net>
2411
2412         * docs/random/ensonic/media-device-daemon.txt:
2413           wild idea, can this be done?
2414         * docs/gst/gstreamer-sections.txt:
2415         * gst/gsterror.h:
2416         * gst/gstfilter.c:
2417         * gst/gstfilter.h:
2418         * gst/gstplugin.h:
2419         * gst/gstpluginfeature.c:
2420         * gst/gsttrace.c:
2421         * gst/gstvalue.c:
2422         * gst/gstvalue.h:
2423           doc fixes and additions
2424
2425 2005-11-21  Andy Wingo  <wingo@pobox.com>
2426
2427         * gst/base/gstbasesrc.c (GST_LIVE_BROADCAST, GST_LIVE_SIGNAL) 
2428         (GST_LIVE_TIMED_WAIT, GST_LIVE_WAIT, GST_LIVE_GET_COND) 
2429         (GST_LIVE_UNLOCK, GST_LIVE_TRYLOCK, GST_LIVE_LOCK) 
2430         (GST_LIVE_GET_LOCK): Moved here from gstbasesrc.h. They are
2431         private to the basesrc implementation.
2432
2433         * gst/gstpad.c (gst_pad_send_event): Doc more. Take stream lock on
2434         behalf of event function if necessary. It should no longer be
2435         necessary to take the stream lock in pad's event functions. Fixes
2436         #320299.
2437
2438 2005-11-21  Jan Schmidt  <thaytan@mad.scientist.com>
2439         * docs/gst/gstreamer-sections.txt:
2440         * gst/gststructure.c: (gst_structure_fixate_field_nearest_int),
2441         (gst_structure_fixate_field_nearest_double),
2442         (gst_structure_fixate_field_boolean):
2443         * gst/gststructure.h:
2444         * win32/common/libgstreamer.def:
2445         * win32/gstreamer.def:
2446
2447         Rename gst_caps_structure_fixate_* to gst_structure_fixate_*
2448         (#322027)
2449
2450 2005-11-21  Jan Schmidt  <thaytan@mad.scientist.com>
2451
2452         * gst/elements/gstfdsrc.c: (_do_init), (gst_fdsrc_class_init),
2453         (gst_fdsrc_init), (gst_fdsrc_dispose), (gst_fdsrc_set_property),
2454         (gst_fdsrc_uri_get_type), (gst_fdsrc_uri_get_protocols),
2455         (gst_fdsrc_uri_get_uri), (gst_fdsrc_uri_set_uri),
2456         (gst_fdsrc_uri_handler_init):
2457         * gst/elements/gstfdsrc.h:
2458           Port fd:// URI handler from 0.8 to fdsrc
2459
2460 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
2461
2462         * gst/gstvalue.c: (gst_value_transform_fourcc_string),
2463         (gst_value_serialize_fourcc):
2464         * gst/gstvalue.h:
2465           Drop leading '%' from GST_FOURCC_FORMAT, thus making it
2466           consistent with our other format defines (#320324).
2467
2468 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
2469
2470         * gst/gstvalue.c: (gst_value_is_fixed):
2471           Revert previous commit. Value lists are by definition
2472           not fixed, as they are a list of possible values.
2473
2474 2005-11-21  Andy Wingo  <wingo@pobox.com>
2475
2476         * gst/gstevent.h (GST_EVENT_FILLER): Removed. Can be added back
2477         during the stable series if we need it. Fixes #319178.
2478
2479         * gst/gstevent.c (gst_event_new_filler): Removed.
2480
2481         * check/gst/gstevent.c: Update comment about filler events.
2482
2483 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
2484
2485         * gst/gstvalue.c: (gst_value_is_fixed):
2486           Should handle both value arrays and value lists.
2487
2488 2005-11-21  Andy Wingo  <wingo@pobox.com>
2489
2490         patch by: Alessandro Dessina <alessandro nnva org>
2491
2492         * gst/gstvalue.c (gst_value_is_fixed): Use gst_value_array
2493         functions to access arrays. Fixes #321962.
2494
2495 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
2496
2497         * docs/gst/gstreamer.types:
2498           gst_collectpads_get_type => gst_collect_pads_get_type.
2499           
2500         * gst/base/gstbasetransform.c:
2501           Remove unused SIGNAL_HANDOFF enum.
2502
2503 2005-11-21  Andy Wingo  <wingo@pobox.com>
2504
2505         * gst/gstevent.h (GstEventTypeFlags): New data type, the flags of
2506         the event type (upstream, downstream, serialized). Renamed
2507         GST_EVDIR_* and GST_EVSER to GST_EVENT_TYPE_*.
2508         (GstEventType): Use GstEventTypeFlags. Rename CUSTOM_UP to
2509         CUSTOM_UPSTREAM, CUSTOM_DS to CUSTOM_DOWNSTREAM, etc.
2510
2511         * gst/gstevent.c: Update for new CUSTOM event names.
2512
2513         * check/gst/gstevent.c: Update check for new CUSTOM event names.
2514
2515         * gst/gstevent.h:
2516         * gst/gstevent.c (gst_event_type_get_flags): New function. Fixes
2517         bug #319392.
2518
2519 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
2520
2521         * docs/gst/gstreamer-sections.txt:
2522         * win32/common/libgstbase.def:
2523         * win32/libgstbase.def:
2524         * gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
2525         (gst_collect_pads_class_init), (gst_collect_pads_init),
2526         (gst_collect_pads_finalize), (gst_collect_pads_new),
2527         (gst_collect_pads_set_function), (gst_collect_pads_add_pad),
2528         (gst_collect_pads_remove_pad), (gst_collect_pads_is_active),
2529         (gst_collect_pads_collect), (gst_collect_pads_collect_range),
2530         (gst_collect_pads_start), (gst_collect_pads_stop),
2531         (gst_collect_pads_peek), (gst_collect_pads_pop),
2532         (gst_collect_pads_available), (gst_collect_pads_read),
2533         (gst_collect_pads_flush), (gst_collect_pads_event),
2534         (gst_collect_pads_chain):
2535         * gst/base/gstcollectpads.h:
2536           Rename gst_collecpads_foo() => gst_collect_pads_foo(). Document
2537           unimplemented functions as unimplemented. Add padding to
2538           GstCollectData. (#320766, #320423)
2539
2540 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
2541
2542         * gst/gstmessage.c:
2543           Improve docs for DURATION message (usage of duration parameter)
2544           (#320113)
2545
2546 2005-11-20  Wim Taymans  <wim@fluendo.com>
2547
2548         * check/Makefile.am:
2549         * check/gst/gstsegment.c: (GST_START_TEST), (gstevents_suite),
2550         (main):
2551         * gst/Makefile.am:
2552         * gst/gst.h:
2553         * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
2554         (gst_segment_set_seek), (gst_segment_set_newsegment),
2555         (gst_segment_to_stream_time), (gst_segment_to_running_time),
2556         (gst_segment_clip):
2557         * gst/gstsegment.h:
2558         Added segment helper structure and methods. Not fully implemented
2559         yet.
2560         Added segment check.
2561
2562 2005-11-20  Jan Schmidt  <thaytan@mad.scientist.com>
2563
2564         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
2565           Add a deserialisation test for fractions
2566         * examples/metadata/read-metadata.c: (message_loop),
2567         (make_pipeline), (main):
2568           Fix up metadata reading sample.
2569         * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
2570           Debug format fix
2571         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
2572           Don't try and fixate empty caps
2573         * gst/gst_private.h:
2574           Wrap in G_BEGIN_DECLS/G_END_DECLS
2575         * gst/gstvalue.c: (gst_value_collect_fraction),
2576         (gst_value_set_fraction), (gst_value_get_fraction_denominator),
2577         (gst_value_transform_string_fraction),
2578         (gst_value_compare_fraction):
2579           Add some extra guards to ensure that we don't end up 
2580           with an invalid denominator of 0 in a gstfraction and
2581           that fractions always get reduced.
2582
2583 2005-11-20  Wim Taymans  <wim@fluendo.com>
2584
2585         * docs/gst/gstreamer-sections.txt:
2586         * gst/gstbuffer.h:
2587         * gst/gstelement.c:
2588         * gst/gstformat.c:
2589         * gst/gstformat.h:
2590         * gst/gstindex.h:
2591         * gst/gstquery.c:
2592         * gst/gstquery.h:
2593         * gst/gstvalue.c:
2594         Doc fixes.
2595
2596 2005-11-20  Wim Taymans  <wim@fluendo.com>
2597
2598         * docs/design/part-TODO.txt:
2599         * gst/gstcaps.h:
2600         Make a proper enum of the flag.
2601
2602 2005-11-19  Wim Taymans  <wim@fluendo.com>
2603
2604         * docs/design/part-TODO.txt:
2605         * gst/gstformat.c: (_gst_format_initialize), (gst_format_get_name),
2606         (gst_format_to_quark), (gst_format_register):
2607         * gst/gstformat.h:
2608         * gst/gstquery.c: (_gst_query_initialize),
2609         (gst_query_type_get_name), (gst_query_type_to_quark),
2610         (gst_query_type_register):
2611         * gst/gstquery.h:
2612         Add type to quark and type to string conversions.
2613
2614 2005-11-19  Andy Wingo  <wingo@pobox.com>
2615
2616         * gst/gstbuffer.h (GST_BUFFER_FLAG_ORIGINAL): Removed. Fixes
2617         #320097.
2618
2619 2005-11-19  Wim Taymans  <wim@fluendo.com>
2620
2621         * docs/design/part-TODO.txt:
2622         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
2623         (gst_bin_add_func), (gst_bin_remove_func), (bin_bus_handler),
2624         (gst_bin_handle_message_func):
2625         * gst/gstbin.h:
2626         Make message handling overridable.
2627
2628 2005-11-19  Andy Wingo  <wingo@pobox.com>
2629
2630         * gst/gstpad.h (GST_PAD_IS_USABLE): Removed. Fixes #321235.
2631
2632         * gst/gstclock.h:
2633         * gst/gstclock.c (GstClock, GstClockClass): Change resolution to
2634         be a GstClockTime.
2635         (gst_clock_set_resolution, gst_clock_get_resolution): Resolution
2636         is a GstClockTime. Fixes #321710.
2637
2638         * gst/gstclock.h (GstClock): Remove offset property. Add
2639         internal_calibration and external_calibration. Fix padding. Pad
2640         also by GstClockTime so we don't run into problems.
2641
2642         * gst/gstclock.c (gst_clock_set_rate_offset): Remove.
2643         (gst_clock_get_rate_offset): Remove.
2644         (gst_clock_set_time_adjust): Remove. Fixes #321712.
2645
2646         * gst/gstutils.h:
2647         * gst/gstutils.c (g_static_rec_cond_wait)
2648         (g_static_rec_cond_timed_wait): Removed, no longer needed.
2649
2650         * gst/gstbin.c: Remove terrible continue_state prototype.
2651
2652         * gst/gstelement.h (gst_element_continue_state): Make public.
2653
2654         * gst/gstelement.h:
2655         * gst/gstelement.c (gst_element_commit_state): Removed, replaced
2656         by continue_state. Fixes #319389.
2657
2658         * gst/gstindex.h (GstIndexFilter): Actually pass on the user_data.
2659         Really fixes #168438. However I don't see anywhere where the
2660         filter function is called... stupid GStreamer...
2661         
2662         * gst/gstindex.h (GstIndex): Add field for user_data_destroy. We
2663         don't have a dispose function, so it won't get called when the
2664         object is unreffed, but oh well!
2665
2666         * gst/gstindex.c (gst_index_set_filter_full): New API function,
2667         allows a destroy function to be set so user_data can be freed.
2668         Fixes #168438.
2669         (gst_index_set_filter): Call gst_index_set_filter_full.
2670
2671         * check/gst/gstvalue.c (test_string): Add test for bug #165650.
2672
2673         * gst/gstvalue.c (gst_string_wrap): Trying to serialize a NULL
2674         string should produce an error, given the lack of a way to
2675         represent NULL strings. Fixes #165650.
2676         
2677         * gst/gstvalue.h: 
2678         * gst/gstvalue.c (gst_value_array_append_value) 
2679         (gst_value_array_prepend_value, gst_value_array_get_size) 
2680         (gst_value_array_get_value): New API, copied from
2681         gst_value_list_*, only operates on arrays.
2682         (gst_value_list_append_value, gst_value_list_prepend_value) 
2683         (gst_value_list_concat, gst_value_list_get_size) 
2684         (gst_value_list_get_value): Only operate on lists. Fixes #156633.
2685
2686         * gst/gstvalue.c (gst_value_init_list_or_array): Renamed from
2687         init_list, because it works on both.
2688         (copy_garray_of_gstvalue): Renamed from gst_value_list_copy_array.
2689         (gst_value_copy_list_or_array): Renamed from copy_list.
2690         (gst_value_free_list_or_array): Renamed from free_list.
2691         (gst_value_collect_list_or_array): Renamed from collect_list.
2692         (gst_value_lcopy_list_or_array): Renamed from lcopy_list.
2693         (gst_value_list_or_array_peek_pointer): Renamed from
2694         list_peek_pointer.
2695         (_gst_value_array_value_table, _gst_value_list_value_table):
2696         Update value table functions.
2697         (gst_value_compare_list_or_array): Renamed from compare_list.
2698
2699         * gsttaglist.h: Whoops, foreach function returns void. Also fix
2700         some constness.
2701
2702         * gst/gsttaglist.c:
2703         * gst/gsttaglist.h (gst_tag_list_foreach): Operates on a const
2704         GstTagList*. Fixes #143472.
2705
2706         * gst/gststructure.h: Clarify what the foreach/map functions can
2707         or can't do to their arguments.
2708
2709 2005-11-18  Wim Taymans  <wim@fluendo.com>
2710
2711         * gst/gstclock.c: (gst_clock_set_calibration),
2712         (gst_clock_get_calibration):
2713         Doc and API fixes.
2714         Calibration can be set with internal time equal to current
2715         internal time too.
2716
2717 2005-11-18  Thomas Vander Stichele  <thomas at apestaart dot org>
2718
2719         * gst/gsterror.c:
2720         * gst/gsterror.h:
2721           document
2722
2723 2005-11-18  Andy Wingo  <wingo@pobox.com>
2724
2725         * configure.ac: 
2726         * pkgconfig/gstreamer-net.pc.in:
2727         * pkgconfig/gstreamer-net-uninstalled.pc.in:
2728         * pkgconfig/Makefile.am: Add net pkgconfig files.
2729
2730 2005-11-18  Stefan Kost  <ensonic@users.sf.net>
2731
2732         * gst/gstcaps.c:
2733         * gst/gstghostpad.c:
2734         * gst/gsttrace.c:
2735         * gst/gstvalue.c:
2736         * gst/gstvalue.h:
2737           docs fixes
2738
2739 2005-11-18  Andy Wingo  <wingo@pobox.com>
2740
2741         * gst/net/gstnetclientclock.c: Turn off debugging.
2742
2743         * check/net/gstnetclientclock.c (test_functioning): Assert that the
2744         times connverge somewhat. Can't make a real test.
2745
2746         * gst/net/gstnetclientclock.c (do_linear_regression): Use all
2747         integer arithmetic. Return the minimum of the domain, which can be
2748         set as "internal" for gst_clock_set_calibration.
2749         (gst_net_client_clock_observe_times): Call _set_calibration.
2750         (gst_net_client_clock_new): Call _set_calibration instead of
2751         rate_offset.
2752
2753         * check/net/gstnetclientclock.c (test_functioning): Use the right
2754         adjustment api.
2755
2756         * gst/gstclock.h:
2757         * gst/gstclock.c (gst_clock_get_calibration) 
2758         (gst_clock_set_calibration): New functions, obsolete the ones I
2759         added yesterday. Doh. Precision issues mean we have to extrapolate
2760         from a point in the more recent past than 1970.
2761         (gst_clock_get_rate_offset, gst_clock_set_rate_offset): Mark as
2762         obsolete.
2763         (gst_clock_adjust_unlocked): Use the right calibration data.
2764
2765 2005-11-18  Edward Hervey  <edward@fluendo.com>
2766
2767         * gst/base/gstbasesink.c: (gst_base_sink_change_state): 
2768         Also reset the ->current_* values in READY->PAUSED
2769
2770 2005-11-18  Andy Wingo  <wingo@pobox.com>
2771
2772         * gst/net/gstnetclientclock.c (gst_net_client_clock_thread):
2773         Whoops, check the right fd. Also add some debugging.
2774         (gst_net_client_clock_observe_times): Adjust for int64 offset.
2775         (do_linear_regression): Add a crapload of debugging. Subtract off
2776         the minimum values from the input series to discard unneeded bits.
2777         Use only int arithmetic. There is still double arithmetic when
2778         calculating the intercept that needs fixing. Return boolean to
2779         indicate success; FALSE would mean the domain or range is too
2780         great. Still needs fixes.
2781
2782 2005-11-18  Wim Taymans  <wim@fluendo.com>
2783
2784         * gst/base/gstbasesink.c: (gst_base_sink_get_position):
2785         For the current position in stream time, we need to subtract
2786         accumulated time.
2787         
2788         * gst/gstsystemclock.c: (gst_system_clock_async_thread):
2789         Release lock before calling the callback function of async
2790         entries.
2791
2792 2005-11-18  Andy Wingo  <wingo@pobox.com>
2793
2794         * gst/net/gstnetclientclock.c (gst_net_client_clock_class_init):
2795         Port goes all the way to MAXUINT16.
2796
2797         * gst/net/gstnettimeprovider.c: Make the port range the same as
2798         for the kernel: 0 assigns, otherwise ports are less than
2799         MAXUINT16.
2800
2801         * check/net/gstnettimeprovider.c: Adapt for 0 == kernel assigns
2802         port change.
2803
2804         * check/net/gstnetclientclock.c (test_functioning): Add the start
2805         of another test. 
2806
2807 2005-11-18  Wim Taymans  <wim@fluendo.com>
2808
2809         * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
2810         (gst_bin_remove_func), (bin_bus_handler):
2811         * gst/gstbin.h:
2812         Removing a clock provider from a bin, triggers a clock lost message
2813         so that a new clock will be selected.
2814         Adding a clock to a bin triggers a clock provider message.
2815         Make sure we reselect a clock when we received a clock lost message.
2816         Keep a reference to the element that provided the clock.
2817
2818 2005-11-18  Andy Wingo  <wingo@pobox.com>
2819
2820         * gst/net/gstnetclientclock.c (gst_net_client_clock_new): Adjust
2821         the clock initially so it produces values around the base time.
2822         (gst_net_client_clock_class_init): Typo fix.
2823         (gst_net_client_clock_thread): Add note on when the socket gets
2824         closed.
2825
2826 2005-11-17  Wim Taymans  <wim@fluendo.com>
2827
2828         * gst/net/gstnetclientclock.c: (gst_net_client_clock_finalize):
2829         Free remote and local time arrays.
2830
2831 2005-11-17  Wim Taymans  <wim@fluendo.com>
2832
2833         * gst/net/gstnetclientclock.c: (do_linear_regression),
2834         (gst_net_client_clock_do_select), (gst_net_client_clock_thread):
2835         Fix compilation, uninitialized vars and a forgotten continue.
2836
2837 2005-11-17  Andy Wingo  <wingo@pobox.com>
2838
2839         * check/Makefile.am (check_PROGRAMS): 
2840         * check/net/gstnetclientclock.c: Add a most minimal test for the
2841         net client clock. More to come later.
2842
2843         * gst/net/gstnet.h: 
2844         * gst/net/Makefile.am: Add netclientclock.
2845
2846         * gst/net/gstnetclientclock.h:
2847         * gst/net/gstnetclientclock.c: New files, implement an untested
2848         GstClock that takes its time from a network time provider.
2849         Implements the algorithm in network-clock.scm.
2850
2851         * tests/network-clock.scm (*window-size*): Rename from
2852         *queue-length*.
2853         * tests/network-clock.scm (network-time): 
2854         * tests/network-clock-utils.scm (q-push): Update callers.
2855
2856 2005-11-17  Wim Taymans  <wim@fluendo.com>
2857
2858         * gst/gstbin.c: (gst_bin_provide_clock_func),
2859         (gst_bin_sort_iterator_new):
2860         And unref the child too..
2861
2862 2005-11-17  Wim Taymans  <wim@fluendo.com>
2863
2864         * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
2865         (gst_bin_sort_iterator_new), (gst_bin_iterate_sorted):
2866         Refactor the sort iterator so it can be used while holding the
2867         LOCK too.
2868         Make clock selection select a clock closest to the source.
2869
2870 2005-11-17  Michael Smith <msmith@fluendo.com>
2871
2872         * gst/gstclock.c: (gst_clock_init), (gst_clock_adjust_unlocked),
2873         (gst_clock_set_rate_offset), (gst_clock_get_rate_offset):
2874         * gst/gstclock.h:
2875           Anonymous structs are a gcc (and some other compilers) extension, so
2876           don't use them. Since this is only for ABI-compatibility, and our
2877           API/ABI freeze is over in a few days, this whole thing will only
2878           last a few days, so don't bother trying to think up a meaningful
2879           name for the struct.
2880
2881 2005-11-17  Andy Wingo  <wingo@pobox.com>
2882
2883         * gst/gstclock.h (GstClock): Add rate and offset properties,
2884         preserving ABI stability. Add rate/offset accessors. Will file bug
2885         for the freeze break.
2886
2887         * gst/gstclock.c (gst_clock_adjust_unlocked): Implement using rate
2888         and offset, trying to keep precision and avoiding
2889         underflow/overflow.
2890         (gst_clock_set_rate_offset, gst_clock_get_rate_offset): New
2891         functions. Make gst_clock_set_time_adjust obsolete.
2892         (gst_clock_set_time_adjust): Note that this function is obsolete.
2893         Will file bug soon.
2894
2895         * gst/base/gstbasetransform.h: Make the ABI-stability hack
2896         greppable by using GST_PADDING-1+1.
2897
2898 2005-11-17  Torsten Schoenfeld  <kaffeetisch at gmx dot net>
2899
2900         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
2901
2902         * gst/gstmessage.c: (gst_message_parse_clock_lost):
2903           Assertion should check for CLOCK_LOST, not NEW_CLOCK (#321648).
2904
2905         * gst/gstpadtemplate.h:
2906         * gst/gstpluginfeature.h:
2907           Don't use c++ style comments in headers (#321638).
2908
2909 2005-11-16  Andy Wingo  <wingo@pobox.com>
2910
2911         * gst/net/gstnettimepacket.c (gst_net_time_packet_send): Free
2912         buffer.
2913
2914         * check/net/gstnettimeprovider.c: Check to see that the time
2915         provider actually provides times. Works, yo!
2916
2917 2005-11-16  Wim Taymans  <wim@fluendo.com>
2918
2919         * check/Makefile.am:
2920         Enable more tests.
2921
2922         * check/elements/fakesrc.c: (GST_START_TEST):
2923         Set element to NULL before disposing it.
2924
2925 2005-11-16  Andy Wingo  <wingo@pobox.com>
2926
2927         * gst/net/Makefile.am:
2928         * gst/net/gstnet.h:
2929         * gst/net/gstnettimeprovider.c: 
2930         * gst/net/gstnettimeprovider.h: Use the timepacket stuff in the
2931         provider, include it from gstnet.h, and add it to the build.
2932
2933         * gst/net/gstnettimepacket.h: 
2934         * gst/net/gstnettimepacket.c: New files, abstracts out the packet
2935         sending and receiving.
2936
2937 2005-11-16  Wim Taymans  <wim@fluendo.com>
2938
2939         * check/Makefile.am:
2940         Enable valgrind check.
2941
2942         * gst/elements/gstfakesrc.c: (gst_fake_src_alloc_parent),
2943         (gst_fake_src_alloc_buffer):
2944         Fix memleak.
2945
2946 2005-11-16  Wim Taymans  <wim@fluendo.com>
2947
2948         * gst/net/gstnettimeprovider.c: (gst_net_time_provider_finalize):
2949         Call parent finalize too.
2950
2951 2005-11-16  Wim Taymans  <wim@fluendo.com>
2952
2953         * check/Makefile.am:
2954         Enable valgrind check that should work fine now.
2955
2956         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
2957         * gst/gstqueue.c: (gst_queue_init):
2958         Fix memleaks in pad allocation.
2959
2960 2005-11-16  Andy Wingo  <wingo@pobox.com>
2961
2962         * gst/net/Makefile.am:
2963         * gst/net/gstnet.h: New part of core to hold network elements and
2964         objects. Put in core because it exposes API that applications want
2965         to use. The library is named libgstnet-tempname right now because
2966         of the existing libgstnet in gst-plugins-base. Solution is
2967         probably to rename the one in plugins-base; will file a bug for
2968         the freeze break.
2969
2970         * gst/net/gstnettimeprovider.c: 
2971         * gst/net/gstnettimeprovider.h: New object to export a GstClock's
2972         get_time call over the network.
2973
2974         * configure.ac: 
2975         * gst/Makefile.am (lib_LTLIBRARIES): Add gstnet to the build.
2976
2977         * check/Makefile.am:
2978         * check/net/gstnettimeprovider.c: A most minimal test suite. Will
2979         get additions shortly.
2980
2981 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
2982
2983         * gst/gstpad.c: (gst_pad_new_from_static_template):
2984         * gst/gstpad.h:
2985           add gst_pad_new_from_static_template functions
2986         * gst/check/gstcheck.c: (gst_check_setup_src_pad),
2987         (gst_check_setup_sink_pad):
2988         * gst/elements/gsttee.c: (gst_tee_init):
2989           and use them
2990
2991 2005-11-16  Wim Taymans  <wim@fluendo.com>
2992
2993         * gst/gstpad.c: (gst_pad_pause_task):
2994         Removed warning, it's not really an error either.
2995
2996 2005-11-16  Wim Taymans  <wim@fluendo.com>
2997
2998         * gst/base/gstbasetransform.c:
2999         (gst_base_transform_prepare_output_buf),
3000         (gst_base_transform_event):
3001         Check if the caps are NULL, this can happen if the element
3002         is shutting down and the pad caps are set to NULL.
3003
3004 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
3005
3006         * gst/elements/gsttee.c: (gst_tee_init):
3007           fix pad template leak in tee
3008
3009 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
3010
3011         * gst/glib-compat.c: (g_value_dup_gst_object):
3012         * gst/glib-compat.h:
3013         * gst/gstpad.c: (gst_pad_set_property):
3014           use gst_object_ref when setting the pad template; this will
3015           trigger the pad template leaks on GLib 2.6 and the slaves
3016
3017 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
3018
3019         * gst/glib-compat.c: (gst_flags_get_first_value):
3020         * gst/glib-compat.h:
3021         * gst/gstregistryxml.c:
3022           remove functions copied from GLib 2.6
3023
3024 2005-11-16  Michael Smith <msmith@fluendo.com>
3025
3026         * gst/Makefile.am:
3027           Don't link against VALGRIND_LIBS. That was always the wrong thing to
3028           do, but only breaks with newer valgrind versions. We're not a
3029           valgrind tool, we have no link-time dependencies on libcoregrind.
3030
3031 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
3032
3033         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
3034           some debug changes
3035         * gst/gstmessage.h:
3036           typo fixes
3037
3038 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
3039
3040         * gst/base/gstbasesrc.c: (gst_base_src_init):
3041         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
3042         * gst/gstqueue.c: (gst_queue_init):
3043         * gst/gstregistryxml.c: (load_feature):
3044           Revert all these unrefs, they don't even pass make check !
3045
3046 2005-11-15  Johan Dahlin  <johan@gnome.org>
3047
3048         * gst/base/gstbasesrc.c: (gst_base_src_init):
3049         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
3050         * gst/gstqueue.c: (gst_queue_init): 
3051         Free pad templates, fixes a couple of leaks.
3052
3053 2005-11-15  Daniel Fischer  <dan at f3c dot com>
3054
3055         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
3056
3057         * gst/gstpad.c: (gst_pad_get_property):
3058           GST_PAD_PAD_TEMPLATE(pad) gets the pad template, while
3059           GST_PAD_TEMPLATE(pad) does a cast. We want the former here.
3060           (#321452)
3061
3062 2005-11-15  Wim Taymans  <wim@fluendo.com>
3063
3064         * gst/gstevent.c:
3065         Small doc update.
3066
3067 2005-11-15  Andy Wingo  <wingo@pobox.com>
3068
3069         * gst/gstelement.c (gst_element_set_base_time): Add debugging.
3070
3071         * gst/gstpipeline.c (gst_pipeline_set_new_stream_time): Document
3072         using GST_CLOCK_TIME_NONE to disable base time management.
3073         (do_pipeline_seek, gst_pipeline_change_state): Don't reset stream
3074         time if it was NONE before.
3075         (gst_pipeline_change_state): Only munge the base time if
3076         stream_time != GST_CLOCK_TIME_NONE.
3077
3078         * check/gst/gstpipeline.c (test_base_time): Punt around the
3079         problem of the probe not being called, because that's not the
3080         issue I'm looking at. Add a check that setting stream_time to NONE
3081         disables base time management.
3082         
3083 2005-11-15  Wim Taymans  <wim@fluendo.com>
3084
3085         * gst/base/gstbasesink.c: (gst_base_sink_change_state):
3086         segment_stop == -1 at startup.
3087
3088         * gst/base/gstbasetransform.c: (gst_base_transform_event),
3089         (gst_base_transform_change_state):
3090         Init segment values at start.
3091
3092 2005-11-15  Wim Taymans  <wim@fluendo.com>
3093
3094         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
3095         0 segment values are 0 in any format.
3096
3097         * gst/base/gstbasetransform.c: (gst_base_transform_event):
3098         * gst/base/gstbasetransform.h:
3099         Parse newsegment correctly in basetransform
3100
3101         * gst/elements/gstidentity.c: (gst_identity_transform_ip):
3102         Sync to clock using updated segment values.
3103
3104 2005-11-15  Andy Wingo  <wingo@pobox.com>
3105
3106         * check/gst/gstpipeline.c (test_base_time): Add check that the
3107         base time and stream time are reset correctly.
3108
3109 2005-11-15  Wim Taymans  <wim@fluendo.com>
3110
3111         * docs/design/part-TODO.txt:
3112         Some more TODO items.
3113
3114 2005-11-15  Andy Wingo  <wingo@pobox.com>
3115
3116         * gst/elements/gstfakesrc.c (gst_fake_src_create): It's not an
3117         error if the user selected "no clock" as the clocking method.
3118
3119         * check/gst/gstpipeline.c (test_base_time): New test for buffer
3120         timestamps with live capture.
3121
3122         * gst/elements/gstfakesrc.c (gst_fake_src_create): If the datarate
3123         is 0 but we are a live source, timestamp the buffers using the
3124         element's clock.
3125
3126 2005-11-14  Stefan Kost  <ensonic@users.sf.net>
3127
3128         * docs/gst/gstreamer-sections.txt:
3129         * gst/gsterror.c:
3130         * gst/gstghostpad.c:
3131         * gst/gstobject.h:
3132         * gst/gstxml.c:
3133           more section docs
3134
3135 2005-11-14  Wim Taymans  <wim@fluendo.com>
3136
3137         * common/gst.supp:
3138           add suppressions from Wim's Debian machine
3139
3140 2005-11-14  Thomas Vander Stichele  <thomas at apestaart dot org>
3141
3142         * common/gst.supp:
3143           add suppressions from Andy's AMD64 Ubuntu machine
3144
3145 2005-11-14  Andy Wingo  <wingo@pobox.com>
3146
3147         * gst/gstpad.c (gst_pad_set_active): Change docs; parent's
3148         STATE_LOCK not necessary. Fixes #311489.
3149
3150         * gst/gsterror.c (FILE_A_BUG): Be polite *and* helpful. Fixes
3151         #305291.
3152
3153         * gst/gstindex.c (gst_index_add_object): Note in the docs that
3154         this function is not implemented.
3155
3156 2005-11-14  Julien MOUTTE  <julien@moutte.net>
3157
3158         * gst/base/gstbasetransform.c:
3159         (gst_base_transform_prepare_output_buf):
3160         Ref the source pad caps while we need them.
3161         Fixes (#321386)
3162
3163 2005-11-11  Wim Taymans  <wim@fluendo.com>
3164
3165         * docs/gst/gstreamer-sections.txt:
3166         Added some docs for GstCollectData.
3167
3168         * gst/base/gstadapter.c:
3169         Some small code example fix.
3170
3171         * gst/base/gstcollectpads.c:
3172         * gst/base/gstcollectpads.h:
3173         Document some more.
3174
3175 2005-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3176
3177         * configure.ac: back to HEAD
3178
3179 === release 0.9.5 ===
3180
3181 2005-11-11  Thomas Vander Stichele <thomas at apestaart dot org>
3182
3183         * configure.ac:
3184           releasing 0.9.5, "Bike Lunch Day"
3185
3186 2005-11-11  Wim Taymans  <wim@fluendo.com>
3187
3188         * gst/gstbuffer.c: (_gst_buffer_copy):
3189         Copy more flags.
3190
3191         * gst/gstcaps.c: (gst_caps_is_equal):
3192         Fix some docs.
3193         Make _is_equal fast in the trivial cases.
3194
3195         * gst/gstminiobject.c:
3196         * gst/gstminiobject.h:
3197         More docs. Spifify .h file.
3198
3199         * gst/gstutils.c:
3200         Small doc update.
3201
3202 2005-11-11  Wim Taymans  <wim@fluendo.com>
3203
3204         * gst/base/gstbasetransform.c:
3205         (gst_base_transform_prepare_output_buf),
3206         (gst_base_transform_handle_buffer):
3207         Small cleanups.
3208         If we're processing a buffer and need to allocate an output
3209         buffer, we cannot accept a format change. If we did get a 
3210         format change, we have to alloc a buffer ourselves of the 
3211         right size.
3212
3213 2005-11-11  Wim Taymans  <wim@fluendo.com>
3214
3215         * gst/gstpad.c: (gst_pad_get_caps), (gst_pad_peer_get_caps):
3216         While checking the flag for reentrancy in the gstcaps function
3217         is nice to detect recursive invocations, it also makes it 
3218         impossible to call getcaps from multiple threads, which must be
3219         possible. So, checking for recursive calls has to go.
3220
3221 2005-11-11  Michael Smith <msmith@fluendo.com>
3222
3223         * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
3224           Don't sync on buffers that fall partially outside our current
3225           segment. Prevents an assertion failure/abort playing some files.
3226
3227 2005-11-10  Andy Wingo  <wingo@pobox.com>
3228
3229         * check/gst/gstbin.c (test_message_state_changed_children): Style
3230         fix..
3231
3232         * gst/gstbus.c (poll_destroy, poll_func, gst_bus_poll): Implement
3233         gst_bus_poll with the signal watch. Ensures that poll and a signal
3234         watch see the same messages.
3235
3236         * check/gst/gstbus.c (test_watch_with_poll): New test, checks that
3237         a poll and a watch at the same time get the same messages.
3238
3239 2005-11-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3240
3241         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps):
3242         * gst/gstcaps.c: (gst_caps_intersect):
3243           Don't call gst_caps_do_simplify - it doesn't respect order of caps
3244           and it's not needed.
3245
3246 2005-11-10  Wim Taymans  <wim@fluendo.com>
3247
3248         * docs/design/part-TODO.txt:
3249         Updated todo.
3250
3251 2005-11-10  Wim Taymans  <wim@fluendo.com>
3252
3253         * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
3254         * gst/base/gstbasesrc.c: (gst_base_src_wait),
3255         (gst_base_src_do_sync), (gst_base_src_get_range):
3256         Implement clock sync in base class.
3257
3258 2005-11-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3259
3260         patch by: Tim-Philipp Müller <tim at centricular dot net>
3261
3262         * gst/gststructure.c: (gst_structure_parse_field),
3263         (gst_structure_from_string):
3264           Forward-port a 0.8 patch to handle escaped spaces in structure string,
3265           so that gst_parse_launch() can deal with spaces in filtered link
3266           caps (fixes #164479)
3267         * check/gst/capslist.h:
3268         * check/gst/gststructure.c: (GST_START_TEST):
3269           add unit tests for this change
3270
3271 2005-11-10  Wim Taymans  <wim@fluendo.com>
3272
3273         * docs/gst/gstreamer-sections.txt:
3274         * gst/gstelement.c:
3275         * gst/gstelement.h:
3276         Fix docs, move some STATE macros to private.
3277
3278 2005-11-10  Wim Taymans  <wim@fluendo.com>
3279
3280         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
3281         Added check for bug #317341
3282
3283         * gst/gstbuffer.c:
3284         * gst/gstbuffer.h:
3285         Some more spiffifying.
3286
3287         * gst/gstghostpad.c: (gst_ghost_pad_do_link):
3288         Call peer linkfunction if we are a source pad. Totally fixes
3289         #317341
3290
3291         * gst/gstpad.c:
3292         Update docs, source pads should call the peer linkfunction
3293         so they can atomically perform the pad link.
3294
3295 2005-11-09  Wim Taymans  <wim@fluendo.com>
3296
3297         * gst/gstbuffer.c:
3298         * gst/gstbuffer.h:
3299         Uber-spiffy-spiffify some more.
3300
3301 2005-11-09  Tim-Philipp Müller  <tim at centricular dot net>
3302
3303         * gst/base/gstcollectpads.c: (gst_collectpads_add_pad):
3304         * gst/elements/gstfilesink.c: (gst_file_sink_init):
3305         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
3306         * gst/gstghostpad.c: (gst_ghost_pad_set_internal),
3307         (gst_ghost_pad_init), (gst_ghost_pad_new_notarget):
3308         * gst/gstpad.c: (gst_pad_init):
3309           Use GST_DEBUG_FUNCPTR() more extensively.
3310
3311 2005-11-09  Wim Taymans  <wim@fluendo.com>
3312
3313         * gst/gstobject.c: (gst_object_class_init):
3314         * gst/gstobject.h:
3315         Documentation fixes.
3316
3317 2005-11-09  Edward Hervey  <edward@fluendo.com>
3318
3319         * gst/gsttypefindfactory.c:
3320         Fix docs.
3321         
3322 2005-11-09  Edward Hervey  <edward@fluendo.com>
3323
3324         * gst/base/gsttypefindhelper.c:
3325         * gst/gsttypefind.c:
3326         * gst/gsttypefind.h:
3327         Fix docs.
3328
3329 2005-11-09  Wim Taymans  <wim@fluendo.com>
3330
3331         * gst/gstiterator.c:
3332         Fix revision data.
3333
3334         * gst/gsttask.c:
3335         * gst/gsttask.h:
3336         Fix docs.
3337
3338 2005-11-09  Wim Taymans  <wim@fluendo.com>
3339
3340         * gst/gstevent.h:
3341         * gst/gsturi.h:
3342         Fix docs.
3343
3344 2005-11-09  Wim Taymans  <wim@fluendo.com>
3345
3346         * docs/gst/gstreamer-sections.txt:
3347         Moved the message async delivery private lock and cond
3348         to the private section.
3349
3350         * gst/gstmessage.c:
3351         * gst/gstmessage.h:
3352         Fixed docs.
3353
3354 2005-11-09  Edward Hervey  <edward@fluendo.com>
3355
3356         * docs/gst/gstreamer-sections.txt:
3357         * gst/gsturi.c:
3358         * gst/gsturi.h:
3359         Document GstURIHandler
3360
3361 2005-11-09  Wim Taymans  <wim@fluendo.com>
3362
3363         * gst/gstiterator.c: (gst_iterator_fold), (gst_iterator_foreach),
3364         (gst_iterator_find_custom):
3365         * gst/gstiterator.h:
3366         Fix iterator docs.
3367
3368 2005-11-09  Wim Taymans  <wim@fluendo.com>
3369
3370         * gst/gstbin.h:
3371         Document another field.
3372
3373         * gst/gststructure.c:
3374         * gst/gststructure.h:
3375         Document.
3376
3377 2005-11-09  Wim Taymans  <wim@fluendo.com>
3378
3379         * gst/gstbin.h:
3380         Documented structs.
3381
3382 2005-11-09  Wim Taymans  <wim@fluendo.com>
3383
3384         * docs/gst/gstreamer-sections.txt:
3385         Added some new macros.
3386
3387         * gst/gstclock.c:
3388         * gst/gstclock.h:
3389         * gst/gstobject.h:
3390         Docs updates.
3391
3392 2005-11-09  Wim Taymans  <wim@fluendo.com>
3393
3394         * docs/design/part-TODO.txt:
3395         Some more items for the TODO
3396
3397         * gst/gstcaps.c:
3398         * gst/gstcaps.h:
3399         Document GstCaps.
3400
3401 2005-11-09  Andy Wingo  <wingo@pobox.com>
3402
3403         * gst/base/gstbasesink.c: Add the beginning of docs here -- have
3404         to work on something else now tho...
3405
3406         * gst/base/gstadapter.c: More adapter docs.
3407
3408         * gst/elements/gstfilesink.c (gst_file_sink_start) 
3409         (gst_file_sink_stop): New functions, replace the state change
3410         handler.
3411         (gst_file_sink_class_init): Hook up the start and stop functions.
3412         (gst_file_sink_base_init): Don't set the state change handler any
3413         more. It was a bit ugly too, being set from here...
3414         (gst_file_sink_get_property, gst_file_sink_set_property):
3415         Cleanups...
3416         (gst_file_sink_set_location): More robust check that doesn't call
3417         GST_STATE. Ugggggg.
3418
3419 2005-11-08  Tim-Philipp Müller  <tim at centricular dot net>
3420
3421         * gst/base/gstbasetransform.c: (gst_base_transform_event):
3422           Hold STREAM_LOCK while pushing newsegment or tag events as well.
3423
3424 2005-11-08  Wim Taymans  <wim@fluendo.com>
3425
3426         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
3427         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
3428         (gst_base_sink_chain), (gst_base_sink_change_state):
3429         * gst/base/gstbasesink.h:
3430         * gst/base/gstbasesrc.h:
3431         * gst/gstelement.h:
3432         * gst/gstevent.h:
3433         Avoid excessive typechecking in macros.
3434
3435         * gst/gstminiobject.c: (gst_mini_object_get_type),
3436         (gst_mini_object_init), (gst_mini_object_new),
3437         (gst_mini_object_free):
3438         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
3439         (gst_object_finalize):
3440         Remove cruft code, optimize alloc_trace.
3441
3442 2005-11-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3443
3444         * docs/faq/gst-uninstalled:
3445           fix up PS1 for systems that try to reset it
3446
3447 2005-11-07  Wim Taymans  <wim@fluendo.com>
3448
3449         * gst/base/gstbasesrc.c: (gst_base_src_init),
3450         (gst_base_src_get_range):
3451         Set the segment_end to -1 initially. Fixed typefind.
3452
3453 2005-11-07  Tim-Philipp Müller  <tim at centricular dot net>
3454
3455         * gst/base/gstadapter.c:
3456           Debug category should be 'adapter', not 'GstAdapter'.
3457           
3458         * gst/base/gstcollectpads.c: (gst_collectpads_base_init),
3459         (gst_collectpads_class_init), (gst_collectpads_init),
3460         (gst_collectpads_peek), (gst_collectpads_pop),
3461         (gst_collectpads_event), (gst_collectpads_chain):
3462           Add debug category and some debugging output. Use boilerplate
3463           macros. Remove some extraneous words from docs.
3464
3465 2005-11-05  Andy Wingo  <wingo@pobox.com>
3466
3467         * gst/base/gstpushsrc.c: Shorten by 30% via use of boilerplate
3468         macro.
3469
3470 2005-11-04  Stefan Kost  <ensonic@users.sf.net>
3471
3472         * docs/gst/gstreamer-sections.txt:
3473         * gst/gstcaps.h:
3474         * gst/gstinfo.c:
3475         * gst/gstminiobject.h:
3476         * gst/gstobject.h:
3477         * gst/gstutils.h:
3478           more docs added
3479
3480 2005-11-04  Wim Taymans  <wim@fluendo.com>
3481
3482         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
3483         Small update to stop at the configured segment_end
3484         position.
3485
3486 2005-11-04  Stefan Kost  <ensonic@users.sf.net>
3487
3488         * gst/gstregistry.c:
3489         * gst/gstregistry.h:
3490           added missing docs
3491
3492 2005-11-04  Edward Hervey  <edward@fluendo.com>
3493
3494         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
3495         Check if we are doing a segment seek and have arrived at the
3496         end of that segment.
3497
3498 2005-11-04  Wim Taymans  <wim@fluendo.com>
3499
3500         * gst/gstbus.c: (gst_bus_post), (gst_bus_set_sync_handler):
3501         Don't leak a mutex unlock in case of an error.
3502
3503         * gst/gstbus.h:
3504         Doc fixes.
3505
3506 2005-11-04  Wim Taymans  <wim@fluendo.com>
3507
3508         * gst/gstbus.c: (gst_bus_class_init), (gst_bus_init),
3509         (gst_bus_post):
3510         Get the context to wake up only once.
3511
3512 2005-11-03  Wim Taymans  <wim@fluendo.com>
3513
3514         * check/states/sinks.c: (GST_START_TEST):
3515         Uncomment fixed check.
3516
3517         * docs/design/part-TODO.txt:
3518         Updated TODO.
3519
3520         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
3521         (gst_base_sink_handle_object), (gst_base_sink_do_sync),
3522         (gst_base_sink_get_position):
3523         If we are going to PLAYING, post the right pending state
3524         when we post the intermediate paused message.
3525
3526         * gst/gstelement.c: (gst_element_continue_state),
3527         (gst_element_set_state_func), (gst_element_change_state):
3528         Don't post state changes that were between the same state
3529         and were not ASYNC.
3530
3531 2005-11-03  Stefan Kost  <ensonic@users.sf.net>
3532
3533         * docs/gst/gstreamer-sections.txt:
3534         * gst/gstcaps.h:
3535         * gst/gstinfo.c:
3536         * gst/gstminiobject.h:
3537         * gst/gstobject.h:
3538         * gst/gstutils.h:
3539           more docs and doc style fixes
3540
3541 2005-11-03  Stefan Kost  <ensonic@users.sf.net>
3542
3543         * docs/gst/gstreamer-sections.txt:
3544         * gst/gstelement.c:
3545         * gst/gstminiobject.c:
3546         doc fixes
3547
3548 2005-11-03  Andy Wingo  <wingo@pobox.com>
3549
3550         * check/states/sinks.c (test_livesrc_sink): Add checks that the
3551         state-changed messages actually have the right order and the right
3552         values.
3553
3554 2005-11-03  Wim Taymans  <wim@fluendo.com>
3555
3556         * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
3557         Added some more checks. Specifically the case where NO_PREROLL
3558         elements are in the pipeline.
3559
3560         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
3561         (gst_base_sink_handle_object), (gst_base_sink_do_sync),
3562         (gst_base_sink_get_position):
3563         Post READY->PAUSED state change messages too.
3564         Fix bug where VOID was posted as pending state...
3565
3566         * gst/gstbin.c: (gst_bin_recalc_state):
3567         use _element_continue_state() to continue the state change.
3568
3569         * gst/gstelement.c: (gst_element_continue_state),
3570         (gst_element_commit_state), (gst_element_set_state_func),
3571         (gst_element_change_state), (gst_element_change_state_func):
3572         Lots of state change cleanups, assign the STATE_RETURN in
3573         a new continue_state() function that also propagates the
3574         last return value from a state change to the app.
3575         Update some debug statements with proper category.
3576
3577 2005-11-03  Wim Taymans  <wim@fluendo.com>
3578
3579         * docs/design/part-events.txt:
3580         * docs/design/part-gstpipeline.txt:
3581         * docs/design/part-messages.txt:
3582         * docs/design/part-overview.txt:
3583         * docs/design/part-seeking.txt:
3584         * docs/design/part-states.txt:
3585         * docs/design/part-trickmodes.txt:
3586         * docs/manual/advanced-position.xml:
3587         Small docs updates.
3588
3589         * gst/gstobject.h:
3590         People think !! is ugly, this looks better.
3591
3592         * gst/gstpad.c: (gst_pad_set_blocked_async):
3593         Remove !! since it's fixed elsewhere now.
3594
3595 2005-11-03  Tim-Philipp Müller  <tim at centricular dot net>
3596
3597         * gst/gstminiobject.h:
3598         * gst/gstobject.h:
3599           Add !! to _FLAG_IS_SET macros to make the result boolean.
3600
3601 2005-11-03  Edward Hervey  <edward@fluendo.com>
3602
3603         * gst/gstpad.c: (gst_pad_set_blocked_async):
3604         comparing a flag and a gboolean rarely returns coherent results...
3605         Added two characters (!!) to make that work correctly.
3606         
3607 2005-11-03  Tim-Philipp Müller  <tim at centricular dot net>
3608
3609         * gst/gstbus.c: (gst_bus_class_init):
3610           Fix some typos.
3611           
3612         * gst/gstqueue.c: (gst_queue_loop):
3613           Don't assume a miniobject that isn't a buffer is an
3614           event (it could be that there is a refcounting
3615           problem somewhere and the pointer is stale and
3616           refers to an already destroyed miniobject).
3617
3618 2005-11-03  Julien MOUTTE  <julien@moutte.net>
3619
3620         * gst/gstpad.c: (gst_pad_alloc_buffer): Fix some typos.
3621
3622 2005-11-03  Tim-Philipp Müller  <tim at centricular dot net>
3623
3624         * docs/manual/advanced-position.xml:
3625           Update seek example and explanations to current 0.9 API.
3626
3627         * gst/elements/gsttypefindelement.c:
3628         (gst_type_find_element_activate):
3629           Remove FIXME comment now that the found caps
3630           are unreffed.
3631
3632 2005-11-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3633
3634         * gst/gstregistryxml.c: (load_feature):
3635           Add another GST_STR_NULL instance
3636
3637 2005-11-02  Edward Hervey  <edward@fluendo.com>
3638
3639         * gst/gstpad.c: (handle_pad_block):
3640         Follow-up to Wim's patch, solves deadlock for blocked and flushing pads
3641         
3642 2005-11-02  Wim Taymans  <wim@fluendo.com>
3643
3644         * gst/gstbin.c:
3645         Fix typo in docs.
3646
3647         * gst/gstelement.c: (gst_element_commit_state):
3648         Remove unused value.
3649
3650         * gst/gstiterator.c:
3651         Mention that the returned element is reffed in the docs.
3652
3653 2005-11-02  Wim Taymans  <wim@fluendo.com>
3654
3655         * gst/gstpad.c: (gst_pad_alloc_buffer), (handle_pad_block),
3656         (gst_pad_push), (gst_pad_push_event):
3657         Unlock blocked pads when they are flushed.
3658
3659 2005-11-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3660
3661         * docs/README:
3662         * docs/gst/gstreamer-sections.txt:
3663         * gst/gstbin.c:
3664           doc updates
3665         * gst/gstregistry.c: (gst_registry_scan_path_level):
3666           fix for a nasty little missed situation where an installed plug-in
3667           which was in the cache did not get overridden by an uninstalled one
3668           which was earlier in the plugin path because the newly created plugin
3669           for the uninstalled one (not in the registry) didn't get its
3670           ->registered set to TRUE
3671
3672 2005-11-02  Tim-Philipp Müller  <tim at centricular dot net>
3673
3674         * gst/base/gstcollectpads.c: (gst_collectpads_set_function),
3675         (gst_collectpads_add_pad), (gst_collectpads_remove_pad),
3676         (gst_collectpads_is_active), (gst_collectpads_collect),
3677         (gst_collectpads_collect_range), (gst_collectpads_start),
3678         (gst_collectpads_stop), (gst_collectpads_peek),
3679         (gst_collectpads_pop), (gst_collectpads_available),
3680         (gst_collectpads_read), (gst_collectpads_flush):
3681           Guard public API with assertions.
3682         
3683         * gst/gstpad.c:
3684           Fix docs for gst_pad_set_link_function().
3685
3686 2005-11-02  Johan Dahlin  <johan@gnome.org>
3687
3688         * gst/elements/gsttypefindelement.c (gst_type_find_element_activate): 
3689         Unref found_caps after we used it.
3690
3691 2005-11-02  Tim-Philipp Müller  <tim at centricular dot net>
3692
3693         * gst/base/gstcollectpads.c: (gst_collectpads_peek):
3694           Don't try to ref NULL.
3695
3696 2005-11-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3697
3698         * win32/common/config.h.in:
3699           provide a GST_FUNCTION that just gives a string for now
3700
3701 2005-11-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3702
3703         * win32/common/gstenumtypes.c: (register_gst_object_flags),
3704         (gst_object_flags_get_type), (register_gst_bin_flags),
3705         (gst_bin_flags_get_type), (register_gst_buffer_flag),
3706         (gst_buffer_flag_get_type), (register_gst_bus_flags),
3707         (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
3708         (gst_bus_sync_reply_get_type), (register_gst_clock_return),
3709         (gst_clock_return_get_type), (register_gst_clock_entry_type),
3710         (gst_clock_entry_type_get_type), (register_gst_clock_flags),
3711         (gst_clock_flags_get_type), (register_gst_state),
3712         (gst_state_get_type), (register_gst_state_change_return),
3713         (gst_state_change_return_get_type), (register_gst_state_change),
3714         (gst_state_change_get_type), (register_gst_element_flags),
3715         (gst_element_flags_get_type), (register_gst_core_error),
3716         (gst_core_error_get_type), (register_gst_library_error),
3717         (gst_library_error_get_type), (register_gst_resource_error),
3718         (gst_resource_error_get_type), (register_gst_stream_error),
3719         (gst_stream_error_get_type), (register_gst_event_type),
3720         (gst_event_type_get_type), (register_gst_seek_type),
3721         (gst_seek_type_get_type), (register_gst_seek_flags),
3722         (gst_seek_flags_get_type), (register_gst_format),
3723         (gst_format_get_type), (register_gst_index_certainty),
3724         (gst_index_certainty_get_type), (register_gst_index_entry_type),
3725         (gst_index_entry_type_get_type),
3726         (register_gst_index_lookup_method),
3727         (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
3728         (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
3729         (gst_index_resolver_method_get_type), (register_gst_index_flags),
3730         (gst_index_flags_get_type), (register_gst_debug_level),
3731         (gst_debug_level_get_type), (register_gst_debug_color_flags),
3732         (gst_debug_color_flags_get_type), (register_gst_iterator_result),
3733         (gst_iterator_result_get_type), (register_gst_iterator_item),
3734         (gst_iterator_item_get_type), (register_gst_message_type),
3735         (gst_message_type_get_type), (register_gst_mini_object_flags),
3736         (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
3737         (gst_pad_link_return_get_type), (register_gst_flow_return),
3738         (gst_flow_return_get_type), (register_gst_activate_mode),
3739         (gst_activate_mode_get_type), (register_gst_pad_direction),
3740         (gst_pad_direction_get_type), (register_gst_pad_flags),
3741         (gst_pad_flags_get_type), (register_gst_pad_presence),
3742         (gst_pad_presence_get_type), (register_gst_pad_template_flags),
3743         (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
3744         (gst_pipeline_flags_get_type), (register_gst_plugin_error),
3745         (gst_plugin_error_get_type), (register_gst_plugin_flags),
3746         (gst_plugin_flags_get_type), (register_gst_rank),
3747         (gst_rank_get_type), (register_gst_query_type),
3748         (gst_query_type_get_type), (register_gst_tag_merge_mode),
3749         (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
3750         (gst_tag_flag_get_type), (register_gst_task_state),
3751         (gst_task_state_get_type), (register_gst_alloc_trace_flags),
3752         (gst_alloc_trace_flags_get_type),
3753         (register_gst_type_find_probability),
3754         (gst_type_find_probability_get_type), (register_gst_uri_type),
3755         (gst_uri_type_get_type), (register_gst_parse_error),
3756         (gst_parse_error_get_type):
3757         * win32/common/gstversion.h:
3758           update win32 copies
3759
3760 2005-11-01  Luca Ognibene  <luogni@tin.it>
3761
3762         * gst/gst.c:
3763           fix docs. popt is dead, long live GOption.
3764
3765 2005-10-31  Wim Taymans  <wim@fluendo.com>
3766
3767         * gst/gstbuffer.h:
3768         Small doc fix.
3769
3770 2005-10-31  Andy Wingo  <wingo@pobox.com>
3771
3772         * Boo!
3773
3774         * gst/gstqueue.c (gst_queue_chain): Fix downstream leaky mode.
3775
3776         * gst/gstobject.c (gst_object_dispatch_properties_changed): No
3777         need to serialize property notifications on GLib 2.8. GLib 2.6 has
3778         the possibility of deadlocks here if code calling notify() or
3779         set() has a lock that can be taken in another notify handler (ABBA
3780         with class lock and e.g. python GIL state lock).
3781
3782 2005-10-28  Julien MOUTTE  <julien@moutte.net>
3783
3784         * gst/gstbus.c: Doc updates.
3785
3786 2005-10-28  Wim Taymans  <wim@fluendo.com>
3787
3788         * docs/design/part-TODO.txt:
3789         * gst/gstiterator.c:
3790         * gst/gstsystemclock.c:
3791         * gst/gstsystemclock.h:
3792         Doc updates.
3793
3794 2005-10-28  Edward Hervey  <edward@fluendo.com>
3795
3796         * docs/gst/gstreamer-docs.sgml:
3797         * docs/gst/gstreamer-sections.txt:
3798         the GstURIType documentation page is private, it only defines GstURIType
3799         which should be defined in the GstURIHandler page
3800         
3801 2005-10-28  Thomas Vander Stichele  <thomas at apestaart dot org>
3802
3803         * gst/gstbin.c: (gst_bin_class_init):
3804         * gst/gstbin.h:
3805         * gst/gstutils.c:
3806         Documentation updates.
3807
3808 2005-10-28  Wim Taymans  <wim@fluendo.com>
3809
3810         * docs/gst/gstreamer-sections.txt:
3811         * gst/gstclock.c:
3812         * gst/gstclock.h:
3813         Documented the clocks.
3814
3815 2005-10-28  Stefan Kost  <ensonic@users.sf.net>
3816
3817         * docs/gst/gstreamer-sections.txt:
3818           move some macros to private sections
3819         * gst/gstminiobject.c:
3820         * gst/gstminiobject.h:
3821           add descriptions provided by ds and some more
3822         * gst/gstpad.h:
3823           mark macro as to be removed
3824
3825 2005-10-28  Wim Taymans  <wim@fluendo.com>
3826
3827         * docs/design/part-TODO.txt:
3828         Add an item to TODO.
3829
3830         * gst/gstiterator.c: (gst_iterator_fold),
3831         (gst_iterator_find_custom):
3832         * gst/gstiterator.h:
3833         Add iterator docs.
3834
3835 2005-10-28  Wim Taymans  <wim@fluendo.com>
3836
3837         * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
3838         (gst_base_transform_init):
3839         Don't leak class.
3840
3841         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_loop):
3842         An EOS event marks the queue as completely filled.
3843
3844 2005-10-27  Wim Taymans  <wim@fluendo.com>
3845
3846         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3847         (gst_base_sink_do_sync), (gst_base_sink_get_position):
3848         Some more debugging.
3849
3850         * gst/base/gstbasetransform.c: (gst_base_transform_finalize),
3851         (gst_base_transform_init), (gst_base_transform_buffer_alloc),
3852         (gst_base_transform_event), (gst_base_transform_getrange),
3853         (gst_base_transform_chain):
3854         * gst/base/gstbasetransform.h:
3855         Fix debugging,
3856         Protect transform and concurrent buffer alloc with a new lock.
3857         Try not to break ABI/API.
3858
3859 2005-10-27  Wim Taymans  <wim@fluendo.com>
3860
3861         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
3862         (gst_base_src_init), (gst_base_src_query),
3863         (gst_base_src_default_newsegment),
3864         (gst_base_src_configure_segment), (gst_base_src_do_seek),
3865         (gst_base_src_send_event), (gst_base_src_event_handler),
3866         (gst_base_src_pad_get_range), (gst_base_src_loop),
3867         (gst_base_src_unlock), (gst_base_src_default_negotiate),
3868         (gst_base_src_start), (gst_base_src_deactivate),
3869         (gst_base_src_activate_push), (gst_base_src_change_state):
3870         Move some stuff around and cleanup things.
3871
3872 2005-10-27  Tim-Philipp Müller  <tim at centricular dot net>
3873
3874         * gst/base/gstbasesrc.c: (gst_base_src_query):
3875           Add missing break statements.
3876
3877 2005-10-27  Wim Taymans  <wim@fluendo.com>
3878
3879         * check/gst/gstbin.c: (GST_START_TEST):
3880         An extra refcount is taken in basesrc.
3881
3882         * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
3883         (gst_base_src_get_range), (gst_base_src_pad_get_range),
3884         (gst_base_src_loop):
3885         Small cleanups, check for flushing after being unlocked from the 
3886         LIVE_LOCK. take refcounts correctly (not yet everywhere).
3887         Don't send out EOS when going to READY.
3888
3889 2005-10-27  Wim Taymans  <wim@fluendo.com>
3890
3891         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3892         (gst_base_sink_get_position):
3893         Some more debug.
3894
3895         * gst/gstbin.c: (message_check), (bin_replace_message),
3896         (bin_remove_messages), (is_eos), (gst_bin_add_func),
3897         (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
3898         (bin_query_duration_init), (bin_query_duration_fold),
3899         (bin_query_duration_done), (bin_query_generic_fold),
3900         (gst_bin_query):
3901         * tools/gst-launch.c: (main):
3902         Remove old option.
3903
3904 2005-10-26  Stefan Kost  <ensonic@users.sf.net>
3905
3906         * examples/controller/audio-example.c: (main):
3907         * examples/queue/queue.c: (event_loop):
3908         * gst/base/gstbasetransform.h:
3909         * gst/gstelement.c: (gst_element_send_event):
3910         * gst/gstevent.h:
3911         * gst/gstpad.c: (gst_pad_send_event):
3912           fixing examples
3913           fixing docs typos
3914           changing log priority in error situations
3915
3916 2005-10-25  Wim Taymans  <wim@fluendo.com>
3917
3918         * gst/gstbin.c: (message_check), (bin_replace_message),
3919         (bin_remove_messages), (is_eos), (gst_bin_add_func),
3920         (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
3921         (bin_query_duration_init), (bin_query_duration_fold),
3922         (bin_query_duration_done), (bin_query_generic_fold),
3923         (gst_bin_query):
3924         Some doc and debug updates.
3925         Cache previously requested query DURATION for speed. invalidate
3926         cached duration if element posts a DURATION message.
3927
3928 2005-10-25  Wim Taymans  <wim@fluendo.com>
3929
3930         * docs/design/part-TODO.txt:
3931         Update TODO.
3932
3933         * gst/gstbin.c: (message_check), (bin_replace_message),
3934         (bin_remove_messages), (is_eos), (gst_bin_add_func),
3935         (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
3936         (bin_query_duration_init), (bin_query_duration_fold),
3937         (bin_query_duration_done), (bin_query_generic_fold),
3938         (gst_bin_query):
3939         Handle SEGMENT_START/DONE messages correctly.
3940         More evolved query algorithm that handles duration queries
3941         correctly.
3942
3943         * gst/gstelement.c: (gst_element_send_event), (gst_element_query),
3944         (gst_element_get_state_func), (gst_element_abort_state),
3945         (gst_element_commit_state), (gst_element_lost_state):
3946         Some more debugging.
3947
3948         * gst/gstmessage.h:
3949         Added doc.
3950
3951 2005-10-25  Wim Taymans  <wim@fluendo.com>
3952
3953         * gst/base/gstbasesink.c: (gst_base_sink_get_position):
3954         Don't use invalid stream_time.
3955
3956         * gst/gstevent.c: (gst_event_new_newsegment):
3957         stream_time in newsegment cannot be undefined.
3958
3959 2005-10-24  Wim Taymans  <wim@fluendo.com>
3960
3961         * gst/gstbus.c:
3962         Doc fix.
3963
3964         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3965         (gst_queue_loop):
3966         Fix potential deadlock when QUEUE_LOCK is taken before STREAM_LOCK.
3967
3968 2005-10-24  Stefan Kost  <ensonic@users.sf.net>
3969
3970         * docs/libs/tmpl/gstdparam.sgml:
3971         * docs/libs/tmpl/gstdplinint.sgml:
3972         * docs/libs/tmpl/gstdpman.sgml:
3973         * docs/libs/tmpl/gstdpsmooth.sgml:
3974         * docs/libs/tmpl/gstunitconvert.sgml:
3975           these are obsolete
3976
3977 2005-10-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3978
3979         * configure.ac:
3980           back to HEAD
3981
3982 === release 0.9.4 ===
3983
3984 2005-10-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3985
3986         * configure.ac:
3987           releasing 0.9.4, "Tyrannosaurus Rex"
3988
3989 2005-10-23  Tim-Philipp Müller  <tim at centricular dot net>
3990
3991         * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
3992         (gst_file_sink_get_current_offset):
3993           Use fseeko() and ftello() if available. When falling back on
3994           lseek() to get the current offset, fflush() first to make sure
3995           everything is up-to-date and we get the right offset.
3996
3997 2005-10-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3998
3999         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
4000         * gst/base/gstbasesrc.c: (gst_base_src_loop):
4001         * gst/gsterror.c: (_gst_stream_errors_init):
4002         * gst/gsterror.h:
4003         * gst/gstqueue.c: (gst_queue_loop):
4004         * po/POTFILES.in:
4005           remove prematurely added error category and clean up the instances
4006
4007 2005-10-21  Wim Taymans  <wim@fluendo.com>
4008
4009         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
4010         (gst_base_sink_get_position), (gst_base_sink_query),
4011         (gst_base_sink_change_state):
4012         Simply set the right flag when going to playing, that's all
4013         we need to do instead of calling a function inside the object
4014         lock (that could take the lock as well and deadlock)
4015
4016 2005-10-21  Wim Taymans  <wim@fluendo.com>
4017
4018         * gst/base/gstbasesrc.c: (gst_base_src_do_seek),
4019         (gst_base_src_loop):
4020         Don't warn, the peer element knows what to do best when
4021         the seek failed, it might try something else.
4022
4023 2005-10-21  Wim Taymans  <wim@fluendo.com>
4024
4025         * gst/base/gstbasesrc.c: (gst_base_src_init),
4026         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
4027         Fix seeking.
4028
4029 2005-10-21  Wim Taymans  <wim@fluendo.com>
4030
4031         * docs/design/part-segments.txt:
4032         More docs.
4033
4034         * gst/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
4035         Correctly set caps, even on the subbufer.
4036
4037 2005-10-21  Wim Taymans  <wim@fluendo.com>
4038
4039         * docs/gst/gstreamer-docs.sgml:
4040         * docs/gst/gstreamer-sections.txt:
4041         * gst/gstelement.h:
4042         * gst/gstevent.c:
4043         * gst/gstevent.h:
4044         * gst/gstmessage.h:
4045         * gst/gstpad.h:
4046         * gst/gstparse.h:
4047         * gst/gsttask.c: (gst_task_finalize), (gst_task_func):
4048         * gst/gsttask.h:
4049         * gst/gstutils.c:
4050         * gst/gstutils.h:
4051         And 2% more doc coverage.
4052
4053 2005-10-21  Andy Wingo  <wingo@pobox.com>
4054
4055         * gst/base/gstbasesrc.c (gst_base_src_query): Clean up percent
4056         position reporting.
4057
4058 2005-10-20  Wim Taymans  <wim@fluendo.com>
4059
4060         * gst/gsterror.c: (gst_error_get_message):
4061         * gst/gstparse.h:
4062         * gst/gstquery.h:
4063         * gst/gststructure.c:
4064         * gst/gsttrace.c:
4065         * gst/gstutils.c:
4066         More docs.
4067
4068 2005-10-20  Wim Taymans  <wim@fluendo.com>
4069
4070         * gst/gstbuffer.h:
4071         * gst/gstpad.c:
4072         * gst/gstparse.c:
4073         Another 1% more coverage.
4074
4075 2005-10-20  Wim Taymans  <wim@fluendo.com>
4076
4077         * docs/gst/gstreamer-sections.txt:
4078         * gst/gstelement.c: (gst_element_get_state_func),
4079         (gst_element_abort_state), (gst_element_commit_state),
4080         (gst_element_lost_state):
4081         * gst/gstevent.h:
4082         * gst/gstquery.c: (gst_query_set_position),
4083         (gst_query_parse_position), (gst_query_set_duration),
4084         (gst_query_parse_duration), (gst_query_new_convert):
4085         * gst/gstutils.c:
4086         Yay! 1% more docs coverage.
4087
4088 2005-10-20  Wim Taymans  <wim@fluendo.com>
4089
4090         * gst/gstpad.h:
4091         * gst/gstquery.c: (gst_query_set_position),
4092         (gst_query_parse_position), (gst_query_set_duration),
4093         (gst_query_parse_duration), (gst_query_new_convert):
4094         * gst/gstquery.h:
4095         * gst/gstutils.c: (gst_element_query_convert):
4096         * gst/gstutils.h:
4097         Docs and consistency fixes.
4098
4099 2005-10-20  Wim Taymans  <wim@fluendo.com>
4100
4101         * gst/gsttask.c:
4102         * gst/gsttask.h:
4103         More docs.
4104
4105 2005-10-20  Wim Taymans  <wim@fluendo.com>
4106
4107         * gst/gstbin.c: (message_check), (bin_replace_message),
4108         (bin_remove_messages), (is_eos), (gst_bin_add_func),
4109         (update_degree), (gst_bin_sort_iterator_next),
4110         (gst_bin_change_state_func), (gst_bin_dispose), (bin_bus_handler):
4111         Reworked the message handling a bit, cache the messages instead of
4112         only the senders. alows us to do more in the future.
4113
4114 2005-10-20  Wim Taymans  <wim@fluendo.com>
4115
4116         * docs/design/part-TODO.txt:
4117         Update TODO
4118
4119         * gst/base/gstbasesink.c: (gst_base_sink_get_position),
4120         (gst_base_sink_query):
4121         Don't use clock time to report position when in EOS.
4122
4123 2005-10-20  Tim-Philipp Müller  <tim at centricular dot net>
4124
4125         * tools/gst-inspect.c: (print_interfaces),
4126         (print_element_properties_info), (print_element_info):
4127           Fix interface output with gst-inspect -a; don't print
4128           newlines after double/float properties.
4129
4130 2005-10-20  Wim Taymans  <wim@fluendo.com>
4131
4132         * gst/base/gstbasesink.c: (gst_base_sink_get_position),
4133         (gst_base_sink_query):
4134         Speed up current position calculation.
4135
4136         * gst/base/gstbasesrc.c: (gst_base_src_query),
4137         (gst_base_src_default_newsegment):
4138         Correctly set stream position in newsegment.
4139
4140         * gst/gstbin.c: (gst_bin_add_func), (add_to_queue),
4141         (update_degree), (gst_bin_sort_iterator_next),
4142         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free):
4143         * gst/gstmessage.c: (gst_message_new_custom):
4144         Clean up debugging info
4145
4146         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
4147         (gst_queue_loop), (gst_queue_handle_src_query):
4148         Pause task faster.
4149
4150 2005-10-19  Wim Taymans  <wim@fluendo.com>
4151
4152         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
4153         (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
4154         Fix query handling again.
4155
4156 2005-10-19  Wim Taymans  <wim@fluendo.com>
4157
4158         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
4159         (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
4160         * gst/base/gstbasesrc.c: (gst_base_src_query):
4161         * gst/elements/gstfilesink.c: (gst_file_sink_query):
4162         * gst/elements/gsttypefindelement.c:
4163         (gst_type_find_handle_src_query), (find_element_get_length),
4164         (gst_type_find_element_activate):
4165         API change fix.
4166
4167         * gst/gstquery.c: (gst_query_new_position),
4168         (gst_query_set_position), (gst_query_parse_position),
4169         (gst_query_new_duration), (gst_query_set_duration),
4170         (gst_query_parse_duration), (gst_query_set_segment),
4171         (gst_query_parse_segment):
4172         * gst/gstquery.h:
4173         Bundling query position/duration is not a good idea since duration
4174         does not change much and we don't want to recalculate it for every
4175         position query, so they are separated again..
4176         Base value in segment query is not needed.
4177
4178         * gst/gstqueue.c: (gst_queue_handle_src_query):
4179         * gst/gstutils.c: (gst_element_query_position),
4180         (gst_element_query_duration), (gst_pad_query_position),
4181         (gst_pad_query_duration):
4182         * gst/gstutils.h:
4183         Updates for query API change.
4184         Added some docs here and there.
4185
4186 2005-10-19  Thomas Vander Stichele  <thomas at apestaart dot org>
4187
4188         * check/gst/gstbin.c: (GST_START_TEST):
4189         * check/gst/gstghostpad.c: (GST_START_TEST):
4190         * check/pipelines/cleanup.c: (GST_START_TEST):
4191           wait on thread to die so we can check refcount correctly
4192
4193 2005-10-18  Wim Taymans  <wim@fluendo.com>
4194
4195         * check/pipelines/stress.c: (GST_START_TEST):
4196         Make check a little more time consuming.
4197
4198 2005-10-18  Wim Taymans  <wim@fluendo.com>
4199
4200         * check/Makefile.am:
4201         * check/pipelines/stress.c: (GST_START_TEST),
4202         (simple_launch_lines_suite), (main):
4203         Small state change torture test.
4204
4205         * docs/design/part-states.txt:
4206         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
4207         (gst_base_sink_handle_object), (gst_base_sink_event), (do_playing),
4208         (gst_base_sink_change_state):
4209         Never take state lock from streaming thread, clean up ugly
4210         hacks. Unfortunatly core does not yet support nice ways to
4211         async commit state.
4212         
4213         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_recalc_state),
4214         (bin_bus_handler):
4215         Start state recalc if a STATE_DIRTY message is posted, but only
4216         on the toplevel bin.
4217
4218         * gst/gstelement.c: (gst_element_sync_state_with_parent),
4219         (gst_element_get_state_func), (gst_element_abort_state),
4220         (gst_element_commit_state), (gst_element_lost_state),
4221         (gst_element_set_state_func), (gst_element_change_state):
4222         * gst/gstelement.h:
4223         State variables are now protected with the LOCK, the state
4224         lock is only used to serialize _set_state().
4225
4226 2005-10-18  Wim Taymans  <wim@fluendo.com>
4227
4228         * check/gst/gstbin.c: (GST_START_TEST):
4229         * check/gst/gstmessage.c: (GST_START_TEST):
4230         * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
4231         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_recalc_func),
4232         (bin_bus_handler):
4233         * gst/gstelement.c: (gst_element_abort_state),
4234         (gst_element_commit_state), (gst_element_lost_state):
4235         * gst/gstmessage.c: (gst_message_new_state_changed),
4236         (gst_message_new_state_dirty), (gst_message_new_segment_start),
4237         (gst_message_new_segment_done), (gst_message_new_duration),
4238         (gst_message_parse_state_changed),
4239         (gst_message_parse_segment_start),
4240         (gst_message_parse_segment_done), (gst_message_parse_duration):
4241         * gst/gstmessage.h:
4242         * tools/gst-launch.c: (event_loop):
4243         Seriously, this is better than a previous commit as we only need
4244         to notify the fact that an element changed state in a streaming
4245         thread, marking the state of the parents dirty, hence the 
4246         STATE_DIRTY message instead of abusing a boolean in a STATE_CHANGE
4247         message.
4248
4249 2005-10-18  Wim Taymans  <wim@fluendo.com>
4250
4251         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_get_state_func),
4252         (gst_bin_recalc_func):
4253         * gst/gstelement.c: (gst_element_set_clock),
4254         (gst_element_abort_state), (gst_element_lost_state):
4255         Cleanups, prepare for state change fixes.
4256
4257 2005-10-18  Wim Taymans  <wim@fluendo.com>
4258
4259         * gst/gstbin.h:
4260         * gst/gstelement.c: (gst_element_class_init),
4261         (gst_element_set_state), (gst_element_set_state_func):
4262         * gst/gstelement.h:
4263         Pending ABI changes.
4264         GThreadPool in GstBinClass to monitor async state changes.
4265         state_cookie in GstElement to detect concurrent gst/set state.
4266         set_state is now virtual too in case a very complicated element
4267         has to be constructed.
4268
4269 2005-10-18  Wim Taymans  <wim@fluendo.com>
4270
4271         * check/gst/gstbin.c: (GST_START_TEST):
4272         * check/gst/gstmessage.c: (GST_START_TEST):
4273         * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
4274         * gst/gstbin.c: (bin_bus_handler):
4275         * gst/gstelement.c: (gst_element_commit_state),
4276         (gst_element_lost_state):
4277         * gst/gstmessage.c: (gst_message_new_state_changed),
4278         (gst_message_new_segment_start), (gst_message_new_segment_done),
4279         (gst_message_new_duration), (gst_message_parse_state_changed),
4280         (gst_message_parse_segment_start),
4281         (gst_message_parse_segment_done), (gst_message_parse_duration):
4282         * gst/gstmessage.h:
4283         * tools/gst-launch.c: (event_loop):
4284         Make messages future proof.
4285         state-change gets a flag if it was a message comming from the
4286         streaming thread.
4287         segment-start/stop can also be specified in other formats.
4288         A message to notify an app that a pipeline changed playback 
4289         duration.
4290         Also fix a GstMessage leak in -launch
4291
4292 2005-10-18  Andy Wingo  <wingo@pobox.com>
4293
4294         * gst/gstelement.c (gst_element_dispose): More helpful message.
4295
4296 2005-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>
4297
4298         reviewed by: <delete if not using a buddy>
4299
4300         * common/gtk-doc.mak:
4301
4302 2005-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>
4303
4304         * gst/gstregistry.c: (gst_registry_scan_path_level):
4305           unref a plug-in we get that was already initialized
4306
4307 2005-10-18  Stefan Kost  <ensonic@users.sf.net>
4308
4309         * docs/gst/gstreamer-sections.txt:
4310         * docs/libs/gstreamer-libs-sections.txt:
4311         * gst/gstelement.h:
4312           add new api entries
4313           hide internal macro
4314
4315 2005-10-17  Andy Wingo  <wingo@pobox.com>
4316
4317         * gst/base/gstcollectpads.c (gst_collectpads_chain): Slight
4318         cleanup.
4319
4320         * gst/Makefile.am (gstenumtypes.c): Threadsafe now.
4321
4322         * gst/gstevent.c (gst_event_new, gst_event_finalize): LOG.
4323
4324         * gst/gstelement.c (gst_element_get_state_func): s/INFO/DEBUG/.
4325         (gst_element_get_state_func): Better debug message.
4326         (gst_element_commit_state): s/INFO/DEBUG/.
4327         (gst_element_lost_state, gst_element_change_state): 
4328
4329         * gst/gstmessage.c (gst_message_init): s/INFO/LOG/.
4330         (gst_message_new_custom): s/INFO/LOG/.
4331
4332 2005-10-17  Michael Smith <msmith@fluendo.com>
4333
4334         * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
4335           Check if end time is valid using end time, not start time.
4336
4337 2005-10-17  Stefan Kost  <ensonic@users.sf.net>
4338
4339         * check/gst-libs/controller.c: (GST_START_TEST),
4340         (gst_controller_suite):
4341         * libs/gst/controller/gstcontroller.c:
4342         (gst_controlled_property_set_interpolation_mode):
4343         * libs/gst/controller/gstcontroller.h:
4344         * libs/gst/controller/gstinterpolation.c:
4345         * testsuite/controller/.cvsignore:
4346         * testsuite/controller/Makefile.am:
4347         * testsuite/controller/interpolator.c:
4348           merge controller testsuites
4349           fix broken tests
4350           remove mem-chunk from docs
4351
4352 2005-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4353
4354         * gst/gstmemchunk.c:
4355         * gst/gstmemchunk.h:
4356         * gst/gsttrashstack.c:
4357         * gst/gsttrashstack.h:
4358           out.  get out.  you're fired.  to the Attic !
4359
4360 2005-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4361
4362         * gst/gstcaps.c: (gst_caps_intersect):
4363           fix signedness issues in a (hopefully) correct way
4364         * gst/gstelement.c: (gst_element_pads_activate):
4365           some debugging
4366         * gst/gstobject.c: (gst_object_set_parent):
4367           some debugging
4368
4369 2005-10-17  Julien MOUTTE  <julien@moutte.net>
4370
4371         * gst/gstvalue.h: Fix prototypes.
4372
4373 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4374
4375         * docs/gst/gstreamer-sections.txt:
4376         * gst/gst.c: (gst_version_string):
4377         * gst/gst.h:
4378         * gst/gstversion.h.in:
4379         * win32/common/libgstreamer.def:
4380           add gst_version_string ()
4381
4382 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4383
4384         * configure.ac:
4385           clean up further
4386         * gst/gst.c: (init_post):
4387         * win32/common/config.h.in:
4388           it's PLUGINDIR now
4389         * gst/gstcaps.c: (gst_caps_intersect):
4390           use gint64, the range could be bigger than a guint
4391
4392 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4393
4394         * gst/gstclock.h:
4395           document potential problem in 2038
4396
4397 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4398
4399         * gst/gstcaps.c: (gst_caps_intersect):
4400           Fix guint j diving under 0
4401
4402 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4403
4404         * configure.ac:
4405         * win32/common/config.h:
4406         * win32/common/config.h.in:
4407           check for process.h, declares getpid() on Windows
4408         * gst/gstinfo.c:
4409           include process.h if we have it
4410         * gst/gstmemchunk.c: (populate), (gst_mem_chunk_new):
4411         * gst/gstmemchunk.h:
4412           fix signedness issues
4413         * win32/common/libgstreamer.def:
4414           fix get_type's
4415
4416 2005-10-16  Julien MOUTTE  <julien@moutte.net>
4417
4418         * gst/gstcaps.c: (gst_caps_intersect): Fix a bad bug with a simple
4419         fix. Because of unsigned ints, caps intersection was going nuts and
4420         trying to access structures with G_MAXUINT index. That fixes
4421         videotestsrc ! ffmpegcolorspace ! fakesink
4422         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked): logs
4423         consistency.
4424
4425 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4426
4427         * configure.ac:
4428           use the gettext macro
4429         * gst/elements/gstelements.c:
4430         * gst/gst.c:
4431         * gst/indexers/gstindexers.c:
4432           update for GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN
4433         * win32/common/config.h:
4434           updated config.h
4435         * win32/common/config.h.in:
4436           add the template to generate config.h
4437         * win32/common/gstenumtypes.c:
4438         * win32/common/gstversion.h:
4439           updated copies
4440
4441 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4442
4443         * gst/gst.c: (gst_version):
4444         * gst/gstversion.h.in:
4445           add the nano
4446
4447 2005-10-15  Tim-Philipp Müller  <tim at centricular dot net>
4448
4449         * gst/gstevent.h:
4450           Oops, add missing closing bracket.
4451
4452 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4453
4454         * configure.ac:
4455           use common m4's for argument checking
4456
4457 2005-10-15  Tim-Philipp Müller  <tim at centricular dot net>
4458
4459         * docs/gst/gstreamer-sections.txt:
4460         * gst/gstevent.h:
4461           Add GST_EVENT_TYPE_NAME() macro.
4462
4463 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4464
4465         * gst/gstinfo.c:
4466         * gst/gstpluginfeature.c:
4467         * gst/gsttask.c:
4468           privatize more symbols
4469
4470 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4471
4472         * configure.ac:
4473           add srcdir, builddir includes to GST_ALL_CFLAGS, since
4474           everything that uses GStreamer API should have the includes
4475
4476 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4477
4478         * docs/gst/gstreamer-sections.txt:
4479         * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
4480         * gst/gstvalue.h:
4481           give each value a _get_type, removes the DATA exports
4482
4483 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4484
4485         * gst/gst.c:
4486         * gst/gst.h:
4487           remove _gst_registry_auto_load, not used anymore
4488         * gst/gstbin.c: (gst_bin_get_type):
4489         * gst/gstbin.h:
4490         * gst/gstelement.c: (gst_element_get_type):
4491         * gst/gstelement.h:
4492         * gst/gstobject.c: (gst_object_get_type):
4493         * gst/gstobject.h:
4494         * gst/gstpad.c: (gst_pad_get_type):
4495         * gst/gstpad.h:
4496           make _get_type functions similar, fixes data export from library
4497
4498 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4499
4500         * configure.ac:
4501           correctly make conditionals
4502         * gst/elements/Makefile.am:
4503         * gst/elements/gstelements.c:
4504           fix typo causing fdsrc not to build
4505
4506 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4507
4508         * testsuite/Makefile.am:
4509         * testsuite/bytestream/.cvsignore:
4510         * testsuite/bytestream/Makefile.am:
4511         * testsuite/bytestream/filepadsink.c:
4512         * testsuite/bytestream/gstbstest.c:
4513         * testsuite/bytestream/test1.c:
4514         * testsuite/bytestream/testfile1:
4515         * testsuite/caps/normalisation.c:
4516         * testsuite/caps/random.c: (main):
4517         * testsuite/cleanup/.cvsignore:
4518         * testsuite/cleanup/Makefile.am:
4519         * testsuite/cleanup/cleanup1.c:
4520         * testsuite/cleanup/cleanup2.c:
4521         * testsuite/cleanup/cleanup3.c:
4522         * testsuite/cleanup/cleanup4.c:
4523         * testsuite/cleanup/cleanup5.c:
4524         * testsuite/controller/interpolator.c:
4525         * testsuite/debug/printf_extension.c: (main):
4526         * testsuite/elements/tee.c:
4527         * testsuite/negotiation/.cvsignore:
4528         * testsuite/negotiation/Makefile.am:
4529         * testsuite/negotiation/pad_link.c:
4530         * testsuite/pad/Makefile.am:
4531         * testsuite/pad/chainnopull.c:
4532         * testsuite/pad/getnopush.c:
4533         * testsuite/pad/link.c:
4534         * testsuite/refcounting/sched.c: (create_pipeline):
4535         * testsuite/registry/Makefile.am:
4536         * testsuite/registry/gst-print-formats.c:
4537         * testsuite/schedulers/.cvsignore:
4538         * testsuite/schedulers/142183-2.c:
4539         * testsuite/schedulers/142183.c:
4540         * testsuite/schedulers/143777-2.c:
4541         * testsuite/schedulers/143777.c:
4542         * testsuite/schedulers/147713.c:
4543         * testsuite/schedulers/147819.c:
4544         * testsuite/schedulers/147894-2.c:
4545         * testsuite/schedulers/147894.c:
4546         * testsuite/schedulers/Makefile.am:
4547         * testsuite/schedulers/group_link.c:
4548         * testsuite/schedulers/queue_link.c:
4549         * testsuite/schedulers/relink.c:
4550         * testsuite/schedulers/unlink.c:
4551         * testsuite/schedulers/unref.c:
4552         * testsuite/schedulers/useless_iteration.c:
4553         * testsuite/states/bin.c:
4554           clean out/remove some stuff from the testsuite directories
4555
4556 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4557
4558         * configure.ac:
4559           check for some headers
4560         * gst/elements/Makefile.am:
4561         * gst/elements/gstelements.c:
4562           don't compile fdsrc without sys/socket.h
4563         * gst/indexers/Makefile.am:
4564         * gst/indexers/gstindexers.c: (plugin_init):
4565           don't compile fileindex without mmap
4566
4567 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4568
4569         * configure.ac:
4570           reorganize
4571           clean up
4572           document more
4573           remove cruft
4574         * check/Makefile.am:
4575         * docs/gst/Makefile.am:
4576         * examples/helloworld/Makefile.am:
4577         * gst/Makefile.am:
4578         * gst/base/Makefile.am:
4579         * gst/check/Makefile.am:
4580         * gst/elements/Makefile.am:
4581         * gst/indexers/Makefile.am:
4582         * gst/parse/Makefile.am:
4583         * libs/gst/controller/Makefile.am:
4584         * libs/gst/dataprotocol/Makefile.am:
4585         * examples/helloworld/helloworld.c: (event_loop):
4586           compile fixes, though it's not being compiled currently
4587
4588 2005-10-14  Tim-Philipp Müller  <tim at centricular dot net>
4589
4590         * check/gst/gsttag.c: (test_date_tags), (gst_tag_suite):
4591           Add some simple tests for the new taglist date API.
4592
4593 2005-10-14  Tim-Philipp Müller  <tim at centricular dot net>
4594
4595         * gst/elements/gstfakesink.c: (gst_fake_sink_render):
4596         * gst/elements/gstfakesrc.c: (gst_fake_src_create):
4597           Beautify 'last-message' output: print 'none' for buffer timestamps
4598           and durations if none is set; improve alignment with next messages.
4599
4600 2005-10-14  Tim-Philipp Müller  <tim at centricular dot net>
4601
4602         * gst/gstpluginfeature.c: (gst_plugin_feature_check_version):
4603         * gst/gstpluginfeature.h:
4604         * gst/gstregistry.c: (gst_default_registry_check_feature_version):
4605         * gst/gstregistry.h:
4606         * docs/gst/gstreamer-sections.txt:
4607           Add new API to check plugin feature version requirements.
4608
4609         * check/gst/gstplugin.c: (test_version_checks), (gst_plugin_suite):
4610           Some basic tests for the above.         
4611
4612 2005-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4613
4614         * gst/gststructure.c: (gst_structure_to_string):
4615           guard against NULL printf - happens when for example
4616           a message structure with GstClock gets serialized
4617
4618 2005-10-13  Tim-Philipp Müller  <tim at centricular dot net>
4619
4620         * gst/base/gstcollectpads.c: (gst_collectpads_event):
4621           Fix presumable copy'n'pasto.
4622
4623 2005-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4624
4625         * gst/elements/gstfakesrc.h:
4626         * gst/elements/gstfilesrc.c: (gst_file_src_create_read):
4627         * gst/elements/gsttypefindelement.c:
4628           fix some signedness
4629         * gst/elements/gstfilesink.c: (gst_file_sink_render):
4630           I wonder if this could actually write +2GB files before
4631
4632 2005-10-13  Andy Wingo  <wingo@pobox.com>
4633
4634         * libs/gst/dataprotocol/dataprotocol.c (gst_dp_packet_from_caps):
4635         Fix Timmeke Waymans bug.
4636         (gst_dp_caps_from_packet): Make sure we pass a NUL-terminated
4637         string of the proper length to gst_caps_from_string. There's a
4638         potential for, before this fix, that this could cause someone
4639         connecting over the network to cause a segfault if the payload is
4640         not NUL-terminated.
4641
4642 2005-10-13  Stefan Kost  <ensonic@users.sf.net>
4643
4644         * docs/design/draft-push-pull.txt:
4645         * docs/design/part-overview.txt:
4646         * docs/random/TODO-pre-0.9:
4647         * docs/random/old/ChangeLog.gstreamer:
4648         * gst/base/gstpushsrc.c:
4649         * gst/gstclock.c:
4650           fixed typos
4651
4652 2005-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4653
4654         * gst/glib-compat.c: (gst_flags_get_first_value):
4655         * gst/glib-compat.h:
4656         * gst/gstvalue.c: (gst_value_deserialize_int_helper),
4657         (gst_value_compare_double), (gst_value_serialize_flags):
4658           GLib 2.6 g_flags_get_first_value has a bug that triggers an
4659           infinite loop
4660
4661 2005-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4662
4663         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
4664         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
4665           fix up debugging
4666         * tools/gst-launch.c: (event_loop):
4667           print out clock nicely
4668
4669 2005-10-13  Tim-Philipp Müller  <tim at centricular dot net>
4670
4671         * docs/gst/gstreamer-sections.txt:
4672         * gst/gsttaglist.h:
4673         * gst/gsttaglist.c: (_gst_tag_initialize), (gst_tag_list_get_date),
4674         (gst_tag_list_get_date_index):
4675           Added gst_tag_list_get_date() and gst_tag_list_get_date_index().
4676           GST_TAG_DATE now has a tag type of GST_TYPE_DATE (#170777).
4677
4678 2005-10-13  Julien MOUTTE  <julien@moutte.net>
4679
4680         * gst/base/gstcollectpads.c: (gst_collectpads_event),
4681         (gst_collectpads_chain):
4682         * gst/base/gstcollectpads.h: Handle newsegment and store informations
4683         in CollectData.
4684
4685 2005-10-13  Stefan Kost  <ensonic@users.sf.net>
4686
4687         * docs/gst/gstreamer-sections.txt:
4688         * gst/gst.c:
4689         * gst/gsterror.h:
4690         * tools/gst-inspect.c: (main):
4691         * tools/gst-launch.c: (main):
4692         * tools/gst-run.c: (main):
4693         * tools/gst-xmlinspect.c: (main):
4694           fix GOption context leaks
4695           doc fixes
4696
4697 2005-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4698
4699         * gst/gstbus.c:
4700           use HAVE_UNISTD_H
4701         * win32/common/config.h:
4702           update config
4703         * win32/vs6/grammar.dsp:
4704         * win32/vs6/libgstelements.dsp:
4705         * win32/vs6/libgstreamer.dsp:
4706           update vs6 files
4707
4708 2005-10-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4709
4710         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
4711         * gst/base/gstbasesrc.c: (gst_base_src_query):
4712           fix more guint64<->gdouble conversions
4713
4714 2005-10-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4715
4716         * Makefile.am:
4717           add win32-update target
4718         * win32/common/gstconfig.h:
4719         * win32/common/gstenumtypes.c:
4720         * win32/common/gstenumtypes.h:
4721         * win32/common/gstversion.h:
4722           add files that visual studio can't generate
4723
4724 2005-10-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4725
4726         * Makefile.am:
4727           add a win32-update target
4728         * configure.ac:
4729
4730 2005-10-12  Wim Taymans  <wim@fluendo.com>
4731
4732         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4733         (reset_degree), (gst_bin_dispose), (bin_bus_handler):
4734         * gst/gstelement.c: (gst_element_commit_state),
4735         (gst_element_set_state):
4736         Protect flags with proper lock.
4737         unref provided cached clock in dispose.
4738
4739 2005-10-12  Stefan Kost  <ensonic@users.sf.net>
4740
4741         * gst/gst.c:
4742         * gst/gstminiobject.h:
4743         * gst/gstpad.h:
4744         * win32/gstenumtypes.c: (gst_mini_object_flags_get_type):
4745           removed unused flags from miniobject
4746           doc fixes
4747
4748 2005-10-12  Wim Taymans  <wim@fluendo.com>
4749
4750         * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
4751         (gst_file_sink_event), (gst_file_sink_render):
4752         Flush before seeking.
4753
4754 2005-10-12  Andy Wingo  <wingo@pobox.com>
4755
4756         * gst/gst.c (gst_init_check): Ignore unknown options, as has
4757         always been the case.
4758
4759 2005-10-12  Stefan Kost  <ensonic@users.sf.net>
4760
4761         * check/gst/gstbin.c: (GST_START_TEST):
4762         * docs/gst/gstreamer-sections.txt:
4763         * gst/base/gstbasesink.c: (gst_base_sink_init):
4764         * gst/base/gstbasesrc.c: (gst_base_src_init),
4765         (gst_base_src_get_range), (gst_base_src_check_get_range),
4766         (gst_base_src_start), (gst_base_src_stop):
4767         * gst/base/gstbasesrc.h:
4768         * gst/elements/gstfakesrc.c: (gst_fake_src_set_property):
4769         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4770         (bin_element_is_sink), (reset_degree), (gst_bin_element_set_state),
4771         (bin_bus_handler):
4772         * gst/gstbin.h:
4773         * gst/gstbuffer.h:
4774         * gst/gstbus.c: (gst_bus_post), (gst_bus_set_flushing):
4775         * gst/gstbus.h:
4776         * gst/gstelement.c: (gst_element_is_locked_state),
4777         (gst_element_set_locked_state), (gst_element_commit_state),
4778         (gst_element_set_state):
4779         * gst/gstelement.h:
4780         * gst/gstindex.c: (gst_index_init):
4781         * gst/gstindex.h:
4782         * gst/gstminiobject.h:
4783         * gst/gstobject.c: (gst_object_init), (gst_object_sink),
4784         (gst_object_set_parent):
4785         * gst/gstobject.h:
4786         * gst/gstpad.c: (gst_pad_set_blocked_async), (gst_pad_is_blocked),
4787         (gst_pad_get_caps_unlocked), (gst_pad_set_caps):
4788         * gst/gstpad.h:
4789         * gst/gstpadtemplate.h:
4790         * gst/gstpipeline.c: (gst_pipeline_provide_clock_func),
4791         (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
4792         * gst/gstpipeline.h:
4793         * gst/indexers/gstfileindex.c: (gst_file_index_load),
4794         (gst_file_index_commit):
4795         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4796         * testsuite/pad/link.c: (gst_test_src_init),
4797         (gst_test_filter_init), (gst_test_sink_init):
4798         * testsuite/states/locked.c: (main):
4799           renamed GST_FLAGS macros to GST_OBJECT_FLAGS
4800           moved bitshift from macro to enum definition
4801
4802 2005-10-12  Wim Taymans  <wim@fluendo.com>
4803
4804         * gst/base/gstbasesink.c: (gst_base_sink_handle_buffer):
4805         * gst/elements/gstfilesink.c: (gst_file_sink_event),
4806         (gst_file_sink_render):
4807         Some more debugging info.
4808
4809 2005-10-12  Wim Taymans  <wim@fluendo.com>
4810
4811         * docs/design/part-states.txt:
4812         * tools/gst-launch.c: (main):
4813         Some doc updates.
4814         Revert non-intentional change.
4815
4816 2005-10-12  Wim Taymans  <wim@fluendo.com>
4817
4818         * check/gst/gstbin.c: (GST_START_TEST):
4819         * check/gst/gstelement.c: (GST_START_TEST):
4820         * check/gst/gstevent.c: (GST_START_TEST), (test_event):
4821         * check/gst/gstghostpad.c: (GST_START_TEST):
4822         * check/gst/gstpipeline.c: (GST_START_TEST):
4823         * check/pipelines/simple_launch_lines.c: (run_pipeline):
4824         * check/states/sinks.c: (GST_START_TEST):
4825         * gst/elements/gsttypefindelement.c: (stop_typefinding):
4826         * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
4827         (gst_bin_remove_func), (gst_bin_get_state_func),
4828         (gst_bin_recalc_state), (gst_bin_change_state_func),
4829         (bin_bus_handler):
4830         * gst/gstelement.c: (gst_element_get_state_func),
4831         (gst_element_get_state), (gst_element_abort_state),
4832         (gst_element_commit_state), (gst_element_set_state),
4833         (gst_element_change_state), (gst_element_change_state_func):
4834         * gst/gstelement.h:
4835         * gst/gstpipeline.c: (gst_pipeline_class_init), (do_pipeline_seek),
4836         (gst_pipeline_provide_clock_func):
4837         * gst/gstutils.c: (gst_element_link_pads_filtered):
4838         * tools/gst-launch.c: (main):
4839         * tools/gst-typefind.c: (main):
4840         Use GstClockTime in _get_state() instead of GTimeVal.
4841         Remove old code in gstutils.c
4842
4843 2005-10-12  Andy Wingo  <wingo@pobox.com>
4844
4845         * gst/gstregistry.h (gst_registry_scan_paths): Not implemented, so
4846         removed.
4847
4848         * gst/gstpad.c (gst_pad_pause_task): Actually return FALSE if
4849         there is no task. Shouldn't affect any code, as nothing in our
4850         plugins checks this return value.
4851         (gst_pad_stop_task): Also take the stream lock if the pad has no
4852         task. Docs updated.
4853
4854 2005-10-12  Wim Taymans  <wim@fluendo.com>
4855
4856         * gst/gstpad.c: (pre_activate), (post_activate),
4857         (gst_pad_activate_pull), (gst_pad_activate_push):
4858         Cleanup activation code. Reset old state if
4859         activation failed.
4860
4861 2005-10-12  Wim Taymans  <wim@fluendo.com>
4862
4863         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4864         (gst_base_sink_change_state):
4865         No need to prerol after receiving EOS.
4866
4867         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
4868         * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler):
4869         * gst/elements/gstidentity.c: (gst_identity_event):
4870         Print events more verbosely.
4871
4872 2005-10-12  Wim Taymans  <wim@fluendo.com>
4873
4874         * check/Makefile.am:
4875         * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
4876         * check/states/sinks2.c:
4877         Moved sinks2 testcode in sinks check.
4878
4879         * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
4880         (gst_bin_remove_func), (gst_bin_recalc_state),
4881         (gst_bin_change_state_func), (bin_bus_handler):
4882         Fix potential race condition when _get_state() iterated over an
4883         ASYNC element right before it posted a state completion.
4884
4885         * gst/gstclock.h:
4886         Do proper cast here.
4887
4888         * gst/gstevent.c: (gst_event_new_newsegment),
4889         (gst_event_parse_newsegment):
4890         A playback rate of 0.0 is not allowed.
4891
4892 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4893
4894         * win32/common/config.h:
4895         * win32/common/dirent.c: (_topendir), (_treaddir), (_tclosedir),
4896         (_trewinddir), (_ttelldir), (_tseekdir):
4897         * win32/common/dirent.h:
4898         * win32/common/gtchar.h:
4899         * win32/common/libgstbase.def:
4900         * win32/common/libgstreamer.def:
4901         * win32/vs6/grammar.dsp:
4902         * win32/vs6/gst_inspect.dsp:
4903         * win32/vs6/gst_launch.dsp:
4904         * win32/vs6/gstreamer.dsw:
4905         * win32/vs6/libgstbase.dsp:
4906         * win32/vs6/libgstelements.dsp:
4907         * win32/vs6/libgstreamer.dsp:
4908           Visual Studio 6 project files, and a new common directory.
4909           Phear.
4910
4911 2005-10-11  Wim Taymans  <wim@fluendo.com>
4912
4913         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4914         (gst_base_sink_do_sync), (gst_base_sink_query),
4915         (gst_base_sink_change_state):
4916         * gst/base/gstbasesink.h:
4917         Correctly parse newsegment info.
4918
4919 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4920
4921         * gst/gst.c: (init_post):
4922           split plugin paths correctly
4923
4924 2005-10-11  Wim Taymans  <wim@fluendo.com>
4925
4926         * check/gst/gstevent.c: (GST_START_TEST):
4927         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4928         (gst_base_sink_change_state):
4929         * gst/base/gstbasesrc.c: (gst_base_src_default_newsegment):
4930         * gst/base/gstbasetransform.c: (gst_base_transform_event):
4931         * gst/elements/gstfilesink.c: (gst_file_sink_event):
4932         * gst/gstevent.c: (gst_event_new_newsegment),
4933         (gst_event_parse_newsegment):
4934         * gst/gstevent.h:
4935         Added extra flag to newsegment for future API freeze.
4936         Updated check and base elements.
4937
4938 2005-10-11  Julien MOUTTE  <julien@moutte.net>
4939
4940         * gst/base/gstcollectpads.c: (gst_collectpads_init),
4941         (gst_collectpads_add_pad), (gst_collectpads_pop),
4942         (gst_collectpads_event), (gst_collectpads_chain):
4943         * gst/base/gstcollectpads.h: Handle EOS correctly.
4944
4945 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4946
4947         * tools/gst-launch.c: (main):
4948           more null protecting
4949
4950 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4951
4952         * gst/gst-i18n-lib.h:
4953           check for ENABLE_NLS, not GETTEXT_PACKAGE
4954         * gst/gstregistry.c: (gst_registry_add_plugin),
4955         (gst_registry_scan_path_level),
4956         (_gst_registry_remove_cache_plugins):
4957           protect possibly NULL strings
4958         * gst/parse/types.h:
4959           config.h already included before
4960         * tools/gst-inspect.c: (main):
4961           sys/wait.h also doesn�t exist on mingw, so change the ifdef check
4962           check for ENABLE_NLS, not GETTEXT_PACKAGE
4963         * tools/gst-launch.c: (main):
4964           check for ENABLE_NLS, not GETTEXT_PACKAGE
4965
4966 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4967
4968         * configure.ac:
4969           if we don't have glib, fail before testing 2.8
4970         * gst/base/gstbasetransform.c: (gst_base_transform_change_state):
4971           fix a leak, should fix plugins-base testsuite
4972
4973 2005-10-11  Andy Wingo  <wingo@pobox.com>
4974
4975         * gst/gstpad.c (pre_activate): Renamed from pre_activate_switch,
4976         take the mode we're going to as an arg. Go head and set the mode
4977         and flushing flags now, so that if the activate function starts a
4978         thread all the flags will be in the right state.
4979         (post_activate): Renamed also. Just handle making sure streaming
4980         finishes for the deactivation case, and setting the deactivated
4981         mode.
4982         (gst_pad_set_active): Complain loudly if deactivation fails.
4983         (gst_pad_activate_pull): Adapt to pre/post_activate changes.
4984         (gst_pad_activate_push): Adapt to pre/post_activate changes,
4985         remove the terrible hack.
4986
4987 2005-10-11  Wim Taymans  <wim@fluendo.com>
4988
4989         * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
4990         (is_eos), (gst_bin_add_func), (gst_bin_remove_func),
4991         (gst_bin_recalc_state), (gst_bin_change_state_func),
4992         (gst_bin_dispose), (bin_bus_handler):
4993         * gst/gstbin.h:
4994         Prepare to make current EOS message queue more generic.
4995         Fix some typos.
4996
4997         * gst/gstevent.c: (gst_event_new_newsegment),
4998         (gst_event_parse_newsegment):
4999         * gst/gstevent.h:
5000         Rename base to stream_time.
5001
5002         * gst/gstmessage.h:
5003         Fix typo in docs.
5004
5005 2005-10-11  Wim Taymans  <wim@fluendo.com>
5006
5007         * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
5008         (gst_bin_add_func), (gst_bin_remove_func), (gst_bin_recalc_state),
5009         (gst_bin_change_state_func), (bin_bus_handler):
5010         * gst/gstbin.h:
5011         Work on proper clock selection.
5012
5013 2005-10-11  Edward Hervey  <edward@fluendo.com>
5014
5015         * libs/gst/controller/gstcontroller.c: (gst_controller_remove_properties_list): 
5016         * libs/gst/controller/gstcontroller.h:
5017         Added GList* version of _remove_properties() in order to be able to wrap
5018         it in bindings.
5019
5020 2005-10-11  Wim Taymans  <wim@fluendo.com>
5021
5022         * docs/design/part-states.txt:
5023         Some more docs.
5024
5025         * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_recalc_state),
5026         (gst_bin_change_state_func), (bin_bus_handler):
5027         Doc updates. Don't distribute the same clock over and over again.
5028
5029         * gst/gstclock.c:
5030         * gst/gstclock.h:
5031         Doc updates.
5032
5033         * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark),
5034         (gst_pad_get_type), (gst_pad_push), (gst_pad_push_event),
5035         (gst_pad_send_event):
5036         * gst/gstpad.h:
5037         Make probe emission threadsafe again.
5038         Register quarks and move _get_name() from utils.
5039         Doc updates.
5040
5041         * gst/gstpipeline.c: (gst_pipeline_class_init),
5042         (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
5043         Only redistribute the clock of it changed.
5044
5045         * gst/gstsystemclock.h:
5046         Doc updates. 
5047
5048         * gst/gstutils.c:
5049         * gst/gstutils.h:
5050         Moved the _flow_get_name() to GstPad.
5051
5052 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5053
5054         * check/gst-libs/gdp.c: (GST_START_TEST):
5055         * check/gst/gstcaps.c: (GST_START_TEST):
5056         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
5057         (gst_dp_dump_byte_array), (gst_dp_header_from_buffer),
5058         (gst_dp_packet_from_caps):
5059           fix more valgrind warnings before turning up the heat
5060
5061 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5062
5063         * gst/parse/grammar.y:
5064           some cleanup before the hacking
5065
5066 2005-10-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5067
5068         * gst/base/gstbasesrc.c: (gst_base_src_query):
5069           use conversions
5070         * gst/gstutils.c: (gst_guint64_to_gdouble),
5071         (gst_gdouble_to_guint64), (gst_util_uint64_scale):
5072         * gst/gstutils.h:
5073           externalize, basesrc uses it
5074           obviously the implementation needs testing
5075
5076 2005-10-10  Wim Taymans  <wim@fluendo.com>
5077
5078         * tests/sched/Makefile.am:
5079         * tests/sched/sort.c: (make_pipeline1), (make_pipeline2),
5080         (make_pipeline3), (make_pipeline4), (print_elem), (main):
5081
5082 2005-10-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5083
5084         * gst/gstutils.c: (guint64_to_gdouble), (gst_util_uint64_scale):
5085           apparently converting from guint64 to double is not implemented
5086           on MSVC
5087
5088 2005-10-10  Wim Taymans  <wim@fluendo.com>
5089
5090         * check/Makefile.am:
5091         * check/generic/states.c: (GST_START_TEST):
5092         * check/gst/gstbin.c: (GST_START_TEST):
5093         * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
5094         * check/states/sinks.c: (GST_START_TEST):
5095         * check/states/sinks2.c: (GST_START_TEST), (gst_object_suite),
5096         (main):
5097         Check fixes, use API as stated in design docs, remove hacks.
5098
5099         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
5100         (gst_base_sink_change_state):
5101         Catch stopping our task while we're shutting down.
5102
5103         * gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
5104         (gst_bin_remove_func), (gst_bin_get_state_func),
5105         (gst_bin_recalc_state), (gst_bin_change_state_func),
5106         (bin_bus_handler):
5107         * gst/gstbin.h:
5108         * gst/gstelement.c: (gst_element_init),
5109         (gst_element_get_state_func), (gst_element_abort_state),
5110         (gst_element_commit_state), (gst_element_lost_state),
5111         (gst_element_set_state), (gst_element_change_state),
5112         (gst_element_change_state_func):
5113         * gst/gstelement.h:
5114         New state change algorithm (see #318116)
5115
5116         * gst/gstpipeline.c: (gst_pipeline_class_init),
5117         (gst_pipeline_init), (gst_pipeline_set_property),
5118         (gst_pipeline_get_property), (do_pipeline_seek),
5119         (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
5120         * gst/gstpipeline.h:
5121         Remove crude state change hacks.
5122
5123         * gst/gstutils.h:
5124         Remove crude hacks.
5125
5126         * tools/gst-launch.c: (main):
5127         Fixes for state change. Needs some more work to fully use the
5128         new stuff.
5129
5130 2005-10-10  Andy Wingo  <wingo@pobox.com>
5131
5132         * tests/Makefile.am (noinst_PROGRAMS): No more init.c.
5133
5134         * gst/gst.c (G_OPTION_FLAG_NO_ARG): Apparently GLib 2.8 requires
5135         this flag, but it's not even in GLib 2.6. Odd. Hack around the
5136         issue.
5137
5138 2005-10-10  Tim-Philipp Müller  <tim at centricular dot net>
5139
5140         * gst/gstiterator.c: (gst_iterator_new):
5141           Fix my previous commit: GTypes passed to gst_iterator_new()
5142           can be fundamental types.
5143
5144 2005-10-10  Wim Taymans  <wim@fluendo.com>
5145
5146         * gst/gstelement.c: (gst_element_iterate_pad_list),
5147         (gst_element_iterate_pads), (gst_element_iterate_src_pads),
5148         (gst_element_iterate_sink_pads):
5149         Use src/sink pads lists for the respective iterators instead
5150         of filtering.
5151
5152 2005-10-10  Andy Wingo  <wingo@pobox.com>
5153
5154         Merged in popt removal + GOption addition patch from Ronald, bug
5155         #169772.
5156
5157         * docs/gst/gstreamer-sections.txt: Add STATE_(UN)LOCK_FULL, move
5158         GstElement macros around, remove popt-related symbols, add goption
5159         stuff.
5160
5161         * configure.ac: Remove popt checks, require GLib 2.6 for GOption.
5162         
5163         * docs/gst/Makefile.am:
5164         * docs/libs/Makefile.am: No POPT_CFLAGS.
5165         
5166         * examples/manual/Makefile.am:
5167         * docs/manual/basics-init.xml: Doc updates with an example.
5168         
5169         * gst/gst.c: (gst_init_get_option_group), (gst_init_check),
5170         (gst_init), (parse_one_option), (parse_goption_arg):
5171         * gst/gst.h: Removed gst_init_with_popt_table and friends. Took a
5172         bit of hand merging and debugging to get the GOption stuff working
5173         tho.
5174         
5175         * tests/Makefile.am:
5176         * tools/Makefile.am:
5177         * tools/gst-inspect.c: (main):
5178         * tools/gst-launch.c: (main):
5179         * tools/gst-run.c: (main):
5180         * tools/gst-xmlinspect.c: (main): Thanks Ronald!
5181
5182 2005-10-10  Tim-Philipp Müller  <tim at centricular dot net>
5183
5184         * gst/gstiterator.c: (gst_iterator_new):
5185           Add assertions to make sure passed GType is likely to really
5186           be a GType (as the compiler won't catch it if the size and
5187           GType arguments get mixed up, see #318447).
5188
5189 2005-10-10  Josef Zlomek  <josef dot zlomek at xeris dot cz>
5190
5191         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
5192
5193         * gst/gstbin.c: (gst_bin_iterate_sorted):
5194           Pass GType and size arguments to gst_iterator_new() in the right
5195           order (maybe we should make _new() take the GType as first argument
5196           just like _new_list()?) (#318447).
5197           
5198
5199 2005-10-10  Wim Taymans  <wim@fluendo.com>
5200
5201         * gst/gstelement.c: (gst_element_finalize):
5202         And free the GStaticRecMutex too
5203
5204 2005-10-10  Andy Wingo  <wingo@pobox.com>
5205
5206         * gst/gstelement.c (gst_element_init, gst_element_finalize):
5207         Allocate and free the mutex properly.
5208
5209         * gst/gstelement.h (GST_STATE_UNLOCK_FULL, GST_STATE_LOCK_FULL):
5210         New macros.
5211         (GstElement): The state_lock is now recursive. Rebuild your
5212         plugins, suckers. Old macros adapted.
5213
5214         * docs/gst/gstreamer-sections.txt: Doc updates.
5215
5216         * gst/gstutils.h:
5217         * gst/gstutils.c (g_static_rec_cond_timed_wait) 
5218         (g_static_rec_cond_wait): Ported from state changes patch, while
5219         we wait on bug #317802 to be solved in a well-distributed GLib.
5220
5221         * gst/gstelement.c (gst_element_change_state_func): Renamed from
5222         gst_element_change_state, variable name changes.
5223         (gst_element_change_state): Split out of gst_element_set_state in
5224         preparation for the state change merge. Doesn't pay attention to
5225         the 'transition' argument.
5226         (gst_element_set_state): Updates, hopefully purely cosmetic.
5227         (gst_element_sync_state_with_parent): MT-safety. Ported from the
5228         state change patch.
5229         (gst_element_get_state_func): Renamed from get_state, cosmetic
5230         changes.
5231
5232 2005-10-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5233
5234         * gst/elements/gstelements.c:
5235         * win32/GStreamer.vcproj:
5236         * win32/config.h:
5237         * win32/dirent.c: (_tseekdir):
5238         * win32/gst-inspect.vcproj:
5239         * win32/gst-launch.vcproj:
5240         * win32/gstconfig.h:
5241         * win32/gstelements.vcproj:
5242         * win32/gstenumtypes.c: (gst_object_flags_get_type):
5243         * win32/gstreamer.def:
5244         * win32/msvc71.sln:
5245           updates for the win32 build (patch from Sebastien Moutte)
5246
5247 2005-10-10  Andy Wingo  <wingo@pobox.com>
5248
5249         * gst/gstbin.c (gst_bin_get_state_func): Renamed from
5250         gst_bin_get_state, cleaned up (but no logic changes).
5251         (bin_element_is_sink): Comment updates.
5252         (sink_iterator_filter): Remove needless cast.
5253         (gst_bin_iterate_sinks): Doc update.
5254         (gst_bin_change_state_func): Renamed from gst_bin_change_state,
5255         cleaned up (but no logic changes).
5256
5257         * check/states/sinks.c (test_src_sink): Cleanups from the state
5258         change patch.
5259         (test_livesrc_sink): Sync on the state.
5260
5261         * check/pipelines/simple_launch_lines.c (run_pipeline): Merge from
5262         the state change patch.
5263
5264         * check/gst/gstghostpad.c (test_ghost_pads): Merge from the state
5265         change patch.
5266
5267         * check/gst/gstbin.c: Merge in some style fixes and additional
5268         checks from Wim's state change patch.
5269
5270 2005-10-10  Tim-Philipp Müller  <tim at centricular dot net>
5271
5272         * gst/base/gsttypefindhelper.c: (helper_find_peek),
5273         (gst_type_find_helper):
5274           Check whether we have the requested data already in our list of
5275           cached buffers before pulling a new buffer; also make the buffer
5276           list a GSList. Speeds up typefinding by ca. 5-10% altogether.
5277
5278 2005-10-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5279
5280         * gst/gstcaps.c:
5281         * gst/gstevent.c:
5282           doc updates
5283         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
5284           don't use long long, it's not portable.  Replacing with
5285           gint64 seems to work; let's hope no skeletons fall out of the closet.
5286
5287 2005-10-10  Andy Wingo  <wingo@pobox.com>
5288
5289         * autogen.sh (CONFIGURE_DEF_OPT): No more --plugin-buiddir, yay
5290
5291 2005-10-09  Stefan Kost  <ensonic@users.sf.net>
5292
5293         * docs/gst/gstreamer-sections.txt:
5294         * gst/gstevent.c:
5295         * gst/gstevent.h:
5296         * gst/gstinfo.c:
5297         * gst/gstinfo.h:
5298         * gst/gstmessage.c: (gst_message_parse_state_changed):
5299         * gst/gstpad.c:
5300         * gst/gstpad.h:
5301           more docs, fix compilation
5302
5303 2005-10-09  Philippe Khalaf <burger@speedy.org>
5304         * gst/gstmessage.c:
5305           Fixed a few forgotten variables on previous commit
5306
5307 2005-10-09  Tim-Philipp Müller  <tim at centricular dot net>
5308
5309         * gst/base/gsttypefindhelper.c: (helper_find_peek):
5310           Fix evil typefind crasher: getrange() might return a short
5311           buffer at the end of a file, but gst_type_find_peek() must
5312           either return the full data as requested or NULL, but
5313           never a short buffer.
5314
5315 2005-10-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5316
5317         * gst/gstmessage.c: (gst_message_new_state_changed),
5318         (gst_message_parse_state_changed):
5319         * gst/gstmessage.h:
5320           don't use "new", it's a C++ keyword
5321
5322 2005-10-08  Wim Taymans  <wim@fluendo.com>
5323
5324         * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_query):
5325         * gst/gstelement.c: (gst_element_post_message):
5326         * gst/gstpipeline.c: (gst_pipeline_change_state):
5327         Small docs and debug updates.
5328
5329 2005-10-08  Stefan Kost  <ensonic@users.sf.net>
5330
5331         * docs/gst/gstreamer-sections.txt:
5332         * gst/gstelementfactory.c:
5333         * gst/gstevent.c:
5334         * gst/gsttaglist.c:
5335           more docs
5336
5337 2005-10-08  Wim Taymans  <wim@fluendo.com>
5338
5339         * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_change_state),
5340         (gst_bin_dispose), (bin_bus_handler):
5341         Fix typos, add comments.
5342         Clear EOS list when going to PAUSED from any direction and do it
5343         in a threadsafe way.
5344         Get base time in a threadsafe way too.
5345         Fix confusing debug in the change_state function.
5346         Various other small cleanups.
5347         
5348         * gst/gstelement.c: (gst_element_post_message):
5349         Fix very verbose bus posting code.
5350
5351         * gst/gstpipeline.c: (gst_pipeline_class_init),
5352         (gst_pipeline_set_property), (gst_pipeline_get_property),
5353         (gst_pipeline_change_state):
5354         Small ARG_ -> PROP_ cleanup
5355
5356 2005-10-08  Wim Taymans  <wim@fluendo.com>
5357
5358         * gst/gstbin.c: (is_eos), (bin_bus_handler):
5359         Do a less CPU demanding EOS check because we can.
5360
5361 2005-10-08  Wim Taymans  <wim@fluendo.com>
5362
5363         * libs/gst/dataprotocol/dataprotocol.c:
5364         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
5365         (gst_dp_packet_from_event):
5366         * libs/gst/dataprotocol/dataprotocol.h:
5367         * libs/gst/dataprotocol/dp-private.h:
5368         It's about time we bump the version number.
5369         Since event types don't fit in the guint8 anymore describing
5370         the payload type, make payload type 16 bits wide.
5371
5372 2005-10-08  Wim Taymans  <wim@fluendo.com>
5373
5374         * docs/design/part-TODO.txt:
5375         * docs/design/part-clocks.txt:
5376         * docs/design/part-events.txt:
5377         * docs/design/part-gstbin.txt:
5378         * docs/design/part-gstelement.txt:
5379         * docs/design/part-gstpipeline.txt:
5380         * docs/design/part-live-source.txt:
5381         * docs/design/part-messages.txt:
5382         * docs/design/part-overview.txt:
5383         * docs/design/part-states.txt:
5384         Many doc updates.
5385
5386 2005-10-08  Wim Taymans  <wim@fluendo.com>
5387
5388         * gst/gstevent.c:
5389         * gst/gstevent.h:
5390         Fix event quark registration.
5391         Add some space between events so we can insert them in the
5392         right groups.
5393
5394 2005-10-08  Wim Taymans  <wim@fluendo.com>
5395
5396         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
5397         (gst_base_sink_handle_buffer):
5398         Better log message.
5399
5400         * gst/gstbus.h:
5401         * gst/gstelement.h:
5402         More docs.
5403
5404         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
5405         (gst_queue_set_property), (gst_queue_get_property):
5406         * gst/gstqueue.h:
5407         Remove old unused properties.
5408
5409 2005-10-08  Stefan Kost  <ensonic@users.sf.net>
5410         * docs/gst/gstreamer-sections.txt:
5411         * gst/gstmessage.c:
5412         * gst/gstmessage.h:
5413         * gst/gstminiobject.c:
5414         * gst/gstminiobject.h:
5415         * gst/gstobject.h:
5416         * gst/gstpad.h:
5417         * gst/gstutils.h:
5418           lots of new docs and doc fixes
5419
5420 2005-10-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5421
5422         * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_load_file):
5423         * gst/gstplugin.h:
5424         * gst/gstregistry.c: (gst_registry_lookup_locked),
5425         (gst_registry_scan_path_level):
5426         * gst/gstregistryxml.c: (load_plugin):
5427           Only ever load one plugin for a given plugin basename.
5428           This ensures correct overriding of GST_PLUGIN_PATH over
5429           GST_PLUGIN_SYSTEM_PATH and of home dir plugins over
5430           system installed plugins.
5431
5432 2005-10-08  Wim Taymans  <wim@fluendo.com>
5433
5434         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
5435         (gst_base_sink_do_sync), (gst_base_sink_handle_buffer):
5436         Prepare for doing QOS.
5437
5438 2005-10-08  Wim Taymans  <wim@fluendo.com>
5439
5440         * check/gst/gstbin.c: (GST_START_TEST):
5441         * check/pipelines/cleanup.c: (GST_START_TEST):
5442         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
5443         Allow new clock message too.
5444
5445 2005-10-08  Wim Taymans  <wim@fluendo.com>
5446
5447         * gst/gstmessage.c: (gst_message_new_error),
5448         (gst_message_new_warning), (gst_message_new_tag),
5449         (gst_message_new_state_changed), (gst_message_new_clock_provide),
5450         (gst_message_new_clock_lost), (gst_message_new_new_clock),
5451         (gst_message_new_segment_start), (gst_message_new_segment_done),
5452         (gst_message_parse_state_changed),
5453         (gst_message_parse_clock_provide), (gst_message_parse_clock_lost),
5454         (gst_message_parse_new_clock):
5455         * gst/gstmessage.h:
5456         Also carry the clock in question.
5457
5458 2005-10-08  Wim Taymans  <wim@fluendo.com>
5459
5460         * gst/gstmessage.c: (gst_message_new_custom),
5461         (gst_message_new_eos), (gst_message_new_error),
5462         (gst_message_new_warning), (gst_message_new_tag),
5463         (gst_message_new_state_changed), (gst_message_new_clock_provide),
5464         (gst_message_new_new_clock), (gst_message_new_segment_start),
5465         (gst_message_new_segment_done), (gst_message_parse_state_changed),
5466         (gst_message_parse_clock_provide), (gst_message_parse_new_clock):
5467         * gst/gstmessage.h:
5468         Clean up.
5469         Added clock related messages.
5470
5471         * gst/gstpipeline.c: (gst_pipeline_change_state):
5472         Post message when the clock changed.
5473
5474         * tools/gst-launch.c: (event_loop):
5475         Print new clock.
5476
5477 2005-10-08  Tim-Philipp Müller  <tim at centricular dot net>
5478
5479         * tools/gst-inspect.c: (print_element_properties_info):
5480           Can't pass NULL strings to g_print() on windows.
5481
5482 2005-10-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5483
5484         * docs/Makefile.am:
5485         * docs/gst/Makefile.am:
5486         * docs/gst/gstreamer-docs.sgml:
5487         * docs/gst/running.xml:
5488         * docs/version.entities.in:
5489           add a chapter on running GStreamer.
5490           document GST_DEBUG and GST_PLUGIN* env vars
5491
5492 2005-10-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5493
5494         * Makefile.am:
5495           remove include dir
5496         * configure.ac:
5497           remove PLUGINS_BUILDDIR stuff
5498         * gst/gst.c: (init_post):
5499           reorder parsing of GST_PLUGIN_PATH and GST_PLUGIN_SYSTEM_PATH
5500         * idiottest.mak:
5501           remove, it was condescending and not needed
5502
5503 2005-10-08  Wim Taymans  <wim@fluendo.com>
5504
5505         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_flush),
5506         (gst_base_sink_handle_object), (gst_base_sink_event),
5507         (gst_base_sink_wait), (gst_base_sink_handle_event),
5508         (gst_base_sink_change_state):
5509         * gst/base/gstbasesink.h:
5510         Repost EOS message while going to PLAYING if still EOS.
5511         Make sure that when receiving a FLUSH_START we don't attempt
5512         to sync on the clock anymore.
5513
5514 2005-10-08  Wim Taymans  <wim@fluendo.com>
5515
5516         * tools/gst-launch.c: (event_loop):
5517         Better message printout.
5518
5519 2005-10-08  Wim Taymans  <wim@fluendo.com>
5520
5521         * gst/gstbin.c: (gst_bin_child_proxy_get_child_by_index),
5522         (gst_bin_child_proxy_get_children_count):
5523         * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
5524         (gst_child_proxy_lookup), (gst_child_proxy_get_property),
5525         (gst_child_proxy_get_valist), (gst_child_proxy_set_property),
5526         (gst_child_proxy_set_valist):
5527         * gst/parse/grammar.y:
5528         Make ChildProxy threadsafe and fix mem leaks.
5529
5530 2005-10-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5531
5532         * gst/gst.c: (init_post):
5533           debug the GST_PLUGIN_ env vars
5534
5535 2005-10-08  Wim Taymans  <wim@fluendo.com>
5536
5537         * check/gst/gstbin.c: (GST_START_TEST):
5538         * check/gst/gstmessage.c: (GST_START_TEST):
5539         * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
5540         * gst/gstelement.c: (gst_element_commit_state),
5541         (gst_element_lost_state):
5542         * gst/gstmessage.c: (gst_message_new_state_changed),
5543         (gst_message_parse_state_changed):
5544         * gst/gstmessage.h:
5545         * tools/gst-launch.c: (event_loop):
5546         Added extra field to STATE_CHANGE message with the pending
5547         state, which will be different from the new state soon.
5548
5549 2005-10-08  Wim Taymans  <wim@fluendo.com>
5550
5551         * gst/gstbus.c: (gst_bus_pop):
5552         * gst/gstclock.c:
5553         * gst/gstsystemclock.c: (gst_system_clock_async_thread):
5554         Small cleanups and doc updates.
5555
5556 2005-10-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5557
5558         * gst/gst.c: (init_pre):
5559         * gst/gstbin.c: (gst_bin_add_func):
5560           log distributing clocks and base time
5561         * gst/gstregistry.c: (gst_registry_add_plugin),
5562         (gst_registry_scan_path_level), (gst_registry_scan_path):
5563           clean up the debugging output a little
5564         * gst/gstutils.c: (gst_element_state_get_name):
5565           warn about a memleak (I've actually seen this be used, though
5566           it was probably a bug)
5567
5568 2005-10-07  Wim Taymans  <wim@fluendo.com>
5569
5570         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
5571         (gst_base_src_init), (gst_base_src_default_newsegment),
5572         (gst_base_src_newsegment), (gst_base_src_do_seek),
5573         (gst_base_src_loop), (gst_base_src_start):
5574         * gst/base/gstbasesrc.h:
5575         Make the newsegment event customizable by subclasses.
5576
5577 2005-10-07  Wim Taymans  <wim@fluendo.com>
5578
5579         * gst/gstevent.c: (gst_event_new_buffersize),
5580         (gst_event_parse_buffersize):
5581         * gst/gstevent.h:
5582         New event for future idea.
5583
5584 2005-10-07  Andy Wingo  <wingo@pobox.com>
5585
5586         * gst/gstelement.c (gst_element_post_message): Doc update.
5587
5588         * docs/gst/gstreamer-sections.txt: Update.
5589
5590         * gst/gstmessage.c (gst_message_new_application): Made into a
5591         function like honest API calls.
5592         (gst_message_new_element): New message type.
5593
5594         * gst/gstmessage.h (enum): Add GST_MESSAGE_ELEMENT type.
5595
5596         * check/elements/fakesrc.c (test_no_preroll): New check, checks
5597         that setting a live fakesrc to PAUSED returns NO_PREROLL both
5598         times.
5599
5600         * gst/base/gstbasesrc.c (gst_base_src_change_state): Allow a
5601         NO_PREROLL from gst_element_change_state to fall through.
5602
5603 2005-10-07  Wim Taymans  <wim@fluendo.com>
5604
5605         * gst/gstghostpad.c: (gst_ghost_pad_get_internal),
5606         (gst_ghost_pad_do_activate_push):
5607         Activating a ghostpad with no internal pad in push mode
5608         is ok.
5609
5610 2005-10-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5611
5612         * gst/gstobject.h:
5613           there's no point in wrapping FLAG_SET/_UNSET in STMT macros.
5614           Fixes compilation on Windows.
5615
5616 2005-10-07  Michael Smith <msmith@fluendo.com>
5617
5618         * tools/gst-inspect.c:
5619           Print out feature and plugin count at the end when printing out
5620           all features.
5621
5622 2005-10-04  Michael Smith <msmith@fluendo.com>
5623
5624         * gst/gsterror.c: (_gst_stream_errors_init):
5625           Add another error string used in a few existing plugins.
5626
5627         * gst/gstplugin.c:
5628         * gst/gstpluginfeature.c: (gst_plugin_feature_load):
5629         * tools/gst-inspect.c: (print_element_info):
5630           When a feature disappears from a plugin (and the feature exists in
5631           the cached registry file), things went horribly wrong. This isn't a
5632           complete fix, we should actually be removing the 'missing' features
5633           from the features list when we load the actual plugin. That's not
5634           yet implemented. 
5635
5636 2005-10-04  Johan Dahlin  <johan@gnome.org>
5637
5638         * check/gst/gstiterator.c: (GST_START_TEST):
5639         * gst/gstbin.c: (gst_bin_iterate_elements),
5640         (gst_bin_iterate_recurse), (gst_bin_iterate_sorted):
5641         * gst/gstelement.c: (gst_element_iterate_pads):
5642         * gst/gstformat.c: (gst_format_iterate_definitions):
5643         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
5644         (gst_iterator_new_list), (gst_iterator_filter):
5645         * gst/gstiterator.h:
5646         * gst/gstquery.c: (gst_query_type_iterate_definitions):
5647         Add a GType to GstIterator, update callsites and tests.
5648
5649 2005-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5650
5651         * gst/gstpad.c: (gst_pad_event_default_dispatch):
5652           give events a chance to be handled by event probes when the pad
5653           is not linked
5654
5655 2005-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5656
5657         * gst/gstevent.c: (gst_event_type_get_name),
5658         (gst_event_type_to_quark), (gst_event_finalize), (gst_event_new):
5659         * gst/gstevent.h:
5660           add string representations for event types
5661
5662 2005-10-06  Wim Taymans  <wim@fluendo.com>
5663
5664         * gst/elements/gstfilesink.c: (gst_file_sink_close_file):
5665         Don't use NULL pointers.
5666
5667 2005-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5668
5669         * gst/gst_private.h:
5670         * gst/gstbus.c:
5671         * gst/gstelement.c:
5672         * gst/gstinfo.c:
5673         * gst/gstpluginfeature.c:
5674           widen the debug category in output to fit the biggest one we have
5675           add a bus category and use it
5676           play with the colors
5677           fix up some categories
5678
5679 2005-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5680
5681         * gst/gstghostpad.c: (gst_ghost_pad_internal_do_activate_push):
5682           add push activation of sink ghost pads.
5683           Andye, please verify
5684
5685 2005-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5686
5687         * gst/gstutils.c: (gst_element_link_pads):
5688           fix a bug in the case where neither element has a pad
5689         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
5690           add a test for that case
5691
5692 2005-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5693
5694         * gst/gstpad.c: (gst_pad_push), (gst_pad_push_event):
5695           emit have-data before checking for peers.  This allows
5696           for probe handlers to connect elements.  This helps autopluggers.
5697         * check/gst/gstpad.c: (GST_START_TEST), (_probe_handler),
5698         (gst_pad_suite):
5699           add six checks, linked/unlinked with no/true/false probe
5700
5701 2005-10-04  Wim Taymans  <wim@fluendo.com>
5702
5703         * gst/elements/gstfakesink.c: (gst_fake_sink_get_property),
5704         (gst_fake_sink_event), (gst_fake_sink_preroll),
5705         (gst_fake_sink_render), (gst_fake_sink_change_state):
5706         * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler),
5707         (gst_fake_src_get_property), (gst_fake_src_create),
5708         (gst_fake_src_stop):
5709         * gst/elements/gstidentity.c: (gst_identity_stop):
5710         Protect last_message with lock.
5711
5712 2005-10-04  Edward Hervey  <edward@fluendo.com>
5713
5714         * gst/gstformat.h: 
5715         Added precision in the comments for GST_FORMAT_DEFAULT
5716
5717 2005-10-04  Tim-Philipp Müller  <tim at centricular dot net>
5718
5719         * tools/gst-launch.c: (main):
5720           Don't try to run erroneous pipelines.
5721
5722 2005-10-04  Julien MOUTTE  <julien@moutte.net>
5723
5724         * gst/gstbus.c: We don't need this header.
5725
5726 2005-10-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5727
5728         * configure.ac:
5729           back to development
5730
5731 === release 0.9.3 ===
5732
5733 2005-10-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5734
5735         * README:
5736         * configure.ac:
5737           Releasing 0.9.3, "Unregistered"
5738
5739 2005-10-03  Andy Wingo  <wingo@pobox.com>
5740
5741         * gst/gstpad.c (gst_pad_activate_push): There is a race condition
5742         whereby calling a pad's activatepush() function can start a thread
5743         that starts to push or pull before the pad gets the FLUSHING flag
5744         unset. Hack around it by holding the stream lock until the flag is
5745         set. Need to replace this with a proper solution. Together with
5746         the ghost pad fixes, this fixes mp3 playing/tagreading.
5747
5748         * docs/design/part-gstghostpad.txt: Add a note about activation of
5749         proxy pads outside of ghost pads.
5750
5751         * gst/gstghostpad.c: Implement the ghost pad activation design.
5752
5753 2005-10-02  Andy Wingo  <wingo@pobox.com>
5754
5755         * gst/gstobject.h (GST_OBJECT_REFCOUNT_VALUE): Just use the int.
5756         It is volatile, after all.
5757
5758         * docs/design/part-gstghostpad.txt: Flesh out activation with
5759         ghost pads.
5760
5761         * gst/base/gstbasesrc.c (gst_base_src_init): Use
5762         GST_DEBUG_FUNCPTR.
5763
5764 2005-10-02  Tim-Philipp Müller  <tim at centricular dot net>
5765
5766         * configure.ac:
5767           Fix (unused) AM_CONDITIONAL tests.
5768
5769 2005-10-01  Alessandro Decina  <alessandro at nnva dot org>
5770
5771         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
5772
5773         * gst/gstutils.c: (gst_pad_query_convert):
5774           Add assertion that makes sure src_val is >=0, just like
5775           gst_query_new_convert() has. (#315895)
5776
5777 2005-09-30  Edward Hervey  <edward@fluendo.com>
5778
5779         * gst/elements/gsttee.c: (gst_tee_do_push), (gst_tee_handle_buffer):
5780         Let's not iterate pads we're not interested in, it avoids getting 
5781         sky-high refcounts on sinkpad.
5782
5783 2005-09-30  Wim Taymans  <wim@fluendo.com>
5784
5785         * gst/gstelement.c: (gst_element_set_state),
5786         (gst_element_change_state):
5787         Small tweak, element in ASYNC remains ASYNC.
5788
5789 2005-09-30  Wim Taymans  <wim@fluendo.com>
5790
5791         * gst/base/gstbasesink.c: (gst_base_sink_change_state):
5792         Only error is an error.
5793
5794         * gst/gstbin.c: (gst_bin_change_state):
5795         Better debugging.
5796
5797         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_chain):
5798         Also call pad_block in pad alloc.
5799
5800         * gst/gstutils.c: (gst_flow_get_name):
5801         Better debugging.
5802
5803 2005-09-29  Tim-Philipp Müller  <tim at centricular dot net>
5804
5805         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
5806         (gst_base_src_get_range):
5807           Fix documentation typos. Add some more debug info.
5808
5809 2005-09-29  David Schleef  <ds@schleef.org>
5810
5811         * gst/gstplugin.c: (gst_plugin_load_file): Make some error messages
5812           more end-user friendly.
5813         * tools/gst-inspect.c: (main): Check if command-line argument is
5814           a file and attempt to load that file as a plugin.
5815
5816 2005-09-29  Thomas Vander Stichele  <thomas at apestaart dot org>
5817
5818         * check/gst/gstbin.c:
5819         * check/states/sinks.c:
5820           fix tests for the new warning
5821         * check/gst/gstpipeline.c:
5822           add a test for pipeline and bus interaction
5823         * gst/gstelement.c:
5824           elements should be NULL if they get disposed; add a warning if not
5825
5826 2005-09-29  Thomas Vander Stichele  <thomas at apestaart dot org>
5827
5828         * gst/gstobject.c:
5829           for 2.6 refcounting, make debug log more correct by printing
5830           the actual refcounts at the time of swap (Wim)
5831
5832 2005-09-29  Andy Wingo  <wingo@pobox.com>
5833
5834         * gst/gstbus.c (gst_bus_remove_signal_watch): New function,
5835         removes signal watches previously added via
5836         gst_bus_add_signal_watch.
5837         (gst_bus_add_signal_watch): Don't return the source id, just store
5838         it on the bus if there wasn't an id already.
5839
5840         * gst/gstbus.h (GstBus): Add a couple new fields. API changes for
5841         add_signal_watch and remove_signal_watch.
5842
5843 2005-09-29  Edward Hervey  <edward@fluendo.com>
5844
5845         * libs/gst/controller/gstcontroller.c: (gst_controller_new_list): 
5846         Better if we actually iterate the list :)
5847
5848 2005-09-29  Wim Taymans  <wim@fluendo.com>
5849
5850         * check/gst/gstbin.c: (GST_START_TEST):
5851         Change for new bus API.
5852
5853         * check/gst/gstbus.c: (message_func_eos), (message_func_app),
5854         (send_messages), (GST_START_TEST), (gstbus_suite):
5855         Change for new bus signal API.
5856
5857         * gst/gstbus.c: (gst_bus_class_init), (gst_bus_have_pending),
5858         (gst_bus_source_prepare), (gst_bus_source_check),
5859         (gst_bus_create_watch), (gst_bus_add_watch_full),
5860         (gst_bus_add_watch), (gst_bus_poll), (gst_bus_async_signal_func),
5861         (gst_bus_sync_signal_handler), (gst_bus_add_signal_watch):
5862         * gst/gstbus.h:
5863         Remove support for multiple GSources operating on different
5864         message types as it is too complex and unneeded when using
5865         signals.
5866         Added support for receiving signals from the bus.
5867
5868 2005-09-29  Thomas Vander Stichele  <thomas at apestaart dot org>
5869
5870         * docs/libs/tmpl/gstdataprotocol.sgml:
5871         * docs/manual/advanced-dataaccess.xml:
5872         * gst/elements/gstcapsfilter.c:
5873         * gst/gstutils.c:
5874           rename filter-caps to caps property
5875
5876 2005-09-29  Tim-Philipp Müller  <tim at centricular dot net>
5877
5878         * gst/gstvalue.c: (gst_value_deserialize_fraction):
5879           More robust fraction string parsing.
5880
5881         * docs/pwg/appendix-porting.xml:
5882           Mention gst_pad_use_explicit_caps() => gst_pad_use_fixed_caps()
5883
5884 2005-09-29  Tim-Philipp Müller  <tim at centricular dot net>
5885
5886         * gst/gstcaps.c: (gst_caps_do_simplify):
5887           Thou shalt not free a structure and then continue using it
5888           in the next loop iteration.
5889
5890         * check/gst/gstcaps.c: (check_fourcc_list), (test_simplify),
5891         (gst_caps_suite):
5892           Add test case for caps simplification.
5893
5894 2005-09-29  Wim Taymans  <wim@fluendo.com>
5895
5896         * check/gst/gstbin.c: (GST_START_TEST):
5897         Oops.
5898
5899 2005-09-29  Wim Taymans  <wim@fluendo.com>
5900
5901         * check/gst/gstbin.c: (GST_START_TEST):
5902         Add bus to bin.
5903
5904         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
5905         (add_to_queue), (clear_queue), (reset_degree), (update_degree),
5906         (find_element), (gst_bin_sort_iterator_next),
5907         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
5908         (gst_bin_iterate_sorted), (gst_bin_element_set_state),
5909         (gst_bin_change_state), (gst_bin_dispose):
5910         A bin does not have a bus, it gets the bus from the parent.
5911
5912         * gst/gstelement.c: (gst_element_requires_clock),
5913         (gst_element_provides_clock), (gst_element_is_indexable),
5914         (gst_element_is_locked_state), (gst_element_change_state),
5915         (gst_element_set_bus_func):
5916         Small cleanups.
5917
5918         * gst/gstpipeline.c: (gst_pipeline_class_init),
5919         (gst_pipeline_init), (gst_pipeline_provide_clock_func):
5920         The pipeline provides a bus.
5921
5922 2005-09-28  Johan Dahlin  <johan@gnome.org>
5923
5924         * gst/gstmessage.c (gst_message_parse_state_changed): Use
5925         gst_structure_get_enum instead of gst_structure_get_int
5926
5927         * gst/gststructure.c (gst_structure_get_enum): Impl.
5928
5929         * gst/gststructure.h (gst_structure_get_enum): Add
5930
5931         * docs/gst/gstreamer-sections.txt: Ditto
5932
5933         * gst/gstmessage.c (gst_message_new_state_changed): Use
5934         GST_TYPE_STATE instead of G_TYPE_INT, mainly for language bindings
5935         which does introspection.
5936         Reviewed by Christian Schaller
5937
5938 2005-09-28  Stefan Kost  <ensonic@users.sf.net>
5939
5940         * gst/gstinfo.c: (gst_debug_log_default):
5941           don't do dummy g_strdup()s
5942         * libs/gst/controller/gstcontroller.c:
5943         (on_object_controlled_property_changed),
5944         (gst_controlled_property_new), (gst_controller_new_valist),
5945         (gst_controller_new_list),
5946         (gst_controller_remove_properties_valist), (gst_controller_set),
5947         (gst_controller_get), (gst_controller_sync_values),
5948         (gst_controller_get_value_array), (_gst_controller_class_init),
5949         (gst_controller_get_type):
5950         * libs/gst/controller/gstcontroller.h:
5951         * libs/gst/controller/gstinterpolation.c:
5952         (gst_controlled_property_find_timed_value_node):
5953           convert // to /**/ comments
5954
5955 2005-09-28  Wim Taymans  <wim@fluendo.com>
5956
5957         * gst/gstbus.c: (marshal_VOID__MINIOBJECT), (gst_bus_class_init),
5958         (gst_bus_post), (poll_func), (gst_bus_async_signal_func),
5959         (gst_bus_sync_signal_handler):
5960         * gst/gstbus.h:
5961         Added async-message and sync-message signals to the bus.
5962         Added helper BusFunc to emit signals for all posted messages.
5963
5964         * gst/gstmessage.c: (gst_message_type_get_name),
5965         (gst_message_type_to_quark), (gst_message_get_type):
5966         * gst/gstmessage.h:
5967         Register quarks for message names.
5968
5969 2005-09-28  Stefan Kost  <ensonic@users.sf.net>
5970
5971         * docs/libs/gstreamer-libs-sections.txt:
5972         * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
5973         (gst_controller_new_list):
5974         * libs/gst/controller/gstcontroller.h:
5975           added another constructor for language bindings
5976
5977 2005-09-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5978
5979         * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
5980           add another check
5981         * gst/gstbus.c:
5982           add some doc
5983         * gst/gstinfo.c: (_gst_debug_init):
5984           slightly more readable color for refcount debugging
5985
5986 2005-09-28  Wim Taymans  <wim@fluendo.com>
5987
5988         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
5989         (add_to_queue), (clear_queue), (reset_degree), (update_degree),
5990         (find_element), (gst_bin_sort_iterator_next),
5991         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
5992         (gst_bin_iterate_sorted), (gst_bin_element_set_state),
5993         (gst_bin_change_state), (gst_bin_dispose):
5994         Small doc fixes. get_clock -> provide_clock.
5995
5996         * gst/gstelement.c: (gst_element_class_init),
5997         (gst_element_provides_clock), (gst_element_provide_clock),
5998         (gst_element_get_clock), (gst_element_commit_state),
5999         (gst_element_lost_state):
6000         * gst/gstelement.h:
6001         Make get/set_clock() symetric. Add provide_clock vmethod since
6002         that is actually what this function does.
6003
6004         * gst/gstpipeline.c: (gst_pipeline_class_init),
6005         (gst_pipeline_change_state), (gst_pipeline_provide_clock_func),
6006         (gst_pipeline_get_clock):
6007         get_clock -> provide_clock.
6008
6009 2005-09-28  Andy Wingo  <wingo@pobox.com>
6010
6011         * gst/base/gstbasesrc.c (gst_base_src_unlock): Comment a bit in
6012         lieu of real docs...
6013
6014         * gst/elements/gstfdsrc.c: Cleaned up a bit.
6015
6016 2005-09-28  Tim-Philipp Müller  <tim at centricular dot net>
6017
6018         * gst/elements/gstcapsfilter.c:
6019         * gst/elements/gstfakesink.c:
6020         * gst/elements/gstfakesrc.c:
6021         * gst/elements/gstfdsink.c:
6022         * gst/elements/gstfdsrc.c:
6023         * gst/elements/gstfilesink.c:
6024         * gst/elements/gstfilesrc.c:
6025         * gst/elements/gstidentity.c:
6026         * gst/elements/gsttee.c:
6027         * gst/elements/gsttypefindelement.c:
6028           Make element details static.
6029
6030 2005-09-28  Wim Taymans  <wim@fluendo.com>
6031
6032         * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
6033         (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
6034         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
6035         (gst_bin_iterate_sorted), (gst_bin_element_set_state),
6036         (gst_bin_change_state), (gst_bin_dispose):
6037         Some documentation updates.
6038         Clean up dispose handlers.
6039
6040         * gst/gstobject.c: (gst_object_ref), (gst_object_unref):
6041         * gst/gstpad.c: (gst_pad_dispose):
6042         Clean up dispose handler.
6043
6044         * gst/gstpipeline.c: (gst_pipeline_change_state):
6045         Removed spurious UNLOCK.
6046
6047 2005-09-27  Stefan Kost  <ensonic@users.sf.net>
6048
6049         * docs/gst/gstreamer-sections.txt:
6050         * gst/base/gstbasesrc.h:
6051         * gst/gstelement.h:
6052         * gst/gstevent.h:
6053         * gst/gstobject.h:
6054         * gst/gstpad.h:
6055         * gst/gstpipeline.c:
6056         * gst/gstpipeline.h:
6057         * gst/gstutils.h:
6058         * gst/gstxml.h:
6059           added two new functions to the docs
6060                 documents all undocumented GstXXXFlags
6061                 completed some incomplete docs 
6062
6063 2005-09-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6064
6065         * gst/gstbin.c: (gst_bin_dispose):
6066         * gst/gstelement.c: (gst_element_dispose):
6067           remove now useless and leaky resurrection code in dispose
6068         * gst/base/gstbasesrc.c: (gst_base_src_init):
6069         * gst/gstelementfactory.c: (gst_element_factory_create):
6070         * gst/gstobject.c: (gst_object_set_parent):
6071           add some debugging
6072
6073 2005-09-27  Wim Taymans  <wim@fluendo.com>
6074
6075         * docs/design/part-TODO.txt:
6076         Update TODO.
6077
6078         * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
6079         (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
6080         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
6081         (gst_bin_iterate_sorted), (gst_bin_element_set_state),
6082         (gst_bin_change_state):
6083         * gst/gstelement.h:
6084         Remove element variable, we keep element info in the iterator now.
6085
6086 2005-09-27  Andy Wingo  <wingo@pobox.com>
6087
6088         * libs/gst/dataprotocol/dataprotocol.c: Fix error-checking return
6089         values.
6090
6091 2005-09-27  Wim Taymans  <wim@fluendo.com>
6092
6093         * check/gst/gstbin.c: (GST_START_TEST):
6094         Enable check that works now.
6095
6096         * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
6097         (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
6098         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
6099         (gst_bin_iterate_sorted), (gst_bin_element_set_state),
6100         (gst_bin_change_state):
6101         * gst/gstbin.h:
6102         Redid the state change algorithm using a topological sort algo.
6103         Handles all cases correctly.
6104         Exposed iterator for state change order.
6105
6106         * gst/gstelement.h:
6107         Temp storage for state changes. Need to get rid of this soon.
6108
6109 2005-09-27  Wim Taymans  <wim@fluendo.com>
6110
6111         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_do_push):
6112         * gst/gstutils.c: (intersect_caps_func), (gst_pad_proxy_getcaps),
6113         (link_fold_func), (gst_pad_proxy_setcaps):
6114         Leak fixes, the fold functions need to unref the passed object and
6115         _get_parent_*() returns ref to parent.
6116
6117 2005-09-27  Tim-Philipp Müller  <tim at centricular dot net>
6118
6119         * check/gst/gstbuffer.c: (test_make_writable):
6120           Plug leak in test case and fix 'make check-valgrind'
6121
6122 2005-09-27  Tim-Philipp Müller  <tim at centricular dot net>
6123
6124         * gst/gstbuffer.c: (gst_subbuffer_init):
6125           Set READONLY flag on subbuffers, so that gst_buffer_make_writable()
6126           works correctly in all circumstances (we could have just copied
6127           the parent buffer's readonly flag, but conceptually it seems
6128           cleaner to mark all subbuffers as read-only). (based on patch
6129           by Alessandro Decina, #314710).
6130         
6131         * check/gst/gstbuffer.c: (create_read_only_buffer),
6132         (test_make_writable), (test_subbuffer_make_writable),
6133         (gst_test_suite):
6134           Add some tests for gst_buffer_make_writable().
6135
6136 2005-09-27  Wim Taymans  <wim@fluendo.com>
6137
6138         * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_change_state):
6139         use gst_object_has_ancestor().
6140
6141         * gst/gstobject.c: (gst_object_has_ancestor):
6142         * gst/gstobject.h:
6143         gst_object_has_ancestor() copied from gstbin.c as it is a
6144         usefull function.
6145
6146         * tests/instantiate/create.c: (create_all_elements):
6147         * tests/lat.c: (handoff_src), (handoff_sink):
6148         * tests/sched/runxml.c: (main):
6149         * tests/seeking/seeking1.c: (main):
6150         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
6151         (main):
6152         Fix compilation of some tests.
6153
6154 2005-09-27  Tim-Philipp Müller  <tim at centricular dot net>
6155
6156         * gst/gsterror.h:
6157           Remove comment. GST_TYPE_G_ERROR is here to stay,
6158           G_TYPE_ERROR has been WONTFIX'ed by the GLib folks
6159           (#316961, #300610).
6160
6161 2005-09-26  Wim Taymans  <wim@fluendo.com>
6162
6163         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
6164         Added check that shows error in state change order.
6165
6166 2005-09-26  Wim Taymans  <wim@fluendo.com>
6167
6168         * gst/gstbin.c: (gst_bin_change_state):
6169         Make state change function use 3 queues again, we were
6170         adding elements in the wrong order.
6171
6172         * gst/gstghostpad.c: (gst_ghost_pad_do_unlink):
6173         Some debug info,
6174
6175         * gst/gstpad.c: (gst_pad_dispose):
6176         Added some debug info first.
6177
6178 2005-09-26  Tim-Philipp Müller  <tim at centricular dot net>
6179
6180         * docs/design/draft-push-pull.txt:
6181         * docs/design/part-events.txt:
6182         * docs/design/part-overview.txt:
6183         * docs/design/part-scheduling.txt:
6184           Replace all _pull_region() with _pull_range()
6185           
6186 2005-09-26  Andy Wingo  <wingo@pobox.com>
6187
6188         * gst/gstvalue.c (_gst_value_initialize): Better fakeout.
6189
6190         * check/gst-libs/controller.c: Update for controller api change.
6191
6192         * configure.ac: 
6193         * tests/Makefile.am:
6194         * tests/memchunk: Remove memchunk benchmark stuff, this is taken
6195         over by GLib bug 118439.
6196         
6197         * gst/base/gstbasesink.c (gst_base_sink_wait): Factor out the wait
6198         routines to a function.
6199
6200         * docs/libs/gstreamer-libs-sections.txt: I am a good person today.
6201
6202         * libs/gst/controller/gsthelper.c:
6203         * libs/gst/controller/gstcontroller.h (gst_controller_sync_values)
6204         (gst_object_sync_values): Renamed from sink_values. Ugh.
6205
6206         * libs/gst/controller/gsthelper.c: Update for __gst_controller_key.
6207
6208         * libs/gst/controller/gstcontroller.c (__gst_controller_key):
6209         Renamed from controller_key, as it is exported.
6210
6211         * gst/gstvalue.c (_gst_value_initialize): Fake out the compiler.
6212
6213 2005-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6214
6215         * gst/Makefile.am:
6216         * gst/gst.h:
6217         * gst/gstpad.h:
6218         * gst/gstpadtemplate.h:
6219         * gst/gstquery.c:
6220         * gst/gstquery.h:
6221         * gst/gstqueryutils.c:
6222         * gst/gstqueryutils.h:
6223           remove queryutils headers after moving the two used functions
6224           to gstquery.  also fixes build problem for gstsiddec
6225
6226 2005-09-26  Michael Smith <msmith@fluendo.com>
6227
6228         * tools/gst-launch.1.in:
6229         Correct documentation in manpage of debug syntax
6230
6231 2005-09-26  Wim Taymans  <wim@fluendo.com>
6232
6233         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
6234         (gst_base_src_is_seekable), (gst_base_src_change_state):
6235         Some more debugging info.
6236
6237 2005-09-25  Stefan Kost  <ensonic@users.sf.net>
6238
6239         * docs/gst/gstreamer-sections.txt:
6240         * gst/base/gstbasetransform.h:
6241         * gst/gstindex.h:
6242           added more docs
6243
6244 2005-09-25  Stefan Kost  <ensonic@users.sf.net>
6245
6246         * docs/gst/.cvsignore:
6247         * docs/gst/tmpl/.cvsignore:
6248         * docs/gst/tmpl/gstpipeline.sgml:
6249         * docs/gst/tmpl/gstplugin.sgml:
6250         * gst/gstpipeline.c:
6251         * gst/gstplugin.c:
6252         * gst/gstplugin.h:
6253           inlined the last two docs files
6254           removed the tmpl directory from cvs (no more conflicts here!)
6255
6256 2005-09-25  Stefan Kost  <ensonic@users.sf.net>
6257
6258         * docs/gst/gstreamer-sections.txt:
6259         * docs/gst/tmpl/.cvsignore:
6260         * docs/gst/tmpl/gstpad.sgml:
6261         * docs/gst/tmpl/gstpadtemplate.sgml:
6262         * gst/Makefile.am:
6263         * gst/gstpad.c: (gst_pad_class_init), (gst_pad_dispose),
6264         (gst_pad_finalize), (gst_pad_set_pad_template):
6265         * gst/gstpad.h:
6266         * gst/gstpadtemplate.c: (gst_pad_template_get_type),
6267         (gst_pad_template_class_init), (gst_pad_template_init),
6268         (gst_pad_template_dispose), (name_is_valid),
6269         (gst_static_pad_template_get), (gst_pad_template_new),
6270         (gst_static_pad_template_get_caps), (gst_pad_template_get_caps),
6271         (gst_pad_template_pad_created):
6272         * gst/gstpadtemplate.h:
6273           inlined two more docs
6274           factored gstpadtemplate out of gstpad
6275
6276 2005-09-24  Tim-Philipp Müller  <tim at centricular dot net>
6277
6278         * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
6279         (test_children_state_change_order_semi_sink):
6280           Fix test case: we can't rely on a fixed state change order when
6281           going from READY => PAUSED because the sink might commit its 
6282           new state first when the first buffer created by the source 
6283           reaches the sink before the source has finished its change state.
6284           (Test case still fails at times, see #316856, comment 5 onwards)
6285
6286 2005-09-24  Wim Taymans  <wim@fluendo.com>
6287
6288         * docs/design/part-events.txt:
6289         * docs/design/part-gstbus.txt:
6290         * docs/design/part-gstpipeline.txt:
6291         * docs/design/part-messages.txt:
6292         * docs/design/part-overview.txt:
6293         * docs/design/part-segments.txt:
6294         * gst/gstbin.c:
6295         * gst/gstbuffer.c:
6296         * gst/gstclock.c:
6297         * gst/gstelement.c:
6298         * gst/gstevent.c:
6299         * gst/gstfilter.c:
6300         * gst/gstiterator.c:
6301         Various documentation updates.
6302
6303 2005-09-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6304
6305         * gst/gstclock.h:
6306           Well, that's embarassing.  Luckily we weren't using
6307           GST_CLOCK_DIFF anywhere.
6308
6309 2005-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6310
6311         * common/gtk-doc.mak:
6312           don't fail on building XML, FC4 slave shows a bunch of doc
6313           missing bits that I don't get
6314         * gst/gstpad.c:
6315         * gst/gstpipeline.c:
6316         * gst/gststructure.c:
6317           some doc updates
6318
6319 2005-09-23  Tim-Philipp Müller  <tim at centricular dot net>
6320
6321         * docs/design/part-gstbin.txt:
6322         * docs/design/part-gstbus.txt:
6323         * gst/gstbus.c:
6324           Add blurb about how the bus goes into flushing mode and
6325           drops all messages when its bin goes from READY into NULL 
6326           state.
6327
6328 2005-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6329
6330         * docs/gst/gstreamer-sections.txt:
6331         * gst/gststructure.c: (gst_structure_get_clock_time):
6332         * gst/gststructure.h:
6333           add a method to get a GstClockTime out of a structure
6334
6335 2005-09-23  Tim-Philipp Müller  <tim at centricular dot net>
6336
6337         * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
6338         (test_children_state_change_order_semi_sink), (gst_bin_suite):
6339           Added test to check state change order in bins (can still be made
6340           to fail here under heavy disk load; bails out with 'Push on pad
6341           fakesink:sink0, but it was not activated in push mode').
6342
6343         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_change_state):
6344           Fix state change order when there is only a semi sink (#316856)
6345
6346         * gst/gstbus.c: (gst_bus_class_init):
6347           Use _class_peek_parent(), not _class_ref(); fix docs to say
6348           'default main context' instead of 'mainloop' where that is
6349           what's meant.
6350
6351         * gst/gstelement.c: (gst_element_commit_state),
6352         (gst_element_set_state):
6353           Fix typos in debug messages
6354
6355 2005-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6356
6357         * docs/README:
6358         * gst/gstpad.c: (gst_pad_class_init), (gst_pad_chain):
6359         * gst/gstpluginfeature.c:
6360         * gst/gstutils.c:
6361           various doc updates
6362         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
6363           change an assert into an error until it gets fixed properly
6364
6365 2005-09-23  Stefan Kost  <ensonic@users.sf.net>
6366
6367         * docs/gst/gstreamer-sections.txt:
6368         * docs/gst/tmpl/.cvsignore:
6369         * docs/gst/tmpl/gstelement.sgml:
6370         * docs/gst/tmpl/gstinfo.sgml:
6371         * docs/gst/tmpl/gstobject.sgml:
6372         * gst/gstelement.c:
6373         * gst/gstelement.h:
6374         * gst/gstinfo.c:
6375         * gst/gstinfo.h:
6376         * gst/gstobject.c: (gst_object_class_init):
6377         * gst/gstobject.h:
6378           inlined 3 more biiiig doc files and added some missing docs on the fly
6379
6380 2005-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6381
6382         * check/gst/.cvsignore:
6383         * check/gst/gstplugin.c: (GST_START_TEST), (gst_plugin_suite):
6384         * gst/gstregistryxml.c: (load_plugin),
6385         (gst_registry_xml_save_plugin):
6386           put back source in registry.  add checks for find_plugin.
6387         * testsuite/states/bin.c: (assert_state), (empty_bin),
6388         (test_adding_one_element), (main):
6389         * testsuite/states/locked.c: (main):
6390           some compile/run fixes
6391
6392 2005-09-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6393
6394         * check/gst/gstvalue.c: (GST_START_TEST):
6395           fix leaks in the test itself
6396
6397 2005-09-22  Wim Taymans  <wim@fluendo.com>
6398
6399         * gst/base/gstbasesink.c: (gst_base_sink_class_init),
6400         (gst_base_sink_send_event), (gst_base_sink_peer_query),
6401         (gst_base_sink_query):
6402         Prepare for more accurate position reporting and query
6403         handling.
6404
6405         * gst/gstelement.c: (gst_element_send_event),
6406         (gst_element_set_state):
6407         Add some comment.
6408
6409 2005-09-22  Wim Taymans  <wim@fluendo.com>
6410
6411         * gst/gstquery.c: (gst_query_new_segment), (gst_query_set_segment),
6412         (gst_query_parse_segment):
6413         * gst/gstquery.h:
6414         More documentation.
6415         Add segment query for future use.
6416
6417 2005-09-22  Wim Taymans  <wim@fluendo.com>
6418
6419         * gst/gstbin.c: (gst_bin_add_func):
6420         Some more debug info.
6421
6422         * gst/gstelement.c: (gst_element_send_event):
6423         Simplify send_event
6424
6425         * gst/gstelement.h:
6426         Don't know how flags got broken.
6427
6428         * gst/gstquery.h:
6429         Added new query.
6430
6431 2005-09-22  Tim-Philipp Müller  <tim at centricular dot net>
6432
6433         * check/gst/gstvalue.c: (test_date), (gst_value_suite):
6434           Add simplistic test suite for GST_TYPE_DATE serialisation and
6435           deserialisation.
6436
6437 2005-09-22  Tim-Philipp Müller  <tim at centricular dot net>
6438
6439         * docs/gst/gstreamer-sections.txt:
6440         * gst/gststructure.c: (gst_structure_set_valist),
6441         (gst_structure_get_date):
6442         * gst/gststructure.h:
6443         * gst/gstvalue.c: (gst_value_set_date), (gst_value_get_date),
6444         (gst_date_copy), (gst_value_compare_date),
6445         (gst_value_serialize_date), (gst_value_deserialize_date),
6446         (gst_value_transform_date_string),
6447         (gst_value_transform_string_date), (_gst_value_initialize):
6448         * gst/gstvalue.h:
6449           Add GST_TYPE_DATE, a boxed type that wraps GDate, and the usual
6450           bunch of utility functions along with a hack that checks that
6451           developers don't accidentally use G_TYPE_DATE where GST_TYPE_DATE
6452           is required. Part of the grand scheme in #170777.
6453
6454 2005-09-22  Andy Wingo  <wingo@pobox.com>
6455
6456         * gst/gstconfig.h.in: Psych out gtk-doc.
6457
6458         * docs/gst/gstreamer-sections.txt: Add GST_HAVE_GLIB_2_8.
6459
6460         * check/Makefile.am (check_PROGRAMS): Add gstplugin to the tests.
6461
6462         * tools/gst-inspect.c (print_element_list): Plug some
6463         inconsequential leaks.
6464
6465         * gst/gstregistry.c (gst_registry_get_default): Doc.
6466
6467         * check/gst/gstplugin.c: 
6468         * gst/gsttypefindfactory.c (gst_type_find_factory_call_function):
6469         * gst/gstelementfactory.c (gst_element_factory_create): 
6470         * gst/gstindexfactory.c (gst_index_factory_create): Update for
6471         refcount changes.
6472
6473         * gst/gstpluginfeature.c (gst_plugin_feature_list_free): Doc.
6474         (gst_plugin_feature_load): Doc, don't eat refs.
6475
6476         * gst/gstplugin.c (gst_plugin_load): Doc, don't eat refs.
6477         (gst_plugin_list_free): Doc.
6478         (gst_plugin_load_file): Doc updates.
6479
6480         * gst/gstbuffer.c (gst_buffer_get_caps): Like all our _get
6481         accessors returning refcounted objects, return a ref.
6482
6483         * check/gst/gstbuffer.c (GST_START_TEST): Use refcount-idempotent
6484         accessor for caps. IDEMPOTENCE. Oh yes.
6485
6486 2005-09-21  Francis Labonte  <francis_labonte at hotmail dot com>
6487
6488         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
6489
6490         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
6491         (_gst_debug_register_funcptr):
6492           Add mutex to serialise access to the hash table with
6493           the function pointer => function name string mapping;
6494           make that hash table static scope (#316809).
6495
6496         * gst/registries/.cvsignore:
6497           Remove left-over file.
6498
6499 2005-09-21  Tim-Philipp Müller  <tim at centricular dot net>
6500
6501         * docs/pwg/appendix-porting.xml:
6502           And something about newsegment events and caps-on-buffers to
6503           the porting guide (feel free to improve).
6504
6505 2005-09-21  Andy Wingo  <wingo@pobox.com>
6506
6507         * check/gst/gstutils.c (test_buffer_probe_n_times): Add tests for
6508         data and event probes on the same pad.
6509         (test_buffer_probe_once): Test that removing probes from within
6510         the probe functions works.
6511
6512 2005-09-21  Andy Wingo  <wingo@pobox.com>
6513
6514         * check/gst/gstutils.c: New file.
6515         (test_buffer_probe_n_times): A simple buffer probe test. More to
6516         come, foolios.
6517
6518         * gst/gstutils.c (gst_pad_add_buffer_probe): Connect to
6519         have-data::buffer, not have-data.
6520         (gst_pad_add_event_probe): Likewise for have-data::event.
6521         (gst_pad_add_data_probe): More docs. The part about 'resolving the
6522         peer' isn't quite right yet though.
6523         (gst_pad_remove_buffer_probe, gst_pad_remove_event_probe) 
6524         (gst_pad_remove_data_probe): Change to take the guint handler_id
6525         as their arg, not the function+data, which is more glib-like.
6526
6527         * gst/gstpad.c (gst_pad_emit_have_data_signal): Add a detail to
6528         the signal emission to indicate if the data is a buffer or an
6529         event.
6530         (gst_pad_get_type): Initialize buffer and event quarks.
6531         (gst_pad_class_init): have-data is now a detailed signal, yes it
6532         is.
6533
6534 2005-09-21  Tim-Philipp Müller  <tim at centricular dot net>
6535
6536         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
6537         * gst/gstutils.c: (gst_util_set_value_from_string),
6538         (gst_util_set_object_arg):
6539           Don't put functional code in g_return_if_fail() or
6540           g_return_val_if_fail() statements, otherwise things will 
6541           break when G_DISABLE_CHECKS is defined during compilation.
6542
6543 2005-09-21  Stefan Kost  <ensonic@users.sf.net>
6544
6545         * docs/gst/tmpl/.cvsignore:
6546         * docs/gst/tmpl/gstvalue.sgml:
6547         * gst/gstvalue.c:
6548         * gst/gstvalue.h:
6549           inlied another one and added  some obvious docs
6550
6551 2005-09-21  Wim Taymans  <wim@fluendo.com>
6552
6553         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6554         (gst_fdsrc_init), (gst_fdsrc_start), (gst_fdsrc_stop),
6555         (gst_fdsrc_unlock), (gst_fdsrc_set_property),
6556         (gst_fdsrc_get_property), (gst_fdsrc_create):
6557         * gst/elements/gstfdsrc.h:
6558         Properly implement fdsrc. Removed signal and timeout,
6559         better implemented somewhere else.
6560
6561 2005-09-21  Stefan Kost  <ensonic@users.sf.net>
6562
6563         * docs/gst/tmpl/.cvsignore:
6564         * docs/gst/tmpl/gstimplementsinterface.sgml:
6565         * gst/gstinterface.c:
6566           inlined more docs
6567
6568 2005-09-21  Stefan Kost  <ensonic@users.sf.net>
6569
6570         * docs/gst/gstreamer-sections.txt:
6571         * docs/gst/tmpl/.cvsignore:
6572         * docs/gst/tmpl/gstenumtypes.sgml:
6573           remove obsolete doc file
6574
6575 2005-09-21  David Schleef  <ds@schleef.org>
6576
6577         * gst/gstelementfactory.c: (gst_element_factory_make): Drink a
6578         little beer, fix a little leak.
6579
6580 2005-09-21  Stefan Kost  <ensonic@users.sf.net>
6581
6582         * docs/gst/gstreamer-docs.sgml:
6583         * docs/gst/gstreamer-sections.txt:
6584         * docs/gst/tmpl/.cvsignore:
6585         * gst/Makefile.am:
6586         * gst/gst.h:
6587         * gst/gstbin.c:
6588         * gst/gstelement.h:
6589         * gst/gstindex.c: (gst_index_class_init):
6590         * gst/gstindex.h:
6591         * gst/gstindexfactory.c: (gst_index_factory_get_type),
6592         (gst_index_factory_class_init), (gst_index_factory_init),
6593         (gst_index_factory_finalize), (gst_index_factory_new),
6594         (gst_index_factory_destroy), (gst_index_factory_find),
6595         (gst_index_factory_create), (gst_index_factory_make):
6596         * gst/gstindexfactory.h:
6597         * gst/gstpluginfeature.c:
6598         * gst/gstpluginfeature.h:
6599         * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
6600           more docs inlined, splitted gstindex.{c,h}
6601
6602 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6603
6604         * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
6605           fix a leak
6606
6607 2005-09-20  Tim-Philipp Müller  <tim at centricular dot net>
6608
6609         * gst/elements/gstfilesink.c: (gst_file_sink_init):
6610           Set sync to FALSE by default.
6611
6612 2005-09-20  Wim Taymans  <wim@fluendo.com>
6613
6614         * gst/base/gstbasesink.c: (gst_base_sink_class_init),
6615         (gst_base_sink_init):
6616         Make sync property settable from subclass.
6617
6618         * gst/elements/gstfakesink.c: (gst_fake_sink_init),
6619         (gst_fake_sink_change_state):
6620         Set sync to FALSE by default.
6621
6622 2005-09-20  Wim Taymans  <wim@fluendo.com>
6623
6624         * gst/gstbus.c: (poll_func), (poll_timeout), (gst_bus_poll):
6625         * tools/gst-launch.c: (main):
6626         The timeout handler should have lower priority than the source
6627         so we don't timeout before popping a message with 0 timeout.
6628         Dump error messages after failed state change.
6629
6630 2005-09-20  Tim-Philipp Müller  <tim at centricular dot net>
6631
6632         * tools/gst-inspect.c: (print_element_properties_info):
6633           Fix two typos.
6634
6635 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6636
6637         * check/gst/gstevent.c:
6638         * gst/elements/gstfakesink.c:
6639         * gst/elements/gstfakesink.h:
6640           remove the sync property from fakesink.
6641           has the side effect of setting sync TRUE
6642           for fakesink, which is a change.  Anyone who knows how
6643           to fix this nicely in a GObject-y way, feel free.
6644
6645 2005-09-20  Stefan Kost  <ensonic@users.sf.net>
6646
6647         * docs/gst/gstreamer-docs.sgml:
6648           remove probe refsection
6649
6650 2005-09-20  Stefan Kost  <ensonic@users.sf.net>
6651
6652         * check/Makefile.am:
6653           disable valgrinding the controller test again
6654         * docs/gst/gstreamer-sections.txt:
6655           update for api-changes
6656
6657 2005-09-20  Wim Taymans  <wim@fluendo.com>
6658
6659         * gst/base/gstbasesink.c: (gst_base_sink_class_init),
6660         (gst_base_sink_set_property), (gst_base_sink_get_property),
6661         (gst_base_sink_do_sync):
6662         * gst/base/gstbasesink.h:
6663         Added sync property to basesink to disable clock sync.
6664
6665 2005-09-20  Andy Wingo  <wingo@pobox.com>
6666
6667         * gst/gstelementfactory.c (gst_element_factory_create): Avoid
6668         eating the caller's refcount.
6669
6670         * gst/gstobject.h (GST_OBJECT_REFCOUNT) 
6671         (GST_OBJECT_REFCOUNT_VALUE): Conditionally fondle the right
6672         refcount.
6673
6674         * gst/gstconfig.h.in (GST_HAVE_GLIB_2_8):
6675         * configure.ac (GST_HAVE_GLIB_2_8_DEFINE): Make the availability
6676         of GLib 2.8 public, so we can know which refcount to check in
6677         tests.
6678
6679         * gst/gstobject.c: Use the GST_HAVE_GLIB_2_8 define.
6680         (gst_object_init): Only set the gst refcount if we're going ahead
6681         with the refcount hack.
6682
6683 2005-09-20  Stefan Kost  <ensonic@users.sf.net>
6684
6685         * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
6686         * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
6687           more leaks plumbed, added more debug-logging
6688         * gst/gstmacros.h:
6689           whitespace fix
6690
6691 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6692
6693         * gst/gstmessage.c:
6694           remove include of gstmemchunk.h
6695
6696 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6697
6698         * gst/gstclock.c: (_gst_clock_id_free):
6699           Commit from the Political Party For More Atomic CVS Commits,
6700           so that people don't waste too much of their day fishing
6701           out obvious leaks out of massive commits.
6702           Oh, and fix a pretty damn obvious leak in the memchunk
6703           removal code.
6704
6705 2005-09-20  Stefan Kost  <ensonic@users.sf.net>
6706
6707         * check/Makefile.am:
6708         * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
6709           plug mem-leak, re-add to valgrindable tests
6710
6711 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6712
6713         * gst/gstplugin.h:
6714           unbreak the build for those who have chronic arthritis
6715           and typing "make check" is just too taxing on the hands
6716
6717 2005-09-20  Andy Wingo  <wingo@pobox.com>
6718
6719         * gst/gst.h: Re-add marshal to gst.h's include list -- if we
6720         really want it out, you should fix plugins at the same time.
6721
6722 2005-09-19  Stefan Kost  <ensonic@users.sf.net>
6723
6724         * configure.ac:
6725         * docs/gst/gstreamer-sections.txt:
6726         * gst/gstobject.c:
6727           added missing symbols to api docs
6728           disable ref-count hack if we have glib >= 2.8
6729
6730 2005-09-19  David Schleef  <ds@schleef.org>
6731
6732         * docs/gst/Makefile.am: Ignore a few more internal headers
6733         * docs/gst/gstreamer-docs.sgml: Remove old sections
6734         * docs/gst/gstreamer-sections.txt: Remove old sections
6735         * docs/gst/tmpl/gstobject.sgml: update
6736         * docs/gst/tmpl/gstplugin.sgml: update
6737         * docs/gst/tmpl/gstpluginfeature.sgml: update
6738         * docs/random/ds/0.9-suggested-changes: update.
6739         * gst/Makefile.am: remove memchunk and trashstack, since they're
6740           not used.
6741         * gst/gst.c: (gst_deinit): rename gst_registry_deinit to _cleanup
6742         * gst/gst.h: don't include some headers
6743         * gst/gstchildproxy.c: add gstmarshal.h
6744         * gst/gstclock.c: Don't use memchunks
6745         * gst/gstminiobject.c: Add some docs
6746         * gst/gstobject.c: remove DESTROYED flag, since it's redundant
6747         * gst/gstobject.h: same
6748         * gst/gstplugin.c: include gstmacros.h
6749         * gst/gstplugin.h: don't include gstmacros.h, since it's private
6750         * gst/gstquery.c: don't use memchunks
6751         * gst/gstregistry.c: rename gst_registry_deinit()
6752         * gst/gstregistry.h: same
6753
6754 2005-09-19  David Schleef  <ds@schleef.org>
6755
6756         * docs/libs/gstreamer-libs-docs.sgml: Remove docs for getbits
6757         * docs/libs/gstreamer-libs-sections.txt:
6758         * docs/libs/tmpl/gstgetbits.sgml:
6759         * docs/libs/tmpl/gstputbits.sgml:
6760
6761 2005-09-19  Tim-Philipp Müller  <tim at centricular dot net>
6762
6763         * win32/gstenumtypes.c:
6764         * win32/gstenumtypes.h:
6765           Update.
6766
6767 2005-09-19  Wim Taymans  <wim@fluendo.com>
6768
6769         * gst/gstpipeline.c: (do_pipeline_seek), (gst_pipeline_send_event):
6770         Automatically PAUSE and RESUME a pipeline when a flushing seek
6771         is performed.
6772
6773 2005-09-19  Andy Wingo  <wingo@pobox.com>
6774
6775         * gst/gstregistry.h: Spacing fixen.
6776
6777 2005-09-19  Wim Taymans  <wim@fluendo.com>
6778
6779         * gst/base/gstbasesrc.c: (gst_base_src_change_state):
6780         Handle state change failure more correctly.
6781
6782 2005-09-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6783
6784         * check/Makefile.am:
6785         * check/pipelines/cleanup.c: (run_pipeline):
6786         * check/pipelines/simple_launch_lines.c: (run_pipeline),
6787         (GST_START_TEST):
6788           enable cleanup again after fixing the leak
6789         * docs/README:
6790           some more info on docs
6791
6792 2005-09-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6793
6794         * check/Makefile.am:
6795           re-enable tests now that leaks are plugged
6796         * check/gst/gst.c:
6797         * check/gst/gstbin.c:
6798         * check/gst/gstpipeline.c:
6799           add some more tests while fixing leaks
6800         * common/check.mak:
6801           make sure binaries are uptodate when valgrinding/gdbing
6802         * gst/gst.c:
6803         * gst/gstelementfactory.c:
6804           remove a ref too many, and add a FIXME for when we get
6805           round to disposing of classes
6806         * gst/gstplugin.c:
6807           fix the refcounting when loading a plugin from a file and
6808           the code pretends that the pointer is the same even though
6809           of course it can change
6810         * gst/gstpluginfeature.c:
6811           unref plugins marked cached (a bit confusing as a name)
6812           as the docs state should be done
6813           various doc additions to explain refcounting
6814         * gst/gstregistry.c:
6815         * gst/gstregistryxml.c:
6816           debugging
6817
6818 2005-09-19  Wim Taymans  <wim@fluendo.com>
6819
6820         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
6821         * check/gst/gstbus.c: (message_func_eos), (message_func_app),
6822         (send_messages), (GST_START_TEST), (gstbus_suite):
6823         * check/gst/gstpipeline.c: (GST_START_TEST):
6824         * check/pipelines/cleanup.c: (run_pipeline):
6825         * check/pipelines/simple_launch_lines.c: (run_pipeline),
6826         (GST_START_TEST):
6827         * gst/gstbus.c: (gst_bus_have_pending), (gst_bus_source_prepare),
6828         (gst_bus_source_check), (gst_bus_source_dispatch),
6829         (gst_bus_create_watch), (gst_bus_add_watch_full),
6830         (gst_bus_add_watch), (poll_func), (poll_timeout), (gst_bus_poll):
6831         * gst/gstbus.h:
6832         * tools/gst-launch.c: (event_loop):
6833         * tools/gst-md5sum.c: (event_loop):
6834         GstBusHandler -> GstBusFunc, return value has the same meaning as
6835         any other GSource (FALSE == remove source).
6836         _add_watch() and _add_watch_full() now take a MessageType mask to
6837         only handle specific types of messages.
6838         _poll() returns the GstMessage instead of the message type to avoid
6839         race conditions.
6840         _have_pending() takes a MessageType mask now too.
6841         Added testsuite for multiple bus watches.
6842         Fix testsuites and applications for new bus API.
6843
6844 2005-09-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6845
6846         * check/Makefile.am:
6847           mark a bunch of the tests as to fix until we fix them
6848
6849 2005-09-18  Thomas Vander Stichele  <thomas at apestaart dot org>
6850
6851         * common/check.mak:
6852           use GST_PLUGIN settings for valgrind tests as well, so we're
6853           valgrinding the correct thing
6854         * gst/gst.c: (init_post):
6855           plug another leak
6856
6857 2005-09-18  Thomas Vander Stichele  <thomas at apestaart dot org>
6858
6859         * gst/gst.c: (init_post), (gst_deinit):
6860         * gst/gstelementfactory.c: (gst_element_factory_class_init),
6861         (gst_element_factory_finalize), (gst_element_factory_cleanup):
6862         * gst/gstindex.c: (gst_index_factory_class_init),
6863         (gst_index_factory_finalize):
6864         * gst/gstobject.c: (gst_object_dispose):
6865         * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
6866         (gst_plugin_load_file), (gst_plugin_desc_free):
6867         * gst/gstpluginfeature.c: (gst_plugin_feature_class_init),
6868         (gst_plugin_feature_finalize):
6869         * gst/gstregistry.c: (gst_registry_class_init),
6870         (gst_registry_init), (gst_registry_finalize),
6871         (gst_registry_get_default), (gst_registry_deinit):
6872         * gst/gstregistry.h:
6873         * gst/gstregistryxml.c: (load_feature), (load_plugin):
6874           various cleanups and memleak plugging.  make valgrind is happy now.
6875
6876 2005-09-18  Thomas Vander Stichele  <thomas at apestaart dot org>
6877
6878         * common/check.mak:
6879           add a check-valgrind target
6880
6881 2005-09-18  David Schleef  <ds@schleef.org>
6882
6883         * tools/gst-inspect.c: Revert the GOption code.
6884
6885 2005-09-17  David Schleef  <ds@schleef.org>
6886
6887         * check/Makefile.am: Fix environment variables.
6888         * check/gst/gstplugin.c: Fix for API changes.
6889         * tools/gst-inspect.c: Fix for API changes.
6890         * tools/gst-xmlinspect.c: Fix for API changes.
6891         * gst/gstelementfactory.c:
6892         * gst/gstplugin.c:
6893         * gst/gstplugin.h:
6894         * gst/gstpluginfeature.c:
6895         * gst/gstpluginfeature.h:
6896         * gst/gstregistry.c:
6897         * gst/gstregistry.h:
6898         * gst/gstregistryxml.c:
6899         * gst/gsttypefind.c:
6900         * gst/gsttypefindfactory.c:
6901         * gst/indexers/gstfileindex.c:
6902         * gst/indexers/gstmemindex.c:
6903         * gst/schedulers/Makefile.am:
6904           Change registry to keep track of both plugins and features,
6905           removing the feature tracking from plugins themselves.
6906
6907 2005-09-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6908
6909         * check/Makefile.am:
6910         * tools/gst-register.1.in:
6911           remove gst-register
6912
6913 2005-09-15  David Schleef  <ds@schleef.org>
6914
6915         * check/gst/gstplugin.c:
6916         * gst/gstelementfactory.c:
6917         * gst/gstplugin.c:
6918         * gst/gstpluginfeature.c:
6919         * gst/gstregistry.c:
6920           Getting tired of debugging.  Disabled all the unreffing of
6921           plugins and features, which fixes the segfaults, but of
6922           course leaks like crazy.  At least playbin works.
6923
6924 2005-09-15  David Schleef  <ds@schleef.org>
6925
6926         * check/gst/gstplugin.c: (register_check_elements),
6927         (GST_START_TEST), (peek), (suggest), (gst_plugin_suite):
6928         More testing
6929         * gst/elements/gsttypefindelement.c: Fix refcounting.
6930         * gst/gsttypefind.c:
6931         * gst/gsttypefindfactory.c:
6932         * gst/gsttypefindfactory.h:
6933
6934 2005-09-15  David Schleef  <ds@schleef.org>
6935
6936         * gst/gstindex.c: get refcounting correct.
6937         * gst/gstregistry.c: Handle the case where a feature/plugin is
6938           not found.
6939
6940 2005-09-15  David Schleef  <ds@schleef.org>
6941
6942         * check/Makefile.am:
6943         * check/gst/gstplugin.c: Add test
6944         * gst/gstplugin.c: Fix problems noticed by testsuite
6945         * gst/gstplugin.h:
6946         * gst/gstregistry.c: 
6947         * gst/gstregistry.h:
6948
6949 2005-09-15  David Schleef  <ds@schleef.org>
6950
6951         * gst/gstplugin.c: Implement semi-decent recounting and locking
6952           in plugins and plugin features.
6953         * gst/gstplugin.h:
6954         * gst/gstpluginfeature.c:
6955         * gst/gstpluginfeature.h:
6956         * gst/gstregistry.c:
6957
6958 2005-09-15  Michael Smith <msmith@fluendo.com>
6959
6960         * gst/gstregistry.c: (gst_registry_get_feature_list):
6961           Implement this. Makes oggdemux work; decodebin still broken.
6962
6963 2005-09-14  David Schleef  <ds@schleef.org>
6964
6965         * configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug
6966           #316076)
6967         * gst/base/Makefile.am: Add -no-undefined to LDFLAGS for libs
6968         * gst/check/Makefile.am:
6969         * libs/gst/controller/Makefile.am:
6970         * libs/gst/dataprotocol/Makefile.am:
6971
6972 2005-09-14  David Schleef  <ds@schleef.org>
6973
6974         * configure.ac: Remove getbits library.  Nothing uses it, and
6975           it should be in something like liboil if someone did want
6976           to use it.
6977         * libs/gst/Makefile.am:
6978         * libs/gst/getbits/Makefile.am:
6979         * libs/gst/getbits/gbtest.c:
6980         * libs/gst/getbits/getbits.c:
6981         * libs/gst/getbits/getbits.h:
6982         * libs/gst/getbits/gstgetbits_generic.c:
6983         * libs/gst/getbits/gstgetbits_i386.s:
6984         * libs/gst/getbits/gstgetbits_inl.h:
6985
6986 2005-09-14  David Schleef  <ds@schleef.org>
6987
6988         * gst/Makefile.am: Dist glib-compat.h
6989
6990 2005-09-14  David Schleef  <ds@schleef.org>
6991
6992         * configure.ac: Remove gst/registries, since it's no longer used.
6993         * gst/registries/Makefile.am:
6994         * gst/registries/gstlibxmlregistry.c:
6995         * gst/registries/gstlibxmlregistry.h:
6996         * gst/registries/gstxmlregistry.c:
6997         * gst/registries/gstxmlregistry.h:
6998         * gst/registries/registrytest.c:
6999
7000 2005-09-14  David Schleef  <ds@schleef.org>
7001
7002         * gst/glib-compat.h:
7003         * gst/gstregistryxml.c:
7004           Convergence is near.  Seriously.
7005
7006 2005-09-14  David Schleef  <ds@schleef.org>
7007
7008         * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
7009         * gst/glib-compat.h:
7010           Attempt #4 to appease the buildbots.
7011
7012 2005-09-14  David Schleef  <ds@schleef.org>
7013
7014         * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
7015           Attempt #3.
7016
7017 2005-09-14  David Schleef  <ds@schleef.org>
7018
7019         * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
7020         Attempt #2.
7021
7022 2005-09-14  David Schleef  <ds@schleef.org>
7023
7024         * gst/Makefile.am: Oh yeah, libgstreamer.so needs to contain
7025           the new functions.
7026
7027 2005-09-14  David Schleef  <ds@schleef.org>
7028
7029         * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
7030         * gst/glib-compat.h: Add some functions that are in newer versions
7031           of glib than we care to require.
7032         * gst/gstregistryxml.c: Use them.
7033
7034 2005-09-14  David Schleef  <ds@schleef.org>
7035
7036         * po/POTFILES.in: remove gst-register.c
7037
7038 2005-09-14  David Schleef  <ds@schleef.org>
7039
7040         * docs/gst/gstreamer-docs.sgml:
7041         * docs/gst/gstreamer-sections.txt:
7042         * docs/gst/gstreamer.types:
7043         * docs/gst/tmpl/gstelement.sgml:
7044         * docs/gst/tmpl/gstplugin.sgml:
7045         * docs/gst/tmpl/gstpluginfeature.sgml:
7046           Documentation updates for registry changes.
7047
7048 2005-09-14  David Schleef  <ds@schleef.org>
7049
7050         * gst/gstregistryxml.c: Copy g_mkdir_with_parent() from glib,
7051           because we don't require glib-2.8.
7052
7053 2005-09-14  David Schleef  <ds@schleef.org>
7054
7055         * gst/gstregistryxml.c: Added.  Essentially moved out of the
7056           registries directory.
7057
7058 2005-09-14  David Schleef  <ds@schleef.org>
7059
7060         * check/Makefile.am:
7061         * check/generic/states.c:
7062         * gst/Makefile.am:
7063         * gst/gst.c:
7064         * gst/gst.h:
7065         * gst/gst_private.h:
7066         * gst/gstelementfactory.c:
7067         * gst/gstindex.c:
7068         * gst/gstinfo.c:
7069         * gst/gstplugin.c:
7070         * gst/gstplugin.h:
7071         * gst/gstpluginfeature.c:
7072         * gst/gstpluginfeature.h:
7073         * gst/gstregistry.c:
7074         * gst/gstregistry.h:
7075         * gst/gstregistrypool.c: remove
7076         * gst/gstregistrypool.h: remove
7077         * gst/gsttypefind.c:
7078         * gst/gsttypefindfactory.c:
7079         * gst/gsturi.c:
7080         * tools/Makefile.am:
7081         * tools/gst-compprep.c:
7082         * tools/gst-inspect.c:
7083         * tools/gst-register.c: remove
7084         * tools/gst-xmlinspect.c:
7085           Registry rewrite.  Changes registry from being a file created
7086           by a tool into a simple cache file created automatically by 
7087           libgstreamer.  Removed gst-register (because it's no longer
7088           needed).  Remove registry pools, because we only have one
7089           registry implementation (XML).  Fix up other subsystems as
7090           necessary.
7091
7092 2005-09-13  Michael Smith <msmith@fluendo.com>
7093
7094         * gst/gstconfig.h.in:
7095           Don't Use windows linking attributes for MinGW. Fixes #316157
7096
7097 2005-09-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7098
7099         * gst/gstutils.c: (set_state_async_thread_func),
7100         (gst_element_set_state_async):
7101           Apparently people think it's better if this function doesn't
7102           try to set the state to whatever state was asked for on the first
7103           call to this function for any object.  Seriously.
7104
7105 2005-09-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7106
7107         * check/gst/gstpipeline.c: (GST_START_TEST):
7108         * docs/gst/gstreamer-sections.txt:
7109         * gst/gstutils.c: (set_state_async_thread_func),
7110         (gst_element_set_state_async):
7111         * gst/gstutils.h:
7112           add a "gst_element_set_state_async" method that
7113           sets the state and starts a thread to make sure the state
7114           change completes as best as it can
7115
7116 2005-09-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7117
7118         * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
7119           codify design+behaviour in testsuite after discussion
7120
7121 2005-09-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7122
7123         * docs/gst/tmpl/gstelement.sgml:
7124         * docs/manual/appendix-quotes.xml:
7125           add a quote
7126         * gst/gstelement.c: (gst_element_set_state):
7127           add some debug
7128
7129 2005-09-12  Jan Schmidt  <thaytan@mad.scientist.com>
7130
7131         * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
7132         (gst_base_transform_prepare_output_buf),
7133         (gst_base_transform_handle_buffer):
7134         * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip),
7135         (gst_capsfilter_prepare_buf):
7136           Remove the requirement for sub-classes to call the parent
7137           implementation of prepare_output_buffer with a wrapper function.
7138           
7139         * gst/gsttaglist.h:
7140         * gst/gsttagsetter.h:
7141           Fix #define wrapper
7142
7143 2005-09-11  Stefan Kost  <ensonic@users.sf.net>
7144
7145         * docs/gst/gstreamer-sections.txt:
7146           more doc cleanups
7147
7148 2005-09-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7149
7150         * docs/gst/gstreamer-sections.txt:
7151         * docs/gst/tmpl/gstelement.sgml:
7152         * docs/gst/tmpl/gstplugin.sgml:
7153         * gst/gstminiobject.c:
7154         * gst/gstvalue.h:
7155           docs now stop throwing warnings
7156
7157 2005-09-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7158
7159         * docs/gst/gstreamer-sections.txt:
7160         * docs/gst/gstreamer.types:
7161         * docs/gst/tmpl/gstpad.sgml:
7162         * docs/gst/tmpl/gsttypes.sgml:
7163         * gst/base/gstadapter.h:
7164         * gst/base/gstbasesink.h:
7165         * gst/base/gstbasesrc.h:
7166         * gst/gstbin.h:
7167         * gst/gstbuffer.h:
7168         * gst/gstbus.h:
7169         * gst/gstcaps.h:
7170         * gst/gstclock.h:
7171         * gst/gstelement.h:
7172         * gst/gstevent.h:
7173         * gst/gstmessage.h:
7174         * gst/gstpad.h:
7175         * gst/gststructure.c:
7176         * gst/registries/gstlibxmlregistry.h:
7177           various documentation fixes
7178
7179 2005-09-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7180
7181         * docs/gst/gstreamer-sections.txt:
7182         * docs/gst/tmpl/gstvalue.sgml:
7183           rearrange gstvalue section
7184         * gst/gstutils.c: (gst_element_state_get_name):
7185           NONE -> VOID
7186         * gst/gstvalue.c: (_gst_value_initialize):
7187         * gst/gstvalue.h:
7188           doc updates
7189
7190 2005-09-10  Jan Schmidt  <thaytan@mad.scientist.com>
7191
7192         * check/gst-libs/controller.c:
7193           Header include fix.
7194         * gst/base/gstbasetransform.c:
7195         (gst_base_transform_default_prepare_buf),
7196         (gst_base_transform_handle_buffer):
7197         * gst/base/gstbasetransform.h:
7198           Some more basetransform changes and fixes to enable sub-classes
7199           that modify buffer metadata only.
7200         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
7201         (gst_capsfilter_init), (gst_capsfilter_transform_ip),
7202         (gst_capsfilter_prepare_buf):
7203           If the output pad has fixed allowed caps and input buffers 
7204           don't have any, set the fixed caps on outgoing buffers.
7205
7206 2005-09-09  Jan Schmidt  <thaytan@mad.scientist.com>
7207         * check/elements/identity.c: (GST_START_TEST):
7208           Make the error a little clearer when the test fails because
7209           identity made a copy of the buffer.
7210         * docs/gst/gstreamer-sections.txt:
7211           New symbols in gstbasetransform.h
7212         * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
7213         (gst_base_transform_init), (gst_base_transform_transform_size),
7214         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
7215         (gst_base_transform_default_prepare_buf),
7216         (gst_base_transform_get_unit_size),
7217         (gst_base_transform_buffer_alloc),
7218         (gst_base_transform_handle_buffer), (gst_base_transform_chain),
7219         (gst_base_transform_change_state),
7220         (gst_base_transform_set_passthrough),
7221         (gst_base_transform_set_in_place),
7222         (gst_base_transform_is_in_place):
7223         * gst/base/gstbasetransform.h:
7224           Change BaseTransform to separate in_place operate from same_caps
7225           output. in_place implies that the element can perform the transform
7226           on incoming buffers in-place, even if the caps on the output are
7227           different.
7228           Sub-class elements can now implement special buffer allocation
7229           methods for outgoing buffers if they wish to.
7230           Big documentation addition.
7231         * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip):
7232         * gst/elements/gstelements.c:
7233           Changes for basetransform modifications.
7234         * gst/elements/Makefile.am:
7235         * gst/elements/gstfdsrc.c: (gst_fdsrc_init), (gst_fdsrc_create):
7236           Compile fix. Extra debug output.
7237
7238 2005-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7239
7240         * check/gst/gstpad.c: (GST_START_TEST), (name_is_valid),
7241         (gst_pad_suite):
7242           add tests for valid pad naming
7243         * gst/check/gstcheck.c: (gst_check_log_message_func),
7244         (gst_check_log_critical_func):
7245           add ASSERT_WARNING
7246           remove printing of code, it is fragile when the code contains
7247           % and the line number is enough info
7248         * gst/check/gstcheck.h:
7249         * gst/gstpad.c: (gst_pad_template_new):
7250           fix memleaks
7251
7252 2005-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7253
7254         * configure.ac:
7255           say what CHECK flags we use
7256         * docs/libs/gstreamer-libs.types:
7257         * libs/gst/controller/Makefile.am:
7258         * libs/gst/controller/gst-controller.c:
7259         * libs/gst/controller/gst-controller.h:
7260         * libs/gst/controller/gst-helper.c:
7261         * libs/gst/controller/gst-interpolation.c:
7262         * libs/gst/controller/gstcontroller.c:
7263         * libs/gst/controller/gsthelper.c:
7264         * libs/gst/controller/gstinterpolation.c:
7265         * tools/gst-inspect.c: (print_plugin_info):
7266           we don't use dashes in header names
7267
7268 2005-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7269
7270         * check/Makefile.am:
7271         * check/gst/.cvsignore:
7272         * check/gst/gstpipeline.c: (pop_messages), (GST_START_TEST),
7273         (gst_pipeline_suite), (main):
7274           adding a test for pipelines and state changes
7275         * gst/gstutils.c: (get_state_func):
7276           add some debugging
7277         * gstreamer.spec.in:
7278           fix up spec file
7279
7280 2005-09-08  Michael Smith <msmith@fluendo.com>
7281
7282         * gst/elements/gstfilesrc.c: (gst_file_src_map_region),
7283         (gst_file_src_map_small_region), (gst_file_src_create_mmap),
7284         (gst_file_src_is_seekable), (gst_file_src_get_size),
7285         (gst_file_src_start):
7286         * gst/elements/gstfilesrc.h:
7287           Various fixes for unseekable, unmmapable, and non-normal files, so
7288           that fallback to read() rather than mmap() works.
7289         * gst/gstevent.c: (gst_event_new_newsegment):
7290           Allow newsegment events with segment_start == segment_end, as will
7291           correctly happen if you use filesrc on a zero-size file, for
7292           example.
7293
7294 2005-09-07  Jan Schmidt  <thaytan@mad.scientist.com>
7295
7296         * gst/gstplugin.c: (gst_plugin_load_file):
7297           Call g_module_close when we don't load the module
7298
7299         * gst/registries/gstlibxmlregistry.c:
7300         (gst_xml_registry_get_property):
7301           Port leak fix from 0.8
7302
7303 2005-09-07  Stefan Kost  <ensonic@users.sf.net>
7304
7305         * docs/gst/gstreamer-docs.sgml:
7306         * docs/gst/tmpl/.cvsignore:
7307         * docs/gst/tmpl/gsttrace.sgml:
7308         * docs/gst/tmpl/gsttrashstack.sgml:
7309         * gst/Makefile.am:
7310         * gst/gst.h:
7311         * gst/gstelement.h:
7312         * gst/gstevent.h:
7313         * gst/gstmessage.c:
7314         * gst/gstmessage.h:
7315         * gst/gsttag.c:
7316         * gst/gsttag.h:
7317         * gst/gsttaginterface.c:
7318         * gst/gsttaginterface.h:
7319         * gst/gsttaglist.c:
7320         * gst/gsttaglist.h:
7321         * gst/gsttagsetter.c:
7322         * gst/gsttagsetter.h:
7323         * gst/gsttrace.c:
7324         * gst/gsttrace.h:
7325         * gst/gsttrashstack.c:
7326           renamed gsttag -> gsttaglist, gsttaginterface -> gsttagsetter
7327           inlined docs for gsttrace, gsttrashstack
7328
7329 2005-09-07  Stefan Kost  <ensonic@users.sf.net>
7330
7331         * gst/Makefile.am:
7332         * gst/elements/gstbufferstore.h:
7333         * gst/elements/gsttypefindelement.c:
7334         * gst/elements/gsttypefindelement.h:
7335         * gst/gst.h:
7336         * gst/gsttypefind.c:
7337         * gst/gsttypefind.h:
7338         * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type),
7339         (gst_type_find_factory_class_init), (gst_type_find_factory_init),
7340         (gst_type_find_factory_dispose),
7341         (gst_type_find_factory_unload_thyself),
7342         (gst_type_find_load_plugin), (gst_type_find_factory_get_list),
7343         (gst_type_find_factory_get_caps),
7344         (gst_type_find_factory_get_extensions),
7345         (gst_type_find_factory_call_function):
7346         * gst/gsttypefindfactory.h:
7347         * gst/registries/gstlibxmlregistry.c:
7348         * gst/registries/gstxmlregistry.c:
7349           splitted gsttypefind into gsttypefind, gsttypefindfactory
7350
7351 2005-09-07  Andy Wingo  <wingo@pobox.com>
7352
7353         * gst/base/gstbasesink.c (gst_base_sink_activate_pull): Fix a race
7354         condition whereby the pad's task function is entered before the
7355         pad_mode variable was set.
7356
7357 2005-09-07  Jan Schmidt  <thaytan@mad.scientist.com>
7358
7359         * gst/gstpad.c: (gst_pad_alloc_buffer):
7360           Catch misbehaving pad_alloc functions that don't
7361           set up caps and do it for them.
7362
7363 2005-09-07  Stefan Kost  <ensonic@users.sf.net>
7364
7365         * check/pipelines/simple_launch_lines.c: (run_pipeline):
7366           test for pipe!=NULL
7367         * docs/gst/tmpl/.cvsignore:
7368         * docs/gst/tmpl/gstmemchunk.sgml:
7369         * docs/gst/tmpl/gstparse.sgml:
7370         * docs/gst/tmpl/gsttaglist.sgml:
7371         * docs/gst/tmpl/gsttagsetter.sgml:
7372         * docs/gst/tmpl/gsttypefind.sgml:
7373         * docs/gst/tmpl/gsttypefindfactory.sgml:
7374         * gst/gstmemchunk.c:
7375         * gst/gstparse.c:
7376         * gst/gsttag.c:
7377         * gst/gsttaginterface.c:
7378         * gst/gsttypefind.c:
7379         * gst/gsttypefind.h:
7380           inlined more docs
7381
7382 === release 0.9.2 ===
7383
7384 2005-09-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7385
7386         * NEWS:
7387         * RELEASE:
7388         * configure.ac:
7389           releasing 0.9.2, "South"
7390
7391 2005-09-05  Andy Wingo  <wingo@pobox.com>
7392
7393         * gst/registries/gstxmlregistry.h:
7394         * gst/registries/gstxmlregistry.c: Um... resurrect...
7395         
7396         * gst/registries/gstxmlregistry.h:
7397         * gst/registries/gstxmlregistry.c: and update to newer API.
7398         Incidentally they should be a bit faster now that they don't have
7399         to parse the caps.
7400         
7401 2005-09-05  Andy Wingo  <wingo@pobox.com>
7402
7403         * gst/registries/gstxmlregistry.h:
7404         * gst/registries/gstxmlregistry.c: Remove from CVS, they were
7405         replaced by the libxml registry a while back
7406
7407 2005-09-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7408
7409         * docs/gst/tmpl/gstplugin.sgml:
7410         * gst/elements/gstelements.c:
7411         * gst/gst.c:
7412         * gst/gstplugin.c: (gst_plugin_register_func),
7413         (gst_plugin_desc_copy), (gst_plugin_desc_free),
7414         (gst_plugin_get_source):
7415         * gst/gstplugin.h:
7416         * gst/registries/gstlibxmlregistry.c: (load_plugin),
7417         (gst_xml_registry_save_plugin):
7418         * gst/registries/gstxmlregistry.c: (gst_xml_registry_parse_plugin),
7419         (gst_xml_registry_save_plugin):
7420         * tools/gst-inspect.c: (print_plugin_info):
7421           add a "source" plugin description field, to represent the source
7422           module this plugin is a part of.  By default GST_PLUGIN_DEFINE
7423           will set it to PACKAGE, which is automake's idea of the name of
7424           the source project.
7425
7426 2005-09-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7427
7428         * Makefile.am:
7429         * autogen.sh:
7430         * configure.ac:
7431         * docs/Makefile.am:
7432         * docs/faq/Makefile.am:
7433         * docs/gst/tmpl/gstelement.sgml:
7434         * docs/gst/tmpl/gsttypes.sgml:
7435         * docs/htmlinstall.mak:
7436         * docs/manual/Makefile.am:
7437         * docs/pwg/Makefile.am:
7438           reorganize doc build a little
7439           split out docbook and gtk-doc stuff
7440           have two separate --enable's and enable them through autogen
7441           but disable by default in configure (to be similar to other
7442           projects)
7443         * gstreamer.spec.in:
7444           clean up docs install
7445         * po/af.po:
7446         * po/az.po:
7447         * po/ca.po:
7448         * po/cs.po:
7449         * po/de.po:
7450         * po/en_GB.po:
7451         * po/fr.po:
7452         * po/it.po:
7453         * po/nb.po:
7454         * po/nl.po:
7455         * po/ru.po:
7456         * po/sq.po:
7457         * po/sr.po:
7458         * po/sv.po:
7459         * po/tr.po:
7460         * po/uk.po:
7461         * po/vi.po:
7462           translation updates
7463
7464 2005-09-03  Tim-Philipp Müller  <tim at centricular dot net>
7465
7466         * gst/base/gstbasesink.c: (gst_base_sink_pad_buffer_alloc):
7467           Add comment.
7468           
7469         * gst/elements/gstfakesink.c: (gst_fake_sink_init),
7470         (gst_fake_sink_change_state):
7471           Make state change function thread-safe.
7472           
7473         * gst/gstpad.c: (gst_pad_alloc_buffer):
7474           Set offset on generic buffer allocated by fallback.
7475
7476 2005-09-03  Stefan Kost  <ensonic@users.sf.net>
7477
7478         * docs/gst/gstreamer-sections.txt:
7479         * docs/gst/tmpl/gstelement.sgml:
7480         * gst/gstpad.c:
7481         * libs/gst/controller/gst-controller.c:
7482         (gst_controlled_property_set_interpolation_mode),
7483         (gst_controlled_property_new),
7484         (gst_controller_find_controlled_property):
7485          run the wingo-magic script against the docs
7486
7487 2005-09-02  Stefan Kost  <ensonic@users.sf.net>
7488
7489         * docs/gst/gstreamer-docs.sgml:
7490         * docs/gst/gstreamer-sections.txt:
7491         * docs/gst/tmpl/.cvsignore:
7492         * docs/gst/tmpl/gstelementdetails.sgml:
7493         * docs/gst/tmpl/gstelementfactory.sgml:
7494         * gst/gst.c:
7495         * gst/gstbus.c:
7496         * gst/gstelementfactory.c:
7497         * gst/gstelementfactory.h:
7498           merged elementdetails docs into elementfactory docs
7499           inlined both
7500
7501 2005-09-02  Andy Wingo  <wingo@pobox.com>
7502
7503         * gst/gstelement.h: Add magical pixie dust to make glib-mkenums
7504         consider this enum an enum and not a flags.
7505
7506 2005-09-02  Stefan Kost  <ensonic@users.sf.net>
7507
7508         * docs/gst/gstreamer-docs.sgml:
7509         * docs/gst/tmpl/.cvsignore:
7510         * docs/gst/tmpl/gstghostpad.sgml:
7511         * docs/gst/tmpl/gstiterator.sgml:
7512         * docs/gst/tmpl/gstmacros.sgml:
7513         * docs/gst/tmpl/gstrealpad.sgml:
7514         * docs/gst/tmpl/gstregistry.sgml:
7515         * docs/gst/tmpl/gstregistrypool.sgml:
7516         * docs/gst/tmpl/gststructure.sgml:
7517         * docs/gst/tmpl/gstsystemclock.sgml:
7518         * docs/gst/tmpl/gsttrace.sgml:
7519         * gst/gstghostpad.c:
7520         * gst/gstmacros.h:
7521         * gst/gstmemchunk.c:
7522         * gst/gstmemchunk.h:
7523         * gst/gstqueue.c:
7524         * gst/gstregistry.c:
7525         * gst/gstregistrypool.c:
7526         * gst/gststructure.c:
7527         * gst/gstsystemclock.c:
7528           more docs inlined
7529
7530 2005-09-02  Andy Wingo  <wingo@pobox.com>
7531
7532         * gst/gstelement.h (GstState): Renamed from GstElementState,
7533         changed to be a normal enum instead of flags.
7534         (GstStateChangeReturn): Renamed from GstElementStateReturn, names
7535         munged to be GST_STATE_CHANGE_*.
7536         (GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
7537         work with the new state representation.
7538         (GstStateChange): New enumeration of possible state transitions.
7539         Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
7540         (GstElementClass::change_state): Pass the GstStateChange along as
7541         an argument. Helps language bindings, so they don't have to use
7542         tricky lock-needing macros like GST_STATE_CHANGE ().
7543
7544         * scripts/update-states (file): New script. Run it on a file to
7545         update it for state naming and API changes. Updates files in
7546         place.
7547
7548         * All files updated for the new API.
7549
7550 2005-09-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7551
7552         * gst/gsttrace.c: (gst_trace_flush), (gst_trace_text_flush):
7553         * gst/gstutils.c: (gst_util_set_value_from_string),
7554         (gst_util_set_object_arg):
7555           fix a bunch of unchecked return values
7556         * tools/gst-complete.c: (main):
7557         * gstreamer.spec.in:
7558           clean up a little
7559
7560 2005-09-01  Wim Taymans  <wim@fluendo.com>
7561
7562         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
7563         (gst_base_sink_event), (gst_base_sink_do_sync),
7564         (gst_base_sink_handle_event):
7565         * gst/base/gstbasesink.h:
7566         Handle newsegments more correctly.
7567
7568         * gst/gstbus.c:
7569         Fix docs.
7570
7571         * gst/gstevent.c: (gst_event_new_newsegment):
7572         A newsegment cannot have a start_time of -1
7573
7574 2005-09-01  Tim-Philipp Müller  <tim at centricular dot net>
7575
7576         * win32/gstenumtypes.c:
7577         * win32/gstenumtypes.h:
7578           Update
7579
7580 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
7581
7582         * libs/gst/controller/gst-controller.c:
7583         (gst_controlled_property_set_interpolation_mode),
7584         (gst_controlled_property_new):
7585          fixed boolean again
7586
7587 2005-08-31  Thomas Vander Stichele  <thomas at apestaart dot org>
7588
7589         * docs/faq/gst-uninstalled:
7590           add -good
7591         * gst/gstevent.c:
7592         * gst/gstevent.h:
7593           remove wrong docs
7594         * gst/gstutils.c: (gst_element_link_filtered):
7595         * gst/gstutils.h:
7596           add gst_element_link_filtered
7597
7598 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
7599
7600         * docs/gst/gstreamer-docs.sgml:
7601         * docs/gst/gstreamer-sections.txt:
7602         * docs/gst/tmpl/.cvsignore:
7603         * docs/gst/tmpl/gsterror.sgml:
7604         * docs/gst/tmpl/gstfilter.sgml:
7605         * docs/gst/tmpl/gsturihandler.sgml:
7606         * docs/gst/tmpl/gsturitype.sgml:
7607         * docs/gst/tmpl/gstutils.sgml:
7608         * docs/gst/tmpl/gstxml.sgml:
7609         * gst/gsterror.c:
7610         * gst/gsterror.h:
7611         * gst/gstfilter.c:
7612         * gst/gsturi.c:
7613         * gst/gsturitype.c:
7614         * gst/gstutils.c:
7615         * gst/gstxml.c:
7616           inlined more docs, fixed double id-ref
7617
7618 2005-08-31  Wim Taymans  <wim@fluendo.com>
7619
7620         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
7621         (gst_base_transform_handle_buffer):
7622         Passthrough elements don't need the caps as they don't care.
7623
7624 2005-08-31  Wim Taymans  <wim@fluendo.com>
7625
7626         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
7627         (gst_base_transform_handle_buffer), (gst_base_transform_chain):
7628         Don't leak refcounts on buffers.
7629
7630 2005-08-31  Wim Taymans  <wim@fluendo.com>
7631
7632         * gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
7633         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
7634         (gst_base_transform_chain), (gst_base_transform_change_state):
7635         * gst/base/gstbasetransform.h:
7636         Handle the case where we are not negotiated more gracefully.
7637
7638 2005-08-31  Tim-Philipp Müller  <tim at centricular dot net>
7639
7640         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
7641         (gst_file_src_map_region):
7642           Set READONLY flag on mmap'ed buffers, otherwise
7643           gst_buffer_make_writable() won't work properly (#314708).
7644
7645 2005-08-31  Wim Taymans  <wim@fluendo.com>
7646
7647         * gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
7648         passthrough elements can even do inplace on non writable
7649         buffers (as they don't touch them).
7650
7651 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
7652
7653         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
7654         (gst_test_mono_source_set_property),
7655         (gst_test_mono_source_class_init), (GST_START_TEST),
7656         (gst_controller_suite):
7657           more tests (hehe I have the most)
7658         * gst/gstbus.c:
7659           describe popping messages whenusing mulltiple sources
7660         * libs/gst/controller/gst-controller.c:
7661         (gst_controlled_property_set_interpolation_mode),
7662         (gst_controlled_property_new):
7663         * libs/gst/controller/gst-controller.h:
7664         * libs/gst/controller/gst-interpolation.c:
7665           implement boolean properties
7666
7667 2005-08-31  Wim Taymans  <wim@fluendo.com>
7668
7669         * gst/gstminiobject.c: (gst_mini_object_ref):
7670         Cannot assert that the refcount has to be positive
7671         since a disposed object can be resurrected.
7672
7673 2005-08-31  Wim Taymans  <wim@fluendo.com>
7674
7675         * gst/gstpad.c: (gst_pad_init):
7676         Revert change, need to first fix badly behaving 
7677         apps.
7678
7679 2005-08-30  Wim Taymans  <wim@fluendo.com>
7680
7681         * check/elements/fakesrc.c: (setup_fakesrc):
7682         * check/elements/identity.c: (setup_identity):
7683         Activate pads before using them.
7684
7685 2005-08-30  Wim Taymans  <wim@fluendo.com>
7686
7687         * gst/base/gstadapter.c: (gst_adapter_flush):
7688         Flushing out 0 bytes is ok for this function.
7689
7690         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
7691         no newsegment gives a warning and sets the start/stop to 
7692         invalid.
7693
7694         * gst/base/gstbasetransform.c: (gst_base_transform_change_state),
7695         (gst_base_transform_set_passthrough):
7696         Some debug info.
7697
7698         * gst/gstminiobject.c: (gst_mini_object_ref):
7699         Check refcount here too.
7700
7701         * gst/gstpad.c: (gst_pad_init):
7702         Pads are initially flushing and refusing data.
7703
7704         * gst/gstutils.c: (gst_element_link_pads_filtered):
7705         When adding a capsfilter element make sure it has the
7706         same state as the parent bin.
7707
7708 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
7709
7710         * docs/gst/tmpl/.cvsignore:
7711         * docs/gst/tmpl/gstformat.sgml:
7712         * docs/gst/tmpl/gstversion.sgml:
7713         * gst/gstbus.h:
7714         * gst/gstformat.c:
7715         * gst/gstformat.h:
7716         * gst/gstversion.h.in:
7717           more docs and two more inlined
7718
7719 2005-08-30  Wim Taymans  <wim@fluendo.com>
7720
7721         * gst/elements/gstfilesink.c: (gst_file_sink_class_init):
7722         Don't sync to clock.
7723
7724 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
7725
7726         * docs/gst/gstreamer-sections.txt:
7727           ultral33t func10ns deserve to appear in the docs actually
7728         * docs/gst/tmpl/.cvsignore:
7729         * docs/gst/tmpl/gstcompat.sgml:
7730         * docs/gst/tmpl/gstconfig.sgml:
7731         * gst/check/gstcheck.c:
7732         * gst/gstcompat.h:
7733         * gst/gstconfig.h.in:
7734           inlined more docs
7735
7736 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
7737
7738         * docs/gst/tmpl/.cvsignore:
7739         * docs/gst/tmpl/gstquery.sgml:
7740         * docs/gst/tmpl/gstutils.sgml:
7741         * gst/gstquery.c:
7742         * gst/gstquery.h:
7743           inlined and extended docs
7744
7745 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
7746
7747         * check/gst-libs/controller.c: (GST_START_TEST),
7748         (gst_controller_suite):
7749           more tests
7750         * docs/gst/tmpl/gstutils.sgml:
7751         * docs/libs/gstreamer-libs-sections.txt:
7752         * docs/libs/tmpl/gstdataprotocol.sgml:
7753           include path fixes
7754         * examples/controller/audio-example.c: (main):
7755           controller example works now
7756         * gst/gstclock.h:
7757           doc fixes
7758         * tools/gst-inspect.c: (print_element_properties_info):
7759           show param spec flags
7760
7761 2005-08-29  Andy Wingo  <wingo@pobox.com>
7762
7763         * gst/gstutils.c (gst_util_uint64_scale): New 3733t funct10n.
7764
7765 2005-08-28  Andy Wingo  <wingo@pobox.com>
7766
7767         * gst/gstutils.h (GST_BOILERPLATE_FULL): Prototype instance_init
7768         as having two arguments instead of just one. Allows superclasses
7769         to access information on subclasses -- see the terrible for() loop
7770         in gtype.c:g_type_create_instance for the reason why. All callers
7771         changed.
7772
7773 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
7774
7775         * docs/design/part-messages.txt:
7776           update info
7777         * docs/gst/tmpl/.cvsignore:
7778         * docs/gst/tmpl/gstcaps.sgml:
7779         * docs/gst/tmpl/gstclock.sgml:
7780         * gst/gstbus.c:
7781         * gst/gstcaps.c:
7782         * gst/gstcaps.h:
7783         * gst/gstclock.c:
7784         * gst/gstclock.h:
7785         * gst/gstmessage.c:
7786           added descriptions for bus and message
7787           inline caps and clock docs
7788
7789 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
7790
7791         * gst/gstmessage.c:
7792         * gst/gstmessage.h:
7793           doc fixes
7794
7795 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
7796
7797         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
7798           fix div-by-zero
7799
7800 2005-08-26  Andy Wingo  <wingo@pobox.com>
7801
7802         * check/pipelines/simple_launch_lines.c (run_pipeline): Check
7803         element_set_state's return val.
7804         (test_2_elements): Add test that's been disabled for months.
7805
7806         * gst/elements/gstfakesink.c: Cleanups. Add can-activate-push and
7807         can-activate-pull properties.
7808
7809         * gst/elements/gstfakesrc.c: Cleanups. Add can-activate-push and
7810         can-activate-pull properties. Implement is_seekable so fakesrc can
7811         operate in pull mode.
7812
7813         * gst/base/gstbasesink.c (GstBaseSink): Remove has-loop, has-chain
7814         properties.
7815         (gst_base_sink_activate, gst_base_sink_activate_pull)
7816         (gst_base_sink_activate_push): Make activation mode choosing work.
7817         Cleanups.
7818         (gst_base_sink_chain, gst_base_sink_loop): Assert activation mode
7819         is right. Make pull mode work. Post an eos before pausing in pull
7820         mode.
7821         (gst_base_sink_change_state): Pay attention to the core's
7822         change_state() return val.
7823         
7824         * gst/base/gstbasesrc.c (GstBaseSrc): Remove has-loop,
7825         has-getrange properties. Cleanups.
7826         
7827         * gst/base/gstbasesrc.h (GstBaseSrc): Remove has_loop,
7828         has_getrange and replace with can_activate_pull and
7829         can_activate_push.
7830
7831         * gst/base/gstbasesink.h (GstBaseSink): Rearrange fields, add
7832         locking comments. Remove has_loop, has_chain and replace with
7833         can_activate_pull and can_activate_push.
7834
7835 2005-08-26  Jan Schmidt  <thaytan@mad.scientist.com>
7836
7837         * configure.ac:
7838         * examples/Makefile.am:
7839         * examples/metadata/Makefile.am:
7840         * examples/metadata/read-metadata.c: (message_loop),
7841         (have_pad_handler), (make_pipeline), (print_tag), (main):
7842           Add metadata reading example that loops over a list of filenames,
7843           dumping any tags found.
7844
7845         * gst/gstbus.c: (gst_bus_dispose):
7846         * gst/gstelement.c: (gst_element_dispose):
7847           Release a few potentially-held references in dispose.
7848
7849 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
7850
7851         * docs/gst/tmpl/gstminiobject.sgml:
7852           do *not* add tmpl/*.sgml files to CVS!
7853
7854 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
7855
7856         * libs/gst/bytestream/.cvsignore:
7857         * libs/gst/bytestream/Makefile.am:
7858         * libs/gst/bytestream/adapter.c:
7859         * libs/gst/bytestream/adapter.h:
7860         * libs/gst/bytestream/bytestream.c:
7861         * libs/gst/bytestream/bytestream.h:
7862         * libs/gst/bytestream/filepad.c:
7863         * libs/gst/bytestream/filepad.h:
7864           removing obsolete files
7865
7866 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
7867
7868         * docs/gst/gstreamer-docs.sgml:
7869         * docs/libs/gstreamer-libs-docs.sgml:
7870           disabed additional index entries again, as this makes docs-gen just
7871           slow and they aren't useful yet
7872         * docs/libs/gstreamer-libs-sections.txt:
7873           little -section.txt cleanup for libs
7874
7875 2005-08-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7876
7877         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
7878         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
7879           fix up some debugging
7880         (gst_base_transform_get_unit_size),
7881         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
7882         (gst_base_transform_handle_buffer):
7883         * gst/base/gstbasetransform.h:
7884           handle and store timed NEWSEGMENT events so that subclasses that
7885           calculate time by counting samples have a segment_start time they
7886           need to add to their timestamps - see audioresample
7887
7888 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
7889
7890         * gst/gstbin.h:
7891           removed ';' from the end of macro defs
7892         * docs/gst/gstreamer-docs.sgml:
7893         * docs/gst/gstreamer-sections.txt:
7894         * docs/gst/tmpl/.cvsignore:
7895         * gst/gstbus.h:
7896         * gst/gstelement.c: (gst_element_class_init),
7897         (gst_element_set_state), (activate_pads),
7898         (gst_element_save_thyself):
7899         * gst/gstevent.c: (gst_event_new_newsegment):
7900         * gst/gstevent.h:
7901         * gst/gstiterator.c:
7902         * gst/gstiterator.h:
7903         * gst/gstpad.c:
7904         * gst/gstprobe.h:
7905         * gst/gstutils.c: (gst_pad_query_convert):
7906         * gst/gstutils.h:
7907           fixed parameter name mismatches between source, header and docs
7908           added some more docs, resolved the last batch of unused elements in
7909           docs (now someone needs to doc them)
7910
7911 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7912
7913         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
7914         * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
7915           don't walk through the plugins backwards.  Where is all this
7916           reversed logic coming from ?
7917
7918 2005-08-25  Wim Taymans  <wim@fluendo.com>
7919
7920         * gst/base/gstbasetransform.c: (gst_base_transform_init),
7921         (gst_base_transform_transform_size),
7922         (gst_base_transform_configure_caps),
7923         (gst_base_transform_get_unit_size),
7924         (gst_base_transform_buffer_alloc),
7925         (gst_base_transform_change_state):
7926         * gst/base/gstbasetransform.h:
7927         Cache caps unit_size.
7928         Make sure we cannot negotiate up and downstream at the
7929         same time.
7930
7931 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7932
7933         * gst/gst.c: (init_pre), (init_post):
7934           register the installed plugin path after the env var
7935         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
7936         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
7937           don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
7938           directories, so the tests can prefer uninstalled over installed
7939
7940 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7941
7942         * gst/base/gstbasetransform.h:
7943           comment
7944         * gst/gstpad.c:
7945           add to docs
7946
7947 2005-08-25  Wim Taymans  <wim@fluendo.com>
7948
7949         * gst/gstbin.c: (bin_bus_handler):
7950         Be a bit more conservative about the posted message.
7951         
7952         * gst/gstbus.c: (gst_bus_post):
7953         Some cleanups, warn wrong return values.
7954
7955 2005-08-25  Jan Schmidt  <thaytan@mad.scientist.com>
7956
7957         * check/gst/gstbin.c: (GST_START_TEST):
7958         * gst/gstbin.c: (bin_bus_handler):
7959         * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
7960         (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
7961         (gst_message_new_warning), (gst_message_new_tag),
7962         (gst_message_new_state_changed), (gst_message_new_segment_start),
7963         (gst_message_new_segment_done), (gst_message_new_custom):
7964         * gst/gstmessage.h:
7965         * tools/gst-launch.c: (event_loop):
7966         * tools/gst-md5sum.c: (event_loop):
7967           Revert unpopular change for GST_MESSAGE_SRC to GObject.
7968
7969 2005-08-25  Wim Taymans  <wim@fluendo.com>
7970
7971         * check/generic/states.c: (GST_START_TEST):
7972         Cleanup can be done at the end.
7973
7974         * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
7975         (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
7976         (gst_task_get_state), (gst_task_start), (gst_task_pause):
7977         Oh boy.. Thanks for finding this, Thomas. 
7978
7979 2005-08-25  Stefan Kost  <ensonic@users.sf.net>
7980
7981         * docs/gst/gstreamer.types:
7982           added missing types
7983
7984 2005-08-25  Stefan Kost  <ensonic@users.sf.net>
7985
7986         * docs/gst/gstreamer-docs.sgml:
7987         * docs/gst/gstreamer-sections.txt:
7988         * docs/gst/tmpl/.cvsignore:
7989         * gst/gstbin.c:
7990         * gst/gstiterator.c:
7991         * gst/gstutils.c:
7992         * gst/registries/gstxmlregistry.h:
7993           added missing classes and symbols (123 more to go)
7994           removed removed symbols from section file
7995           fixed many doc-comments
7996
7997 2005-08-24  Wim Taymans  <wim@fluendo.com>
7998
7999         * check/generic/states.c: (GST_START_TEST):
8000         Make sure all tasks are stopped.
8001
8002         * check/gst/gstbin.c: (GST_START_TEST):
8003         Unref after usage for proper valgrinding.
8004
8005         * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
8006         Really wait for the task to stop before destroying the
8007         mutex.
8008
8009         * gst/gstqueue.c: (gst_queue_sink_activate_push),
8010         (gst_queue_src_activate_push):
8011         Small cleanups. Don't stop the task when we did not start
8012         it.
8013
8014         * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
8015         (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
8016         (gst_task_get_state), (gst_task_start), (gst_task_pause),
8017         (gst_task_join):
8018         * gst/gsttask.h:
8019         Protect the stream lock with the object lock.
8020         Disallow setting the stream lock when running.
8021         Add cleanup_all to wait for the threadpool to finish.
8022         Remove code to autoallocate a mutex if none was provided.
8023         Add _join() to wait for a task to stop.
8024         Protect the thread pool with a global lock.
8025
8026 2005-08-24  Wim Taymans  <wim@fluendo.com>
8027
8028         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8029         (gst_base_sink_get_times), (gst_base_sink_do_sync),
8030         (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
8031         * gst/base/gstbasesink.h:
8032         Handle newsegment events correctly.
8033         Drop buffers out of the segment range.
8034
8035 2005-08-22  Andy Wingo  <wingo@pobox.com>
8036
8037         * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
8038         macro, implements an interface and gstimplementsinterface for a
8039         new type.
8040
8041 2005-08-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8042
8043         * check/Makefile.am:
8044         * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
8045           add a test that does a bunch of state changes on elements
8046           needs some fixing for valgrind
8047         * check/states/sinks.c: (gst_object_suite):
8048           whitespace
8049         * gst/gstcaps.h:
8050           add prototype for gst_caps_is_equal_fixed
8051         * gst/gstplugin.c:
8052         * gst/gstregistrypool.c:
8053           doc fixes
8054
8055 2005-08-24  Andy Wingo  <wingo@pobox.com>
8056
8057         * gst/gstquery.c (gst_query_new_convert): Spew if we try to
8058         convert a negative value. Doesn't make much sense. Mostly this is
8059         here to force callers to ensure -1 maps to -1.
8060
8061 2005-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
8062
8063         * docs/pwg/advanced-types.xml:
8064           Well done to Michael for catching my deliberate introduction
8065           of this spelling mistake. 
8066         * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
8067         * gst/gstelement.h:
8068           Add GST_ELEMENT_UNPARENTING to prevent races so that we can
8069           unlink pads before removing the element from the bin.
8070
8071 2005-08-24  Andy Wingo  <wingo@pobox.com>
8072
8073         * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
8074         the same thing as GST_DEBUG=*:4.
8075         (parse_debug_level, parse_debug_category): New helper parsers.
8076
8077 2005-08-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8078
8079         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
8080         (gst_base_transform_transform_size), (gst_base_transform_getcaps),
8081         (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
8082         (gst_base_transform_buffer_alloc),
8083         (gst_base_transform_handle_buffer):
8084           use gboolean return values and pointers to size so we can use the
8085           full GST_BUFFER_SIZE range (guint) for buffer sizes
8086           use GstPadDirection for transform_caps
8087         * gst/base/gstbasetransform.h:
8088           rename get_size to get_unit_size since that's what it is
8089         * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
8090           use GstPadDirection for transform_caps
8091         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
8092         * gst/gstutils.h:
8093           cleanup and debugging
8094
8095 2005-08-24  Stefan Kost  <ensonic@users.sf.net>
8096
8097         * gst/gstelement.c: (gst_element_class_init),
8098         (gst_element_set_state), (activate_pads),
8099         (gst_element_save_thyself):
8100         * tools/gst-compprep.c: (main):
8101         * tools/gst-inspect.c: (print_element_properties_info):
8102         * tools/gst-xmlinspect.c: (print_element_properties):
8103           Fixed long standing mem-leak
8104
8105 2005-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
8106
8107         * check/gst/gstbin.c: (GST_START_TEST):
8108         * gst/gstbin.c: (bin_bus_handler):
8109         * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
8110         (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
8111         (gst_message_new_warning), (gst_message_new_tag),
8112         (gst_message_new_state_changed), (gst_message_new_segment_start),
8113         (gst_message_new_segment_done), (gst_message_new_custom):
8114         * gst/gstmessage.h:
8115         * tools/gst-launch.c: (event_loop):
8116         * tools/gst-md5sum.c: (event_loop):
8117           Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
8118           that applications can sensibly post custom messages with references
8119           to their own objects.
8120
8121 2005-08-24  Andy Wingo  <wingo@pobox.com>
8122
8123         * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
8124         already.
8125
8126 2005-08-24  Wim Taymans  <wim@fluendo.com>
8127
8128         * gst/base/gstbasetransform.c: (gst_base_transform_init),
8129         (gst_base_transform_transform_caps),
8130         (gst_base_transform_transform_size),
8131         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
8132         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
8133         (gst_base_transform_handle_buffer):
8134         * gst/base/gstbasetransform.h:
8135         Many fixes and new features added by Thomas. Can now also do
8136         transforms with variable sizes and a custom fixate_caps function.
8137
8138 2005-08-24  Wim Taymans  <wim@fluendo.com>
8139
8140         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
8141         Some debugging.
8142
8143         * gst/gstclock.h:
8144         Cast to ClockTime before formatting to time.
8145
8146         * gst/gstutils.h:
8147         Cleanups.
8148
8149 2005-08-24  Stefan Kost  <ensonic@users.sf.net>
8150
8151         * check/gst-libs/controller.c: (GST_START_TEST),
8152         (gst_controller_suite):
8153         * docs/gst/tmpl/gstcaps.sgml:
8154         * docs/gst/tmpl/gstghostpad.sgml:
8155         * docs/gst/tmpl/gstquery.sgml:
8156         * docs/gst/tmpl/gstutils.sgml:
8157         * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
8158         (gst_object_sink_values), (gst_object_get_value_arrays),
8159         (gst_object_get_value_array):
8160           gracefully handle helper method calls to objects that are not beeing
8161           controlled, added test case for that          
8162
8163 2005-08-23  Wim Taymans  <wim@fluendo.com>
8164
8165         * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
8166         (gst_event_new_newsegment), (gst_event_parse_newsegment),
8167         (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
8168         (gst_event_parse_qos), (gst_event_new_seek),
8169         (gst_event_parse_seek):
8170         * gst/gstevent.h:
8171         Some more debugging output and doc cleanups.
8172
8173         * gst/gstqueue.c: (gst_queue_handle_sink_event):
8174         Fix possible deadlock.
8175
8176 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
8177
8178         * docs/gst/gstreamer-docs.sgml:
8179         * docs/gst/gstreamer-sections.txt:
8180         * docs/gst/gstreamer.types:
8181         * docs/gst/tmpl/.cvsignore:
8182         * gst/gstbin.h:
8183         * gst/gstbus.c:
8184         * gst/gstelement.c:
8185         * gst/gstevent.h:
8186           added 100 symbols from gstreamer-unused.txt to the right sections
8187           fixed more broken comments
8188           added GstBus to docs
8189
8190 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
8191
8192         * docs/gst/gstreamer-sections.txt:
8193         * docs/gst/tmpl/.cvsignore:
8194         * docs/gst/tmpl/gstbin.sgml:
8195         * docs/gst/tmpl/gstbuffer.sgml:
8196         * gst/base/gstbasesrc.c:
8197         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
8198         * gst/gstbuffer.c:
8199         * gst/gstbuffer.h:
8200         * tools/gst-launch.1.in:
8201           inlined more doc comments, added missing comments and fixed comments
8202           fixed typos
8203
8204 2005-08-23  Thomas Vander Stichele  <thomas at apestaart dot org>
8205
8206         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
8207           some debugging
8208         * gst/gstcaps.h:
8209           whitespace fixes
8210         * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
8211           more debugging
8212         * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
8213         * gst/gststructure.h:
8214           add a fixate function for booleans; add a FIXME that these func
8215           names should probably be gst_structure_fixate_*
8216
8217 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
8218
8219         * docs/gst/gstreamer-docs.sgml:
8220         * docs/gst/gstreamer-sections.txt:
8221         * gst/Makefile.am:
8222         * gst/gstbin.c: (gst_bin_get_type),
8223         (gst_bin_child_proxy_get_child_by_index),
8224         (gst_bin_child_proxy_get_children_count),
8225         (gst_bin_child_proxy_init):
8226         * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
8227         (gst_child_proxy_get_child_by_index),
8228         (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
8229         (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
8230         (gst_child_proxy_get), (gst_child_proxy_set_property),
8231         (gst_child_proxy_set_valist), (gst_child_proxy_set),
8232         (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
8233         (gst_child_proxy_base_init), (gst_child_proxy_get_type):
8234         * gst/gstchildproxy.h:
8235         * gst/parse/grammar.y:
8236         * tools/gst-inspect.c: (print_interfaces),
8237         (print_element_properties_info), (print_element_info):
8238           ported gstchildproxy over from 0.8
8239           ported gst-inspect fixes and enhancements over from 0.8
8240
8241 2005-08-22  Wim Taymans  <wim@fluendo.com>
8242
8243         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
8244         (gst_base_transform_handle_buffer):
8245         Also call the transform function if we have ANY caps.
8246
8247         * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
8248         Fix debug info.
8249
8250 2005-08-22  Jan Schmidt  <thaytan@mad.scientist.com>
8251
8252         * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
8253           Don't pretend to handle seek events if the source is not seekable
8254
8255 2005-08-22  Jan Schmidt  <thaytan@mad.scientist.com>
8256
8257         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
8258           Remove extra parameter to debug output
8259
8260         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
8261         (gst_base_src_do_seek), (gst_base_src_activate_push):
8262           Fix seek event handling.
8263
8264         * gst/gstpipeline.c: (gst_pipeline_change_state):
8265         * gst/gstqueue.c: (gst_queue_handle_sink_event),
8266         (gst_queue_src_activate_push):
8267           Don't start the src pad task on FLUSH_STOP if the pad
8268           isn't linked.
8269           Debug changes.
8270
8271 2005-08-22  Wim Taymans  <wim@fluendo.com>
8272
8273         * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
8274         Added check for gst_static_caps_get() refcounting.
8275
8276 2005-08-22  Wim Taymans  <wim@fluendo.com>
8277
8278         * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
8279         Make _static_caps_get() refcounting sane.
8280         
8281         * gst/gstelement.c: (gst_element_set_state):
8282         Add g_return_val_if_fail() to protect against segfaults.
8283
8284 2005-08-22  Stefan Kost  <ensonic@users.sf.net>
8285
8286         * docs/gst/tmpl/gstevent.sgml:
8287         * gst/gstevent.c:
8288         * gst/gstevent.h:
8289           inlined remaining docs, added missing doc comments
8290
8291 2005-08-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8292
8293         * check/gst/gstbin.c: (GST_START_TEST):
8294           since we don't know when preroll is done, use refcount range
8295           check for the sink
8296         * gst/check/gstcheck.h:
8297           add macro for checking refcount range
8298
8299 2005-08-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8300
8301         * check/Makefile.am:
8302           clean up environment for when registry gets built versus
8303           when actual tests are run; valgrind seems to not report
8304           leaks if GST_PLUGIN_PATH is set to some specific values
8305         * check/gst/gstbin.c: (GST_START_TEST):
8306           add more refcounting checks; maybe this exposes a
8307           preroll lock bug ?
8308         * common/check.mak:
8309         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
8310         * gst/check/gstcheck.h:
8311         * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
8312         (gst_bin_change_state):
8313         * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
8314           add/fix debugging/whitespace
8315
8316 2005-08-21  Jan Schmidt  <thaytan@mad.scientist.com>
8317
8318         * check/gst/gstevent.c: (event_probe), (test_event),
8319         (GST_START_TEST):
8320          Er, don't call gst_bin_watch_for_state_change you idiot.
8321
8322 2005-08-21  Jan Schmidt  <thaytan@mad.scientist.com>
8323
8324         * check/Makefile.am:
8325           Use CHECK_CFLAGS and CHECK_LIBS
8326         * check/gst/gstevent.c: (event_probe), (test_event),
8327         (GST_START_TEST):
8328           Don't leak events.
8329         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
8330         (gst_base_src_start), (gst_base_src_stop),
8331         (gst_base_src_activate_push), (gst_base_src_activate_pull),
8332         (gst_base_src_change_state):
8333           Sprinkle gst_base_src_stop liberally around error paths to fix
8334           problems reusing a source after failed state changes.
8335         * gst/base/gsttypefindhelper.c: (helper_find_peek),
8336         (helper_find_suggest), (gst_type_find_helper):
8337           Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
8338         * gst/gstevent.h:
8339         * docs/gst/tmpl/gstevent.sgml:
8340           Migrate part of the docs from the SGML file. Wait for ensonic to
8341           tell me how I did it wrong ;)
8342         * tools/gst-typefind.c: (main):
8343           Extra robustness to state changes between files.
8344
8345 2005-08-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8346
8347         * check/Makefile.am:
8348           don't valgrind the controller test - it's leaking - Stefan, HELP
8349         * gst/check/gstcheck.c: (gst_check_message_error),
8350         (gst_check_chain_func), (gst_check_setup_element),
8351         (gst_check_teardown_element), (gst_check_setup_src_pad),
8352         (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
8353         (gst_check_teardown_sink_pad):
8354         * gst/check/gstcheck.h:
8355           add a bunch of methods to set up elements, and src and sink pads
8356         * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
8357         * check/elements/identity.c: (setup_identity), (cleanup_identity),
8358         (GST_START_TEST):
8359           use them
8360         * gst/gstmessage.c:
8361         * gst/gsttag.h:
8362           whitespace/doc fixes
8363
8364 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8365
8366         * gst/gstelement.h:
8367           make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
8368           be handled by the application and not always printed as well
8369
8370 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8371
8372         * check/Makefile.am:
8373           set GST_TOOLS_DIR
8374         * gst/check/gstcheck.c: (gst_check_message_error):
8375         * gst/check/gstcheck.h:
8376           add a fail_unless_equals_int
8377           add fail_unless for error messages
8378
8379 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8380
8381         * check/Makefile.am:
8382         * check/gst.supp:
8383         * common/Makefile.am:
8384         * common/check.mak:
8385         * common/gst.supp:
8386           factor out some of the common stuff so we can use it
8387
8388 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8389
8390         * check/Makefile.am:
8391         * check/gst/gstiterator.c: (GST_START_TEST):
8392         * check/gst/gstsystemclock.c: (GST_START_TEST),
8393         (gst_systemclock_suite):
8394         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
8395         * gst/gstclock.c:
8396           valgrind more tests
8397
8398 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8399
8400         * check/elements/.cvsignore:
8401         * check/elements/gstfakesrc.c:
8402           rename to name of element
8403         * check/elements/identity.c: (chain_func), (event_func),
8404         (setup_identity), (cleanup_identity), (GST_START_TEST),
8405         (identity_suite), (main):
8406           add a test for identity
8407         * check/Makefile.am:
8408         * pkgconfig/Makefile.am:
8409         * pkgconfig/gstreamer-check.pc.in:
8410         * pkgconfig/gstreamer-check-uninstalled.pc.in:
8411         * gst/check:
8412         * gst/Makefile.am:
8413         * configure.ac:
8414           move the check stuff to a library that gets installed
8415         * check/gst-libs/controller.c: (GST_START_TEST):
8416         * check/gst-libs/gdp.c:
8417         * check/gst/gst.c: (GST_START_TEST):
8418         * check/gst/gstbin.c:
8419         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
8420         * check/gst/gstbus.c:
8421         * check/gst/gstcaps.c: (GST_START_TEST):
8422         * check/gst/gstelement.c:
8423         * check/gst/gstghostpad.c:
8424         * check/gst/gstiterator.c:
8425         * check/gst/gstmessage.c:
8426         * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
8427         * check/gst/gstobject.c:
8428         * check/gst/gstpad.c: (GST_START_TEST):
8429         * check/gst/gststructure.c: (GST_START_TEST):
8430         * check/gst/gstsystemclock.c: (GST_START_TEST),
8431         (gst_systemclock_suite):
8432         * check/gst/gsttag.c: (gst_tag_suite):
8433         * check/gst/gstvalue.c:
8434         * check/pipelines/cleanup.c:
8435         * check/pipelines/simple_launch_lines.c:
8436         * check/states/sinks.c:
8437           change include statement
8438
8439         * docs/gst/gstreamer-sections.txt:
8440         * docs/gst/tmpl/gstpad.sgml:
8441           document more pad stuff
8442         * gst/gstminiobject.c: (gst_mini_object_ref),
8443         (gst_mini_object_unref):
8444           debug refcounting
8445
8446 2005-08-19  Stefan Kost  <ensonic@users.sf.net>
8447
8448         * docs/gst/tmpl/gst.sgml:
8449         * gst/gst.c:
8450           eliminate another tmpl file, fix spelling in the long-description
8451
8452 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
8453
8454         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
8455         (test_event), (timediff), (gstevents_suite):
8456           Should fix build on 64-bit arch's
8457
8458 2005-08-18  Andy Wingo  <wingo@pobox.com>
8459
8460         Make sure that when a pipeline goes to PLAYING, that data has
8461         actually hit the sink.
8462
8463         * check/states/sinks.c (test_sink): A sink that doesn't get any
8464         data shouldn't return SUCCESS for going to either PLAYING or
8465         PAUSED. Test also the return values on the way back down.
8466
8467         * gst/gstelement.c (gst_element_set_state): When changing the
8468         state of an element currently changing state asynchronously, go to
8469         lost-state after commiting the pending state. Makes future calls
8470         to get_state continue to return ASYNC.
8471
8472         * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
8473         ASYNC when going to PLAYING if we still don't have preroll, as can
8474         happen with live sources.
8475
8476 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
8477
8478         * docs/pwg/advanced-types.xml:
8479           Hack long paragraph into 2 chunks as a workaround for buggy
8480           jadetex version in sid and breezy that loops infinitely and
8481           eats all RAM.
8482
8483 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
8484
8485         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
8486         (test_event), (timediff), (gstevents_suite):
8487           Provide more error margin in clock measurements to allow for 
8488           g_get_current_time inaccuracies.
8489
8490 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
8491
8492         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
8493         (test_event), (timediff), (gstevents_suite):
8494            Fix error message output so I might be able to tell why the
8495            test works here but fails on the build farm.
8496
8497 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
8498
8499         * check/Makefile.am:
8500         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
8501         (test_event), (timediff), (gstevents_suite), (main):
8502           I wrote a test!
8503
8504         * docs/design/part-seeking.txt:
8505           Spelling correction
8506
8507         * docs/gst/tmpl/gstevent.sgml:
8508         * docs/gst/tmpl/gstfakesrc.sgml:
8509           Docs updates.
8510
8511         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
8512           Treat a buffer-without-newsegment the same as a receiving 
8513           a newsegment not in time format, and disable syncing to the clock
8514           with a warning.
8515
8516         * gst/gstbus.c: (gst_bus_set_sync_handler):
8517           Assert if anyone tries to replace the existing sync_handler for bus, 
8518           as only the owner should be setting it.
8519
8520         * gst/gstevent.h:
8521           Have a fixed set of custom event enums with events identified by
8522           their structure name (as in 0.8), rather than a free-for-all
8523           allowing collisions between enum values from different plugins.
8524
8525         * gst/gstpad.c: (gst_pad_class_init):
8526           Docs change.
8527           
8528         * gst/gstqueue.c: (gst_queue_handle_sink_event):
8529           Handle out-of-band downstream events from the sending thread.
8530
8531 2005-08-17  Andy Wingo  <wingo@pobox.com>
8532
8533         * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
8534         play-timeout==0 to mean no timeout at all. In that case, don't
8535         bother with a get_state or a warning, just return directly, even
8536         if it's ASYNC.
8537
8538         * gst/base/gstbasetransform.c: Debug changes.
8539
8540         * gst/gstutils.h:
8541         * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
8542         ensure bins post state change messages. A bit of a hack but I can't
8543         think of a way to avoid it.
8544
8545         * check/gst/gstbin.c (test_watch_for_state_change): Added test.
8546
8547 2005-08-16  Andy Wingo  <wingo@pobox.com>
8548
8549         * gst/base/gstadapter.h:
8550         * gst/base/gstadapter.c (gst_adapter_take): New function, like
8551         peek() but you own the data. Not terribly efficient atm.
8552
8553 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8554
8555         * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
8556         (gst_element_found_tags):
8557         * gst/gstutils.h:
8558           Add two utility functions for tag handling.
8559
8560 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8561
8562         * docs/manual/advanced-dataaccess.xml:
8563         * docs/manual/basics-helloworld.xml:
8564           Fix docs to use _bin_add() before _link(), which fixes the examples
8565           with recent core versions (reported by Madhan Raj M
8566           <raj_madan@rediffmail.com>, #313199).
8567
8568 2005-08-16  Wim Taymans  <wim@fluendo.com>
8569
8570         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
8571         Added subtract checks.
8572
8573         * docs/design/part-events.txt:
8574         Some more docs about newsegment
8575
8576         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
8577         Fix FIXME
8578
8579         * gst/gstcaps.c: (gst_caps_to_string):
8580         Add comments, cleanups.
8581         
8582         * gst/gstelement.c: (gst_element_save_thyself):
8583         cleanups
8584         
8585         * gst/gstvalue.c: (gst_value_collect_int_range),
8586         (gst_string_unwrap), (gst_value_union_int_int_range),
8587         (gst_value_union_int_range_int_range),
8588         (gst_value_intersect_int_int_range),
8589         (gst_value_intersect_int_range_int_range),
8590         (gst_value_intersect_double_double_range),
8591         (gst_value_intersect_double_range_double_range),
8592         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
8593         (gst_value_subtract_int_range_int),
8594         (gst_value_subtract_double_range_double),
8595         (gst_value_subtract_double_range_double_range),
8596         (gst_value_subtract_from_list), (gst_value_subtract_list),
8597         (gst_value_can_compare), (gst_value_compare_fraction):
8598         Cleanups, add comments, remove unneeded asserts.
8599
8600 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8601
8602         * tools/gst-launch.c: (event_loop):
8603           don't convert NULL structures to strings
8604
8605 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
8606
8607         * docs/gst/gstreamer-sections.txt:
8608           made some defines private
8609         * docs/gst/tmpl/gstconfig.sgml:
8610         * docs/gst/tmpl/gstqueue.sgml:
8611         * docs/gst/tmpl/gsttaglist.sgml:
8612         * docs/gst/tmpl/gsttypes.sgml:
8613         * docs/gst/tmpl/gstutils.sgml:
8614         * docs/pwg/appendix-porting.xml:
8615         * gst/base/gstbasesink.h:
8616         * gst/base/gstbasesrc.c:
8617         * gst/base/gstbasesrc.h:
8618         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
8619         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
8620         * gst/gstelement.c: (gst_element_class_init):
8621         * gst/gstpad.c: (gst_pad_class_init):
8622         * gst/gstqueue.c: (gst_queue_class_init):
8623         * gst/gstxml.c: (gst_xml_class_init):
8624           documented all undocumented signal inline
8625         * libs/gst/controller/gst-controller.h:
8626           added padding
8627
8628 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8629
8630         * docs/pwg/appendix-porting.xml:
8631           Document _set_link_function -> _set_setcaps_function.
8632
8633 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8634
8635         * check/Makefile.am:
8636           add a .check target for running the check
8637         * check/gst-libs/controller.c: (GST_START_TEST):
8638           cosmetic fixups
8639         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
8640           complete checks for gstbuffer; would be nice if I could get the
8641           gcov stuff to work so I can see if I actually completed gstbuffer.c
8642         * check/gstcheck.h:
8643           add ASSERT_BUFFER_REFCOUNT
8644
8645 2005-08-13  Tim-Philipp Müller  <tim at centricular dot net>
8646
8647         * docs/gst/gstreamer-sections.txt:
8648         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
8649         * gst/gsttag.h:
8650           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
8651           spew out a warning if a tag that is already registered
8652           is re-registered, unless it is re-registered with a 
8653           different type (#308438).
8654
8655 2005-08-12  Tim-Philipp Müller  <tim at centricular dot net>
8656
8657         * docs/pwg/appendix-porting.xml:
8658         * docs/pwg/building-state.xml:
8659           Add some paragraphs about state changes in 0.9 to the PWG
8660           and the porting guide, in particular about the new meaning
8661           of GST_STATE_PAUSED and how to write state change functions
8662           with concurrent access by multiple threads in mind.
8663
8664 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
8665
8666         * docs/gst/gstreamer-docs.sgml:
8667         * docs/libs/gstreamer-libs-docs.sgml:
8668           added deprecation and since indexes
8669         * libs/gst/controller/gst-controller.c:
8670         * libs/gst/controller/gst-helper.c:
8671           added since tags
8672
8673
8674 2005-08-11  Wim Taymans  <wim@fluendo.com>
8675
8676         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
8677         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
8678         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
8679         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
8680         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
8681         (gst_ghost_pad_set_target):
8682         Actually implement (re)setting the target on a ghostpad
8683         as described in the docs.
8684
8685 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
8686
8687         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
8688           Check whether GST_DEBUG_NO_COLOR environment variable is
8689           set and disable coloured debug output if that is the case.
8690
8691 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
8692
8693         * gst/base/gsttypefindhelper.c: (helper_find_peek),
8694         (gst_type_find_helper):
8695           The memory returned by gst_type_find_peek() needs to
8696           stay valid until the end of a typefind function, and
8697           typefind functions may keep results from different 
8698           offsets around, so we can't just unref the buffer from
8699           the previous _peek(), but have to save all buffers 
8700           returned by _peek() until typefinding is done and only
8701           free them then.
8702
8703 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
8704
8705         * docs/gst/gstreamer-sections.txt:
8706         * gst/gstutils.h:
8707           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
8708
8709 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8710
8711         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
8712           Fix a pretty good memleak.
8713
8714 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
8715
8716         * gst/gstiterator.h:
8717           Fix wrong include and 'make distcheck'.
8718
8719 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8720
8721         * gst/gstbin.c: (bin_bus_handler):
8722           Use gst_element_post_message() instead.
8723
8724 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
8725
8726         * gst/base/gstadapter.h:
8727         * gst/base/gstbasesink.h:
8728         * gst/base/gstbasesrc.h:
8729         * gst/base/gstbasetransform.h:
8730         * gst/base/gstcollectpads.h:
8731         * gst/base/gstpushsrc.h:
8732         * gst/gstiterator.h:
8733           Add padding to our base elements' class and instance structs and
8734           to GstIterator (you will need to rebuild all plugins and apps!)
8735
8736 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8737
8738         * gst/gstbin.c: (bin_bus_handler):
8739           Make default message forwarding from child->bus to bin->bus
8740           threadsafe and make it not emit warnings if the parent has no bus.
8741
8742 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8743
8744         * gst/gstelement.c: (activate_pads):
8745           On paused->ready, set pad->caps to NULL, as is the documented
8746           behaviour in this state change. Fixes playback of series of
8747           media files when visualization is enabled in Totem.
8748
8749 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8750
8751         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
8752           Allow NULL as filter-caps (which means "any").
8753
8754 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
8755
8756         * docs/libs/gstreamer-libs-sections.txt:
8757         * libs/gst/controller/gst-controller.c:
8758         * libs/gst/controller/gst-controller.h:
8759         * libs/gst/controller/gst-helper.c:
8760           adding more entries to the docs and fix small doc-bugs
8761
8762 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
8763
8764         * docs/gst/gstreamer-docs.sgml:
8765         * docs/gst/gstreamer-sections.txt:
8766         * docs/gst/gstreamer.types:
8767         * docs/gst/tmpl/gstbasesink.sgml:
8768         * docs/gst/tmpl/gstbasesrc.sgml:
8769         * docs/gst/tmpl/gstbasetransform.sgml:
8770         * docs/gst/tmpl/gstfakesrc.sgml:
8771         * gst/base/gstcollectpads.c:
8772         * gst/base/gstcollectpads.h:
8773         * libs/gst/controller/gst-controller.c:
8774         * libs/gst/controller/gst-controller.h:
8775         * libs/gst/controller/gst-helper.c:
8776         * libs/gst/controller/gst-interpolation.c:
8777         * libs/gst/controller/lib.c:
8778           added long/short desc for controller docs
8779           added collectpads base class docs
8780           added correct includes to base-class docs
8781
8782 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
8783
8784         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
8785         (gst_test_mono_source_set_property),
8786         (gst_test_mono_source_class_init), (GST_START_TEST),
8787         (gst_controller_suite):
8788         * docs/gst/gstreamer-docs.sgml:
8789         * docs/gst/gstreamer-sections.txt:
8790         * docs/gst/gstreamer.types:
8791         * docs/libs/gstreamer-libs-docs.sgml:
8792         * docs/libs/gstreamer-libs-sections.txt:
8793         * gst/base/gstadapter.c:
8794         * libs/gst/controller/gst-controller.c:
8795         (gst_controlled_property_new), (gst_controlled_property_free),
8796         (gst_controller_new_valist),
8797         (gst_controller_remove_properties_valist),
8798         (gst_controller_sink_values), (_gst_controller_finalize):
8799         * libs/gst/controller/gst-controller.h:
8800         * libs/gst/controller/gst-helper.c:
8801         (gst_object_control_properties), (gst_object_uncontrol_properties),
8802         (gst_object_get_controller), (gst_object_set_controller),
8803         (gst_object_sink_values), (gst_object_get_value_arrays),
8804         (gst_object_get_value_array):
8805           more tests (and fixes) for the controller
8806           more docs for the controller
8807           integrated companies docs for the adapter 
8808
8809 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8810
8811         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
8812         (GST_START_TEST), (fakesrc_suite):
8813           add tests for sizetype
8814
8815 2005-08-04  Andy Wingo  <wingo@pobox.com>
8816
8817         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
8818         fixes buffer_alloc proxying among other things.
8819
8820         * gst/base/gstbasetransform.c:
8821         * gst/base/gstbasetransform.h:
8822         Revert patch to gstbasetransform from 7-28 removing
8823         delay_configure.
8824
8825         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
8826         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
8827         Semantics changed, should return not the size of the output buffer
8828         but the byte size of a buffer with a given caps.
8829
8830         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
8831         debug object.
8832         (gst_base_transform_configure_caps): Don't set out_size here: (in,
8833         out) are not the pad caps until setcaps finishes.
8834         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
8835         not-in-place case as well. Deal with changing from in-place to
8836         not-in-place within calling pad_alloc_buffer. Still a bit
8837         concerned about the overhead here...
8838
8839 2005-08-03  Andy Wingo  <wingo@pobox.com>
8840
8841         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
8842         fixating is an error.
8843
8844 2005-08-04  Edward Hervey  <edward@fluendo.com>
8845
8846         * gst/base/gstadapter.h: 
8847         Added gst_adapter_get_type() to the header
8848
8849 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
8850
8851         * check/Makefile.am:
8852         * check/gst-libs/controller.c:
8853         * libs/gst/controller/gst-controller.c:
8854         (gst_controller_new_valist):
8855           added check test suite for the controller
8856         * gst/base/gstpushsrc.c:
8857           fixed a doc typo
8858
8859 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
8860
8861         * docs/gst/Makefile.am:
8862         * docs/gst/gstreamer-docs.sgml:
8863         * docs/gst/gstreamer-sections.txt:
8864         * docs/gst/gstreamer.types:
8865         * docs/gst/tmpl/gstfakesrc.sgml:
8866         * gst/base/README:
8867         * gst/base/gstbasesink.c:
8868         * gst/base/gstbasesink.h:
8869         * gst/base/gstbasesrc.c:
8870         * gst/base/gstbasesrc.h:
8871         * gst/base/gstbasetransform.c:
8872         * gst/base/gstpushsrc.c:
8873         * gst/base/gstpushsrc.h:
8874           add short/long description docs to base classes
8875           add pushsrc to the docs
8876           remove consolidated doc fragments
8877
8878 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
8879
8880         * configure.ac:
8881         * docs/libs/Makefile.am:
8882         * docs/libs/gstreamer-libs-docs.sgml:
8883         * docs/libs/gstreamer-libs-sections.txt:
8884         * docs/libs/gstreamer-libs.types:
8885         * examples/Makefile.am:
8886         * examples/controller/.cvsignore:
8887         * examples/controller/Makefile.am:
8888         * examples/controller/audio-example.c: (main):
8889         * libs/gst/Makefile.am:
8890         * libs/gst/controller/.cvsignore:
8891         * libs/gst/controller/Makefile.am:
8892         * libs/gst/controller/gst-controller.c:
8893         (on_object_controlled_property_changed), (gst_timed_value_compare),
8894         (gst_timed_value_find),
8895         (gst_controlled_property_set_interpolation_mode),
8896         (gst_controlled_property_new), (gst_controlled_property_free),
8897         (gst_controller_find_controlled_property),
8898         (gst_controller_new_valist), (gst_controller_new),
8899         (gst_controller_remove_properties_valist),
8900         (gst_controller_remove_properties), (gst_controller_set),
8901         (gst_controller_set_from_list), (gst_controller_unset),
8902         (gst_controller_get), (gst_controller_get_all),
8903         (gst_controller_sink_values), (gst_controller_get_value_arrays),
8904         (gst_controller_get_value_array),
8905         (gst_controller_set_interpolation_mode),
8906         (_gst_controller_finalize), (_gst_controller_init),
8907         (_gst_controller_class_init), (gst_controller_get_type):
8908         * libs/gst/controller/gst-controller.h:
8909         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
8910         (g_object_uncontrol_properties), (g_object_get_controller),
8911         (g_object_set_controller), (g_object_sink_values),
8912         (g_object_get_value_arrays), (g_object_get_value_array):
8913         * libs/gst/controller/gst-interpolation.c:
8914         (gst_controlled_property_find_timed_value_node),
8915         (interpolate_none_get), (interpolate_trigger_get),
8916         (interpolate_trigger_get_value_array):
8917         * libs/gst/controller/lib.c: (gst_controller_init):
8918         * pkgconfig/Makefile.am:
8919         * pkgconfig/gstreamer-control-uninstalled.pc.in:
8920         * pkgconfig/gstreamer-control.pc.in:
8921         * testsuite/Makefile.am:
8922         * testsuite/controller/.cvsignore:
8923         * testsuite/controller/Makefile.am:
8924         * testsuite/controller/interpolator.c: (main):
8925           added controller code
8926           removed dparam pc files
8927
8928 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
8929         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
8930         (gst_collectpads_stop):
8931           Broadcast the condition when shutting down, to make sure we wake all
8932           threads up. Shut down pads on finalize, for safety.
8933
8934 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
8935         * gst/base/gstbasetransform.c: (gst_base_transform_init),
8936         (gst_base_transform_handle_buffer),
8937         (gst_base_transform_change_state):
8938           Handle PAUSED->READY->PAUSED transition after negotiation
8939           occurred already.
8940         * gst/gstmessage.c: (gst_message_init):
8941           Extra piece of debug for new messages.
8942
8943 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
8944
8945         * configure.ac:
8946         * docs/gst/tmpl/gstbasesrc.sgml:
8947         * docs/gst/tmpl/gstelement.sgml:
8948         * docs/gst/tmpl/gstevent.sgml:
8949         * docs/gst/tmpl/gstfakesrc.sgml:
8950         * docs/gst/tmpl/gstformat.sgml:
8951         * docs/gst/tmpl/gstghostpad.sgml:
8952         * docs/gst/tmpl/gstpad.sgml:
8953         * docs/gst/tmpl/gstquery.sgml:
8954         * docs/gst/tmpl/gststructure.sgml:
8955         * docs/gst/tmpl/gsttaglist.sgml:
8956         * docs/gst/tmpl/gstvalue.sgml:
8957         * docs/libs/gstreamer-libs-docs.sgml:
8958         * docs/libs/gstreamer-libs-sections.txt:
8959         * docs/libs/gstreamer-libs.types:
8960         * libs/gst/Makefile.am:
8961         * libs/gst/control/.cvsignore:
8962         * libs/gst/control/Makefile.am:
8963         * libs/gst/control/control.c:
8964         * libs/gst/control/control.h:
8965         * libs/gst/control/dparam.c:
8966         * libs/gst/control/dparam.h:
8967         * libs/gst/control/dparam_smooth.c:
8968         * libs/gst/control/dparam_smooth.h:
8969         * libs/gst/control/dparamcommon.h:
8970         * libs/gst/control/dparammanager.c:
8971         * libs/gst/control/dparammanager.h:
8972         * libs/gst/control/dplinearinterp.c:
8973         * libs/gst/control/dplinearinterp.h:
8974         * libs/gst/control/unitconvert.c:
8975         * libs/gst/control/unitconvert.h:
8976         * testsuite/Makefile.am:
8977         * testsuite/dynparams/.cvsignore:
8978         * testsuite/dynparams/Makefile.am:
8979         * testsuite/dynparams/dparamstest.c:
8980         * tools/Makefile.am:
8981         * tools/gst-inspect.c: (print_element_info), (main):
8982         * tools/gst-xmlinspect.c: (print_element_info), (main):
8983           deactivate and remove dparams (libgstcontrol)
8984
8985 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
8986
8987         * gst/elements/gsttypefindelement.c:
8988         (gst_type_find_element_have_type), (gst_type_find_element_init),
8989         (stop_typefinding), (gst_type_find_element_handle_event),
8990         (gst_type_find_element_chain), (gst_type_find_element_getrange):
8991         * gst/elements/gsttypefindelement.h:
8992           Set caps on all outgoing buffers, not just the first one.
8993
8994 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
8995
8996         * gst/elements/gsttypefindelement.c:
8997         (gst_type_find_element_have_type),
8998         (gst_type_find_element_check_set_buffer_caps),
8999         (gst_type_find_element_init), (stop_typefinding),
9000         (gst_type_find_element_handle_event),
9001         (gst_type_find_element_chain), (gst_type_find_element_getrange):
9002         * gst/elements/gsttypefindelement.h:
9003           Set caps on first outgoing buffer when we've found the type.
9004
9005 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
9006
9007         * docs/gst/gstreamer-docs.sgml:
9008         * docs/gst/gstreamer-sections.txt:
9009         * docs/gst/tmpl/gstscheduler.sgml:
9010         * docs/gst/tmpl/gstschedulerfactory.sgml:
9011           Remove some old cruft from docs.
9012
9013 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
9014
9015         * gst/gstpad.h:
9016           Fix inline docs for GstPadLinkReturn.
9017           
9018         * gst/gststructure.c: (gst_structure_has_name):
9019         * gst/gststructure.h:
9020         * docs/gst/gstreamer-sections.txt:
9021           New API: gst_structure_has_name().
9022
9023 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
9024
9025         * configure.ac:
9026           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
9027           and _LARGEFILE_SOURCE in config.h as required. Do not 
9028           export those flags in our .pc files any longer (#142209).
9029
9030           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
9031
9032         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
9033         (gst_file_sink_do_seek), (gst_file_sink_event),
9034         (gst_file_sink_get_current_offset), (gst_file_sink_render):
9035           Redo seek/tell calls with large file support in mind; add some
9036           debugging messages; add log message that tells us when large
9037           file support is unavailable or not enabled for some reason.
9038
9039         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
9040           Add log message that tells us when large file support 
9041           is unavailable or not enabled for some reason.
9042
9043 2005-07-29  Wim Taymans  <wim@fluendo.com>
9044
9045         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
9046         Added test for removing an element with ghostpad from a bin.
9047         Fixed test as current implementation does the right thing.
9048
9049         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
9050         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
9051         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
9052         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
9053         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
9054         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
9055         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
9056         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
9057         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
9058         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
9059         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
9060         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
9061         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
9062         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
9063         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
9064         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
9065         * gst/gstghostpad.h:
9066         Clean up ghostpads, remove properties for internal stuff.
9067         Make threadsafe.
9068         Fix refcounting.
9069         Prepare for switching targets, not all use cases work yet.
9070
9071 2005-07-29  Wim Taymans  <wim@fluendo.com>
9072
9073         * docs/design/part-gstghostpad.txt:
9074         Small update.
9075
9076         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
9077         (gst_bin_remove_func):
9078         Unlinking pads while holding the bin LOCK is not a good
9079         idea.
9080
9081         * gst/gstpad.c: (gst_pad_class_init),
9082         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
9083         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
9084         No prob setting template after creating the pad.
9085
9086 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
9087
9088         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
9089         (gst_bus_peek), (gst_bus_source_dispatch),
9090         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
9091         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
9092           gst_bus_poll may be called from other threads. Handle
9093           this nicely by not making poll_data disappear off the
9094           stack once gst_bus_poll returns.
9095           gst_bus_peek now increments the refcount on the returned
9096           message.
9097
9098 2005-07-29  Wim Taymans  <wim@fluendo.com>
9099
9100         * docs/design/part-gstghostpad.txt:
9101         Overview of current GhostPad datastructures and use
9102         cases for changing the target.
9103
9104 2005-07-28  Wim Taymans  <wim@fluendo.com>
9105
9106         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
9107         Added checks for hierarchy consistency whan adding linked
9108         elements to bins.
9109
9110         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
9111         Added check to test element scheduling without bin/pipeline.
9112
9113         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
9114         First add elements to bin, then link.
9115         
9116         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
9117         (gst_bin_remove_func):
9118         Unlink pads from elements added/removed from bin to maintain
9119         hierarchy consistency.
9120
9121 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9122
9123         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
9124         (gst_base_transform_handle_buffer):
9125         * gst/base/gstbasetransform.h:
9126           Remove broken delay_configure (fixes renegotiation of software
9127           scaling pipelines); remove some leftover printf()s.
9128
9129 2005-07-28  Wim Taymans  <wim@fluendo.com>
9130
9131         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
9132         Added some more tests for wrong hierarchy
9133
9134         * docs/design/part-overview.txt:
9135         Some updates.
9136
9137         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
9138         Cleanups.
9139
9140         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
9141         (gst_element_dispose):
9142         Some more cleanups.
9143
9144         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
9145         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
9146         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
9147         (gst_pad_set_caps), (gst_pad_send_event):
9148         Check for correct hierarchy when linking pads. Moving to
9149         strict requirement for ghostpads when linking elements in
9150         different bins.
9151
9152         * gst/gstpad.h:
9153         Clean ups. Added WRONG_HIERARCHY return value.
9154
9155 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9156
9157         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
9158           Better debug if no transform is possible.
9159
9160 2005-07-27  Wim Taymans  <wim@fluendo.com>
9161
9162         * docs/random/wtay/network-transp:
9163         Some old doc I had.
9164
9165 2005-07-27  Wim Taymans  <wim@fluendo.com>
9166
9167         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
9168         (gst_dp_event_from_packet):
9169         Fix serialization of seek events.
9170
9171 2005-07-27  Wim Taymans  <wim@fluendo.com>
9172
9173         * check/gst-libs/gdp.c: (GST_START_TEST):
9174         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
9175         Fix compilation and fix event serialization.
9176
9177 2005-07-27  Wim Taymans  <wim@fluendo.com>
9178
9179         * CHANGES-0.9:
9180         * docs/design/part-TODO.txt:
9181         * docs/design/part-events.txt:
9182         Some docs updates
9183
9184         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9185         (gst_base_sink_event), (gst_base_sink_do_sync),
9186         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
9187         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
9188         (gst_base_src_do_seek), (gst_base_src_event_handler),
9189         (gst_base_src_loop):
9190         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
9191         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
9192         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
9193         (gst_base_transform_event), (gst_base_transform_handle_buffer),
9194         (gst_base_transform_set_passthrough),
9195         (gst_base_transform_is_passthrough):
9196         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
9197         * gst/elements/gstfilesink.c: (gst_file_sink_event):
9198         Event updates.
9199
9200         * gst/gstbuffer.h:
9201         Use faster casts.
9202
9203         * gst/gstelement.c: (gst_element_seek):
9204         * gst/gstelement.h:
9205         Update gst_element_seek.
9206
9207         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
9208         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
9209         (gst_event_new_flush_start), (gst_event_new_flush_stop),
9210         (gst_event_new_eos), (gst_event_new_newsegment),
9211         (gst_event_parse_newsegment), (gst_event_new_tag),
9212         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
9213         (gst_event_parse_qos), (gst_event_new_seek),
9214         (gst_event_parse_seek), (gst_event_new_navigation):
9215         * gst/gstevent.h:
9216         Make GstEvent use GstStructure. Add parsing code, make sure the
9217         API is sufficiently generic.
9218         Mark possible directions of events and serialization.
9219
9220         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
9221         (_gst_message_copy), (gst_message_new_segment_start),
9222         (gst_message_new_segment_done), (gst_message_new_custom),
9223         (gst_message_parse_segment_start),
9224         (gst_message_parse_segment_done):
9225         Small cleanups.
9226
9227         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
9228         (gst_pad_set_caps), (gst_pad_send_event):
9229         Update for new events. 
9230         Catch events sent in wrong directions.
9231
9232         * gst/gstqueue.c: (gst_queue_link_src),
9233         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
9234         (gst_queue_handle_src_query):
9235         Event updates.
9236
9237         * gst/gsttag.c:
9238         * gst/gsttag.h:
9239         Remove event code from this file.
9240
9241         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
9242         (gst_dp_event_from_packet):
9243         Event updates.
9244
9245 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9246
9247         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
9248         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
9249         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
9250           Make debugging actually useful.
9251
9252 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9253
9254         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
9255         (gst_pad_fixate_caps):
9256           Implement default fixation once again, so that gst_pad_fixate()
9257           actually does anything at all. This probably needs to be some
9258           sort of a last resort, and use profile-based fixation first, but
9259           since that doesn't exist yet, this is the best we have. Fixes
9260           visualization in Totem.
9261
9262 2005-07-22  Wim Taymans  <wim@fluendo.com>
9263
9264         * docs/design/part-events.txt:
9265         Small update.
9266
9267         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9268         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
9269         (gst_base_sink_activate_pull):
9270         Some more comments.
9271
9272         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
9273         (gst_fake_src_create):
9274         Fix handoff marshall.
9275
9276         * gst/elements/gstidentity.c: (gst_identity_class_init),
9277         (gst_identity_transform_ip):
9278         We're a real inplace element.
9279
9280         * gst/gstbus.c: (gst_bus_post):
9281         Added some comments.
9282
9283         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
9284         * tests/muxing/case1.c: (main):
9285         * tests/sched/dynamic-pipeline.c: (main):
9286         * tests/sched/interrupt1.c: (main):
9287         * tests/sched/interrupt2.c: (main):
9288         * tests/sched/interrupt3.c: (main):
9289         * tests/sched/runxml.c: (main):
9290         * tests/sched/sched-stress.c: (main):
9291         * tests/seeking/seeking1.c: (event_received), (main):
9292         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
9293         (main):
9294         * tests/threadstate/threadstate3.c: (main):
9295         * tests/threadstate/threadstate4.c: (main):
9296         * tests/threadstate/threadstate5.c: (main):
9297         Fix the tests.
9298
9299 2005-07-21  Wim Taymans  <wim@fluendo.com>
9300
9301         * docs/design/part-seeking.txt:
9302         Some small additions.
9303
9304         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9305         (gst_base_sink_get_times), (gst_base_sink_do_sync),
9306         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
9307         * gst/base/gstbasesink.h:
9308         discont values are gint64, handle the math correctly.
9309
9310         * gst/base/gstbasesrc.c: (gst_base_src_loop):
9311         Make the basesrc report error if the source pad is not linked.
9312
9313         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
9314         (gst_queue_loop), (gst_queue_handle_src_query),
9315         (gst_queue_src_activate_push):
9316         Make queue collect data even if the srcpad is not linked.
9317         Start pushing out data as soon as it is linked.
9318
9319         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
9320         * gst/gstutils.h:
9321         Added gst_flow_get_name() to ease error reporting.
9322
9323 2005-07-20  Wim Taymans  <wim@fluendo.com>
9324
9325         * gst/gstmessage.c: (gst_message_new_segment_start),
9326         (gst_message_new_segment_done), (gst_message_parse_segment_start),
9327         (gst_message_parse_segment_done):
9328         * gst/gstmessage.h:
9329         Added a bunch of messages for advanced seeking.
9330
9331         * gst/parse/grammar.y:
9332         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
9333         (gst_dpman_state_changed):
9334         Fix some new-pad -> pad-added signals
9335
9336 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9337
9338         * docs/manual/appendix-porting.xml:
9339         * docs/pwg/appendix-porting.xml:
9340           Document new-pad/state-change signal renames and the FixedList
9341           type rename.
9342
9343 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9344
9345         * docs/manual/advanced-autoplugging.xml:
9346         * docs/manual/basics-helloworld.xml:
9347         * docs/manual/basics-pads.xml:
9348         * docs/random/ds/0.9-suggested-changes:
9349         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
9350         * gst/gstelement.h:
9351         * gst/gstevent.h:
9352         * gst/gstformat.h:
9353         * gst/gstquery.h:
9354         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9355         (gst_structure_parse_array), (gst_structure_parse_value):
9356         * gst/gstvalue.c: (gst_type_is_fixed),
9357         (gst_value_list_prepend_value), (gst_value_list_append_value),
9358         (gst_value_list_get_size), (gst_value_list_get_value),
9359         (gst_value_transform_array_string), (gst_value_serialize_array),
9360         (gst_value_deserialize_array), (gst_value_intersect_array),
9361         (gst_value_is_fixed), (_gst_value_initialize):
9362         * gst/gstvalue.h:
9363           GstElement::new-pad -> pad-added, GstElement::state-change ->
9364           state-changed, GstValueFixedList -> GstValueArray, add format and
9365           flags as their own arguments in gst_element_seek() (should improve
9366           "bindeability"), remove function generators since they don't work
9367           under a whole bunch of compilers (they were deprecated already
9368           anyway).
9369
9370 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9371
9372         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
9373         (_gst_debug_register_funcptr):
9374         * gst/gstinfo.h:
9375           Fix illegal cast on some platforms (#309253).
9376
9377 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9378
9379         * gst/gstmessage.c: (gst_message_new_custom):
9380         * gst/gstmessage.h:
9381           Add _new_custom, make _new_application a macro to _new_custom.
9382
9383 2005-07-20  Wim Taymans  <wim@fluendo.com>
9384
9385         * gst/base/gstbasesrc.c: (gst_base_src_init),
9386         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
9387         * gst/base/gstbasesrc.h:
9388         Add a gboolean to decide when to push out a discont.
9389
9390         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
9391         (gst_queue_loop), (gst_queue_handle_src_query),
9392         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
9393         (gst_queue_set_property), (gst_queue_get_property):
9394         Some cleanups.
9395
9396         * tests/threadstate/threadstate1.c: (main):
9397         Make a thread test compile and run... very silly..
9398
9399
9400 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9401
9402         * docs/manual/appendix-porting.xml:
9403           Mention removal of libgstgconf-0.9.la and existence of gconf
9404           elements.
9405
9406 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9407
9408         * docs/pwg/advanced-clock.xml:
9409         * docs/pwg/appendix-porting.xml:
9410         * docs/pwg/intro-preface.xml:
9411         * docs/pwg/other-base.xml:
9412         * docs/pwg/other-manager.xml:
9413         * docs/pwg/other-nton.xml:
9414         * docs/pwg/other-ntoone.xml:
9415         * docs/pwg/other-oneton.xml:
9416         * docs/pwg/pwg.xml:
9417           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
9418           demuxer), remove n-to-n (was never written), fix some code examples
9419           and links and update the porting section to include all this.
9420
9421 2005-07-19  Wim Taymans  <wim@fluendo.com>
9422
9423         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
9424         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
9425         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
9426         (gst_queue_src_activate_push), (gst_queue_change_state),
9427         (gst_queue_get_property):
9428         * gst/gstqueue.h:
9429         Propagate GstFlowReturn more intelligently upstream and output
9430         an ERROR/EOS when streaming stopped due to fatal error.
9431
9432 2005-07-19  Wim Taymans  <wim@fluendo.com>
9433
9434         * tools/gst-launch.c: (check_intr), (event_loop), (main):
9435         Don't block forever for the state change to complete, the
9436         pipeline already did with a sensible timeout.
9437
9438 2005-07-19  Wim Taymans  <wim@fluendo.com>
9439
9440         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
9441         Make sure we never call the create function is we
9442         got deactivated.
9443
9444 2005-07-19  Andy Wingo  <wingo@pobox.com>
9445
9446         * gst/parse/parse.l: Attempt to solve bug #172815.
9447
9448 2005-07-19  Wim Taymans  <wim@fluendo.com>
9449
9450         * docs/design/part-clocks.txt:
9451         * docs/design/part-events.txt:
9452         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
9453         Small docs updates.
9454         Only update the seeking values when we are not
9455         busy streaming.
9456
9457 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
9458
9459         * gst/base/gstbasesrc.c: (gst_base_src_loop):
9460           Oops, ignore the result of gst_pad_push_event here.
9461
9462 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
9463
9464         * gst/base/gstbasesrc.c: (gst_base_src_loop),
9465         (gst_base_src_activate_push):
9466           Send discont event from the loop function, as pads
9467           aren't activated yet in the activate_push handler.
9468
9469         * gst/gstbin.c: (bin_bus_handler):
9470           Don't leak element name.
9471
9472 2005-07-18  Andy Wingo  <wingo@pobox.com>
9473
9474         * configure.ac: Use AS_LIBTOOL_TAGS.
9475
9476 2005-07-18  Wim Taymans  <wim@fluendo.com>
9477
9478         * docs/gst/gstreamer.types:
9479         Remove deleted types.
9480
9481 2005-07-18  Wim Taymans  <wim@fluendo.com>
9482
9483         * check/elements/gstfakesrc.c: (GST_START_TEST):
9484         * configure.ac:
9485         * gst/Makefile.am:
9486         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
9487         (init_popt_callback):
9488         * gst/gst.h:
9489         * gst/gst_private.h:
9490         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
9491         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
9492         * gst/gstbin.h:
9493         * gst/gstbus.h:
9494         * gst/gstconfig.h.in:
9495         * gst/gstelement.c: (gst_element_class_init),
9496         (gst_element_set_base_time), (gst_element_get_base_time),
9497         (iterator_fold_with_resync), (gst_element_change_state),
9498         (gst_element_dispose), (gst_element_get_bus):
9499         * gst/gstelement.h:
9500         * gst/gstelementfactory.h:
9501         * gst/gsterror.c: (_gst_core_errors_init):
9502         * gst/gsterror.h:
9503         * gst/gstevent.h:
9504         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
9505         * gst/gstindex.c:
9506         * gst/gstinfo.c: (_gst_debug_init):
9507         * gst/gstmessage.c: (_gst_message_copy):
9508         * gst/gstmessage.h:
9509         * gst/gstminiobject.h:
9510         * gst/gstobject.c:
9511         * gst/gstobject.h:
9512         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
9513         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
9514         * gst/gstpad.h:
9515         * gst/gstparse.h:
9516         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
9517         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
9518         (gst_pipeline_get_last_stream_time):
9519         * gst/gstpipeline.h:
9520         * gst/gstpluginfeature.h:
9521         * gst/gstquery.h:
9522         * gst/gstscheduler.c:
9523         * gst/gstscheduler.h:
9524         * gst/gststructure.h:
9525         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
9526         (gst_task_finalize), (gst_task_func), (gst_task_create),
9527         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
9528         (gst_task_stop), (gst_task_pause):
9529         * gst/gsttask.h:
9530         * gst/gsttypefind.h:
9531         * gst/gsttypes.h:
9532         * gst/registries/gstlibxmlregistry.c: (load_feature),
9533         (gst_xml_registry_load), (gst_xml_registry_save_feature):
9534         * gst/registries/gstxmlregistry.c:
9535         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
9536         * gst/schedulers/threadscheduler.c:
9537         * libs/gst/control/dparammanager.h:
9538         * tools/gst-inspect.c: (print_element_list),
9539         (print_plugin_features), (print_element_features):
9540         * tools/gst-xmlinspect.c: (print_element_list),
9541         (print_plugin_info), (main):
9542         Removed plugable schedulers.
9543         Removed Scheduler/Manager from elements.
9544         Removed gsttypes.h, rearranged includes.
9545         Removed dependency pad<->element, element<>pipeline, and
9546         various others,  fix includes.
9547         implement gst_pad_get_parent() with gst_object_get_parent()
9548         Make GstTask sefcontained.
9549         Fix _get_state() on GstBin, it did not return ASYNC with a 0
9550         timeout.
9551         Fix endless loop in iterator_fold_with_resync.
9552
9553
9554 2005-07-18  Wim Taymans  <wim@fluendo.com>
9555
9556         * gst/Makefile.am:
9557         * gst/gstarch.h:
9558         Remove old file.
9559
9560 2005-07-18  Wim Taymans  <wim@fluendo.com>
9561
9562         * gst/Makefile.am:
9563         No more cothreads.h
9564
9565 2005-07-18  Wim Taymans  <wim@fluendo.com>
9566
9567         * gst/cothreads.c:
9568         * gst/cothreads.h:
9569         Let's remove these.
9570
9571 2005-07-18  Wim Taymans  <wim@fluendo.com>
9572
9573         * docs/design/part-dynamic.txt:
9574         * docs/design/part-events.txt:
9575         * docs/design/part-seeking.txt:
9576         Some more docs in the works.
9577
9578         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
9579         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
9580         (gst_base_transform_setcaps), (gst_base_transform_get_size),
9581         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
9582         (gst_base_transform_handle_buffer),
9583         (gst_base_transform_sink_activate_push),
9584         (gst_base_transform_src_activate_pull),
9585         (gst_base_transform_set_passthrough),
9586         (gst_base_transform_is_passthrough):
9587         Refcounting fixes.
9588
9589         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
9590         Cleanups.
9591
9592         * gst/gstevent.c: (gst_event_finalize):
9593         Set SRC to NULL.
9594
9595         * gst/gstutils.c: (gst_element_unlink),
9596         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
9597         (gst_pad_proxy_setcaps):
9598         * gst/gstutils.h:
9599         Add _get_parent_element() to get a pads parent as an element.
9600
9601 2005-07-18  Wim Taymans  <wim@fluendo.com>
9602
9603         * check/gst/gstbin.c: (GST_START_TEST):
9604         Remove bogus test.
9605
9606 2005-07-18  Wim Taymans  <wim@fluendo.com>
9607
9608         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
9609         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
9610         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
9611         (gst_base_sink_event), (gst_base_sink_do_sync),
9612         (gst_base_sink_chain), (gst_base_sink_loop),
9613         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
9614         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
9615         Refcounting fixes.
9616         Fix logic for returning ASYNC when not prerolled.
9617
9618 2005-07-18  Wim Taymans  <wim@fluendo.com>
9619
9620         * gst/gstqueue.c: (gst_queue_handle_sink_event):
9621         Fix nasty refcount bug.
9622
9623 2005-07-16 Philippe Khalaf <burger@speedy.org>
9624
9625         * gst/elements/gstfdsrc.c:
9626         * gst/elements/gstfdsrc.h:
9627         * gst/elements/gstelements.c:
9628         * gst/elements/Makefile.am:
9629         Ported fdsrc to 0.9.
9630
9631 2005-07-16  Wim Taymans  <wim@fluendo.com>
9632
9633         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9634         (gst_base_sink_do_sync):
9635         Fix compile error.
9636
9637 2005-07-16  Wim Taymans  <wim@fluendo.com>
9638
9639         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9640         (gst_base_sink_event), (gst_base_sink_get_times),
9641         (gst_base_sink_do_sync), (gst_base_sink_change_state):
9642         * gst/base/gstbasesink.h:
9643         Store and use discont values when syncing buffers as described
9644         in design docs.
9645         
9646         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
9647         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
9648         (gst_base_src_activate_push):
9649         Push discont event when starting.
9650
9651         * gst/elements/gstidentity.c: (gst_identity_transform):
9652         Small cleanups.
9653
9654         * gst/gstbin.c: (gst_bin_change_state):
9655         Small cleanups in base_time  distribution.
9656
9657         * gst/gstelement.c: (gst_element_set_base_time),
9658         (gst_element_get_base_time), (gst_element_change_state):
9659         * gst/gstelement.h:
9660         Added methods for the base_time of the element.
9661         Some MT fixes.
9662
9663         * gst/gstpipeline.c: (gst_pipeline_send_event),
9664         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
9665         (gst_pipeline_get_last_stream_time):
9666         * gst/gstpipeline.h:
9667         MT fixes.
9668         Handle seeking as described in design doc, remove stream_time
9669         hack.
9670         Cleanups clock and stream_time selection code. Added accessors
9671         for the stream_time.
9672         
9673
9674 2005-07-16  Andy Wingo  <wingo@pobox.com>
9675
9676         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
9677         (#305291).
9678
9679 2005-07-16  Wim Taymans  <wim@fluendo.com>
9680
9681         * check/gst/gstbin.c: (GST_START_TEST):
9682         Make elements silent as the deep_notify refs the
9683         parent, which might make the test fail.
9684
9685         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
9686         Don't hold the lock for too long.
9687
9688 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
9689
9690         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
9691           Don't unref the caps we passed to gst_caps_make_writable() after
9692           passing them. gst_caps_make_writable() will do that for us.
9693
9694 2005-07-15  Andy Wingo  <wingo@pobox.com>
9695
9696         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
9697         (#157311).
9698
9699         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
9700         own marshalling function for the handoff signal. Properly type the
9701         buffer as a buffer. Fixes some warnings. Should do a more general
9702         solution.
9703         (gst_identity_class_init): Plug into the right marshaller.
9704
9705 2005-07-15  Wim Taymans  <wim@fluendo.com>
9706
9707         * docs/design/part-TODO.txt:
9708         * docs/design/part-clocks.txt:
9709         * docs/design/part-element-sink.txt:
9710         * docs/design/part-events.txt:
9711         * docs/design/part-gstpipeline.txt:
9712         Updated docs, mostly DISCONT related.
9713
9714 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
9715
9716         * docs/pwg/building-pads.xml:
9717           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
9718
9719 2005-07-15  Andy Wingo  <wingo@pobox.com>
9720
9721         * tools/gst-typefind.c: Update, add copyright block.
9722
9723         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
9724         Normalize and truncate caps before fixation.
9725
9726         * gst/gstcaps.h:
9727         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
9728         discards all but the first structure from its argument.
9729
9730 2005-07-15  Wim Taymans  <wim@fluendo.com>
9731
9732         * gst/base/gstbasetransform.c: (gst_base_transform_init),
9733         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
9734         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
9735         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
9736         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
9737         (gst_base_transform_chain), (gst_base_transform_change_state),
9738         (gst_base_transform_set_passthrough),
9739         (gst_base_transform_is_passthrough):
9740         * gst/base/gstbasetransform.h:
9741         Make passthrough work using the bufferpools.
9742         Changed API a bit, subclasses have to write into a buffer
9743         provided by the base class.
9744         More debug info in nego functions.
9745         
9746         * gst/elements/gstidentity.c: (gst_identity_init),
9747         (gst_identity_transform):
9748         Port to new base class.
9749
9750 2005-07-15  Wim Taymans  <wim@fluendo.com>
9751
9752         * gst/gstmessage.c: (gst_message_new_state_changed):
9753         * tools/gst-launch.c: (event_loop), (main):
9754         Totally dump messages in -launch with the -m option.
9755         Fix message name for State messages,
9756
9757 2005-07-14  Wim Taymans  <wim@fluendo.com>
9758
9759         * gst/base/gstbasesrc.c: (gst_base_src_loop):
9760         Post error messages on errors.
9761
9762 2005-07-14  Wim Taymans  <wim@fluendo.com>
9763
9764         * gst/gstcaps.c: (gst_caps_do_simplify):
9765         Remove debug info.
9766
9767         * gst/gsterror.h:
9768         Define error for stream stopped.
9769
9770         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
9771         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
9772         Do proper return values.
9773
9774         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
9775         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
9776         (gst_pad_get_range):
9777         Better return values.
9778
9779         * gst/gstpad.h:
9780         Reorganise return values, add macro to check for fatal errors.
9781
9782         * gst/gstqueue.c: (gst_queue_chain):
9783         Return proper GstFlowReturn values,
9784
9785 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9786
9787         * docs/gst/gstreamer-sections.txt:
9788         * docs/gst/gstreamer.types:
9789         * docs/gst/tmpl/gst.sgml:
9790         * docs/gst/tmpl/gstbasesink.sgml:
9791         * docs/gst/tmpl/gstbasesrc.sgml:
9792         * docs/gst/tmpl/gstbasetransform.sgml:
9793         * docs/gst/tmpl/gstbin.sgml:
9794         * docs/gst/tmpl/gstbuffer.sgml:
9795         * docs/gst/tmpl/gstcaps.sgml:
9796         * docs/gst/tmpl/gstclock.sgml:
9797         * docs/gst/tmpl/gstcompat.sgml:
9798         * docs/gst/tmpl/gstconfig.sgml:
9799         * docs/gst/tmpl/gstelement.sgml:
9800         * docs/gst/tmpl/gstelementdetails.sgml:
9801         * docs/gst/tmpl/gstelementfactory.sgml:
9802         * docs/gst/tmpl/gstenumtypes.sgml:
9803         * docs/gst/tmpl/gsterror.sgml:
9804         * docs/gst/tmpl/gstevent.sgml:
9805         * docs/gst/tmpl/gstfakesink.sgml:
9806         * docs/gst/tmpl/gstfakesrc.sgml:
9807         * docs/gst/tmpl/gstfilesink.sgml:
9808         * docs/gst/tmpl/gstfilesrc.sgml:
9809         * docs/gst/tmpl/gstfilter.sgml:
9810         * docs/gst/tmpl/gstformat.sgml:
9811         * docs/gst/tmpl/gstghostpad.sgml:
9812         * docs/gst/tmpl/gstimplementsinterface.sgml:
9813         * docs/gst/tmpl/gstindex.sgml:
9814         * docs/gst/tmpl/gstindexfactory.sgml:
9815         * docs/gst/tmpl/gstinfo.sgml:
9816         * docs/gst/tmpl/gstiterator.sgml:
9817         * docs/gst/tmpl/gstmacros.sgml:
9818         * docs/gst/tmpl/gstmemchunk.sgml:
9819         * docs/gst/tmpl/gstminiobject.sgml:
9820         * docs/gst/tmpl/gstobject.sgml:
9821         * docs/gst/tmpl/gstpad.sgml:
9822         * docs/gst/tmpl/gstpadtemplate.sgml:
9823         * docs/gst/tmpl/gstparse.sgml:
9824         * docs/gst/tmpl/gstpipeline.sgml:
9825         * docs/gst/tmpl/gstplugin.sgml:
9826         * docs/gst/tmpl/gstpluginfeature.sgml:
9827         * docs/gst/tmpl/gstquery.sgml:
9828         * docs/gst/tmpl/gstqueue.sgml:
9829         * docs/gst/tmpl/gstregistry.sgml:
9830         * docs/gst/tmpl/gstregistrypool.sgml:
9831         * docs/gst/tmpl/gstscheduler.sgml:
9832         * docs/gst/tmpl/gstschedulerfactory.sgml:
9833         * docs/gst/tmpl/gststructure.sgml:
9834         * docs/gst/tmpl/gstsystemclock.sgml:
9835         * docs/gst/tmpl/gsttaglist.sgml:
9836         * docs/gst/tmpl/gsttagsetter.sgml:
9837         * docs/gst/tmpl/gsttrace.sgml:
9838         * docs/gst/tmpl/gsttrashstack.sgml:
9839         * docs/gst/tmpl/gsttypefind.sgml:
9840         * docs/gst/tmpl/gsttypefindfactory.sgml:
9841         * docs/gst/tmpl/gsttypes.sgml:
9842         * docs/gst/tmpl/gsturihandler.sgml:
9843         * docs/gst/tmpl/gsturitype.sgml:
9844         * docs/gst/tmpl/gstutils.sgml:
9845         * docs/gst/tmpl/gstvalue.sgml:
9846         * docs/gst/tmpl/gstversion.sgml:
9847         * docs/gst/tmpl/gstxml.sgml:
9848         * docs/libs/tmpl/gstcontrol.sgml:
9849         * docs/libs/tmpl/gstdataprotocol.sgml:
9850         * docs/libs/tmpl/gstdparam.sgml:
9851         * docs/libs/tmpl/gstdplinint.sgml:
9852         * docs/libs/tmpl/gstdpman.sgml:
9853         * docs/libs/tmpl/gstdpsmooth.sgml:
9854         * docs/libs/tmpl/gstgetbits.sgml:
9855         * docs/libs/tmpl/gstunitconvert.sgml:
9856         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
9857         (gst_push_src_base_init), (gst_push_src_class_init),
9858         (gst_push_src_init), (gst_push_src_create):
9859         * gst/base/gstpushsrc.h:
9860         * gst/elements/gstelements.c:
9861         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
9862         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
9863         (gst_fake_sink_init), (gst_fake_sink_set_property),
9864         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
9865         (gst_fake_sink_event), (gst_fake_sink_preroll),
9866         (gst_fake_sink_render), (gst_fake_sink_change_state):
9867         * gst/elements/gstfakesink.h:
9868         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
9869         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
9870         (gst_fake_src_base_init), (gst_fake_src_class_init),
9871         (gst_fake_src_init), (gst_fake_src_event_handler),
9872         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
9873         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
9874         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
9875         (gst_fake_src_create_buffer), (gst_fake_src_create),
9876         (gst_fake_src_start), (gst_fake_src_stop):
9877         * gst/elements/gstfakesrc.h:
9878         * gst/elements/gstfilesink.c: (_do_init),
9879         (gst_file_sink_base_init), (gst_file_sink_class_init),
9880         (gst_file_sink_init), (gst_file_sink_dispose),
9881         (gst_file_sink_set_location), (gst_file_sink_set_property),
9882         (gst_file_sink_get_property), (gst_file_sink_open_file),
9883         (gst_file_sink_close_file), (gst_file_sink_query),
9884         (gst_file_sink_event), (gst_file_sink_render),
9885         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
9886         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
9887         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
9888         * gst/elements/gstfilesink.h:
9889         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
9890         (gst_file_src_class_init), (gst_file_src_init),
9891         (gst_file_src_finalize), (gst_file_src_set_location),
9892         (gst_file_src_set_property), (gst_file_src_get_property),
9893         (gst_file_src_map_region), (gst_file_src_map_small_region),
9894         (gst_file_src_create_mmap), (gst_file_src_create_read),
9895         (gst_file_src_create), (gst_file_src_is_seekable),
9896         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
9897         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
9898         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
9899         (gst_file_src_uri_handler_init):
9900         * gst/elements/gstfilesrc.h:
9901           more autistic cleanliness in functions/names/defines
9902
9903 2005-07-13  Andy Wingo  <wingo@pobox.com>
9904
9905         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
9906         source couldn't negotiate.
9907
9908         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
9909         connections again.
9910
9911         * gst/gstutils.h:
9912         * gst/gstutils.c (gst_element_link_pads_filtered): New old
9913         function. I am channeling Hades. Put your boots on suckers!!!
9914
9915 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9916
9917         * testsuite/caps/Makefile.am:
9918         * testsuite/caps/value_compare.c:
9919         * testsuite/caps/value_intersect.c:
9920         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
9921           move two testsuite apps over to the check dir
9922
9923 2005-07-12  Wim Taymans  <wim@fluendo.com>
9924
9925         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
9926         Added more debug info in the negotiate process.
9927
9928         * gst/gstmessage.h:
9929         Prepare for segment playback.
9930
9931         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
9932         Better debugging.
9933
9934         * gst/gstutils.c:
9935         Some more docs.
9936
9937         * tools/gst-launch.c: (main):
9938         NULL pipeline on errors.
9939
9940 2005-07-12  Andy Wingo  <wingo@pobox.com>
9941
9942         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
9943         not it comes from a malloc region. Make sure our copy gets freed.
9944
9945 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9946
9947         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
9948         * check/gst/gstmessage.c: (GST_START_TEST):
9949         * check/gst/gststructure.c: (GST_START_TEST),
9950         (gst_structure_suite), (main):
9951           more testing
9952         * gst/gstelement.c: (gst_element_message_full):
9953           clean up GError and debug string now that they get copied
9954         * gst/gstmessage.c: (gst_message_new_error),
9955         (gst_message_new_warning), (gst_message_parse_error),
9956         (gst_message_parse_warning):
9957           use GST_TYPE_G_ERROR for structure_new, and take copies of
9958           arguments, so that we don't mess up refcounting
9959
9960 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9961
9962         * check/Makefile.am:
9963           add per-test valgrind targets
9964         * check/gst-libs/gdp.c: (GST_START_TEST),
9965         (gst_data_protocol_suite), (main):
9966           clean up
9967
9968 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9969
9970         * check/Makefile.am:
9971           instate more valgrindable tests
9972         * check/elements/gstfakesrc.c: (chain_func), (event_func),
9973         (GST_START_TEST), (fakesrc_suite):
9974         * check/gst/gstpad.c: (GST_START_TEST):
9975         * check/gst/gststructure.c: (GST_START_TEST):
9976           fix test leaks
9977         * docs/gst/tmpl/gstminiobject.sgml:
9978         * gst/gstpad.c: (gst_pad_finalize):
9979           fix the static mutex leak
9980
9981 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9982
9983         * check/Makefile.am:
9984           add two more tests for valgrinding
9985         * check/gst/gstvalue.c: (GST_START_TEST):
9986           test refcount of deserialized buffer, found a leak
9987         * docs/gst/gstreamer-docs.sgml:
9988         * docs/gst/gstreamer-sections.txt:
9989         * docs/gst/gstreamer.types:
9990         * docs/gst/tmpl/gstminiobject.sgml:
9991           add miniobject to docs
9992         * gst/gstminiobject.c:
9993           add some docs
9994         * gst/gstvalue.c: (gst_value_deserialize_buffer),
9995         (gst_string_unwrap):
9996           fix a hard-to-find invalid write for one of the tests
9997           fix a leak for deserialized buffers
9998
9999 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10000
10001         * docs/pwg/advanced-events.xml:
10002         * docs/pwg/advanced-request.xml:
10003         * docs/pwg/advanced-scheduling.xml:
10004         * docs/pwg/appendix-porting.xml:
10005         * docs/pwg/building-boiler.xml:
10006         * docs/pwg/intro-preface.xml:
10007         * docs/pwg/other-ntoone.xml:
10008           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
10009           of example code and explanation for pad activation, loop() and
10010           getrange() functions and a bit more. Remove old comments pointing
10011           to loop-functions.
10012         * examples/pwg/Makefile.am:
10013           Add loop/getrange examples.
10014
10015 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10016
10017         * configure.ac:
10018           check for valgrind binary + some fixes
10019         * check/gst.supp:
10020           valgrind suppressions for the tests
10021         * check/Makefile.am:
10022           add a valgrind: target that valgrinds the unit tests
10023         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
10024         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
10025         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
10026         * check/gst/gstghostpad.c:
10027           added some cleanup
10028         * check/gst/gstdata.c:
10029           removed
10030         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
10031         (thread_unref), (gst_mini_object_suite), (main):
10032           added
10033         * gst/gst.c: (gst_deinit):
10034         * gst/gst.h:
10035           add a method to clean up.
10036         * gst/gstsystemclock.c: (gst_system_clock_dispose),
10037         (gst_system_clock_obtain):
10038           allow for disposing the system clock.
10039         * tools/gst-launch.c: (main):
10040           deinit
10041
10042 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10043
10044         * docs/gst/tmpl/gstbasesrc.sgml:
10045         * docs/gst/tmpl/gstfakesrc.sgml:
10046         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
10047         (gst_base_src_init), (gst_base_src_set_property),
10048         (gst_base_src_get_property), (gst_base_src_get_range),
10049         (gst_base_src_start):
10050         * gst/base/gstbasesrc.h:
10051           add num-buffers property
10052         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
10053         (gst_fakesrc_init), (gst_fakesrc_set_property),
10054         (gst_fakesrc_get_property), (gst_fakesrc_create),
10055         (gst_fakesrc_start):
10056           remove num-buffers property
10057
10058 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10059
10060         * docs/gst/gstreamer-sections.txt:
10061         * docs/gst/tmpl/gstbasesink.sgml:
10062         * docs/gst/tmpl/gstbasesrc.sgml:
10063         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
10064         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
10065         (gst_base_sink_finalize), (gst_base_sink_set_clock),
10066         (gst_base_sink_set_property), (gst_base_sink_get_property),
10067         (gst_base_sink_handle_object), (gst_base_sink_event),
10068         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
10069         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
10070         (gst_base_sink_loop), (gst_base_sink_deactivate),
10071         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
10072         (gst_base_sink_change_state):
10073         * gst/base/gstbasesink.h:
10074         * gst/base/gstbasesrc.h:
10075         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
10076         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
10077         (gst_filesink_init):
10078           more macro splitting
10079
10080 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10081
10082         * gst/gstelement.c: (gst_element_get_bus):
10083           add debug
10084         * tools/gst-launch.c: (check_intr), (event_loop):
10085           fix bus leaks
10086
10087 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10088
10089         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
10090           fix a caps leak
10091
10092 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10093
10094         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
10095         (gst_base_src_finalize):
10096           add finalize method and clean up properly
10097         * gst/gstpipeline.c: (gst_pipeline_dispose):
10098           add debug
10099
10100 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10101
10102         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
10103         (gst_bin_suite):
10104           add more things to check
10105         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
10106         * gst/gstelement.c:
10107           more debug
10108
10109 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10110
10111         * check/elements/gstfakesrc.c: (chain_func), (event_func),
10112         (GST_START_TEST), (fakesrc_suite):
10113         * check/gst-libs/gdp.c: (GST_START_TEST):
10114         * check/gst/gst.c: (GST_START_TEST):
10115         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
10116         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
10117         * check/gst/gstbus.c: (GST_START_TEST):
10118         * check/gst/gstcaps.c: (GST_START_TEST):
10119         * check/gst/gstdata.c: (GST_START_TEST):
10120         * check/gst/gstelement.c: (GST_START_TEST):
10121         * check/gst/gstghostpad.c: (GST_START_TEST):
10122         * check/gst/gstiterator.c: (GST_START_TEST):
10123         * check/gst/gstmessage.c: (GST_START_TEST):
10124         * check/gst/gstobject.c: (GST_START_TEST):
10125         * check/gst/gstpad.c: (GST_START_TEST):
10126         * check/gst/gststructure.c: (GST_START_TEST):
10127         * check/gst/gstsystemclock.c: (GST_START_TEST),
10128         (gst_systemclock_suite):
10129         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
10130         * check/gst/gstvalue.c: (GST_START_TEST):
10131         * check/pipelines/cleanup.c: (GST_START_TEST):
10132         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
10133         * check/states/sinks.c: (GST_START_TEST):
10134         * check/gstcheck.c: (gst_check_init):
10135         * check/gstcheck.h:
10136           add debugging category
10137           use GST_START_TEST now, so we add a debug line
10138
10139 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10140
10141         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
10142           add test for state change message on a bin
10143         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
10144           add another test
10145         * gst/gstbin.c: (gst_bin_init):
10146         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
10147         * gst/gstelement.c: (gst_element_post_message),
10148         (gst_element_set_state):
10149         * gst/gstelementfactory.c: (gst_element_factory_create):
10150         * gst/gstmessage.c: (gst_message_new):
10151         * gst/gstscheduler.c:
10152           various debugging additions and cleanups
10153
10154 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10155
10156         * check/Makefile.am:
10157         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
10158         (main):
10159           adding tests for elements
10160         * gst/gstelement.c: (gst_element_dispose):
10161
10162 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10163
10164         * gst/registries/gstlibxmlregistry.c: (load_feature):
10165           plug more leaks.  A simple gst_init() now is leakfree, yay.
10166
10167 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10168
10169         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
10170         (gst_xml_registry_load):
10171           plug another memleak
10172
10173 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10174
10175         * configure.ac:
10176           use GST_SET_ERROR_CFLAGS
10177         * docs/faq/cvs.xml:
10178           change to ERROR_CFLAGS
10179
10180 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10181
10182         * configure.ac:
10183           make GST_ERROR_CFLAGS overridable and re-enable Werror
10184         * docs/faq/cvs.xml:
10185           add a note about error CFLAGS
10186         * docs/gst/tmpl/gstfakesrc.sgml:
10187         * gst/elements/gstfakesrc.c:
10188           comment out some unused code
10189         * gst/gst.c: (split_and_iterate):
10190         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
10191         (load_feature):
10192           plug some memleaks
10193
10194 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10195
10196         * common/Makefile.am:
10197         * common/gtk-doc.mak:
10198         * docs/gst/Makefile.am:
10199           factor out gtk-doc.mak
10200
10201 2005-07-07  Wim Taymans  <wim@fluendo.com>
10202
10203         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
10204         (gst_thread_scheduler_dispose):
10205         Unlock the STREAM_LOCK completely.
10206
10207 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10208
10209         * check/Makefile.am:
10210         * check/elements/.cvsignore:
10211         * check/elements/gstfakesrc.c: (chain_func), (event_func),
10212         (START_TEST), (fakesrc_suite), (main):
10213         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
10214         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
10215         (gst_fakesrc_create), (gst_fakesrc_start):
10216         * gst/elements/gstfakesrc.h:
10217           adding a first element test
10218
10219 2005-07-07  Andy Wingo  <wingo@pobox.com>
10220
10221         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
10222         debug message.
10223
10224 2005-07-07  Wim Taymans  <wim@fluendo.com>
10225
10226         * gst/gstquery.c:
10227         * gst/gstquery.h:
10228         Remove old types
10229
10230 2005-07-07  Wim Taymans  <wim@fluendo.com>
10231
10232         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
10233         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
10234         Allow subclasses to implement their own negotiation.
10235
10236 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
10237
10238         * docs/design/part-gstbin.txt:
10239         * docs/design/part-gstpipeline.txt:
10240           Update design notes to reflect the movement of
10241           responsibility for bus handling from GstPipeline to
10242           GstBin
10243
10244 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
10245
10246         * configure.ac:
10247           Remove unnecessary queue2/3/4 examples.
10248
10249 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
10250
10251         * examples/Makefile.am:
10252         * examples/helloworld/helloworld.c: (event_loop), (main):
10253         * examples/queue/queue.c: (event_loop), (main):
10254         * examples/queue2/queue2.c: (main):
10255           Update a couple of the examples to work again.
10256
10257         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
10258         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
10259          Spelling corrections and extra debug.
10260         
10261         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
10262         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
10263         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
10264         * gst/gstbin.h:
10265         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
10266         (gst_pipeline_change_state):
10267         * gst/gstpipeline.h:
10268           Move the bus handler for children to the GstBin, and create a
10269           separate bus for receiving messages from children to the one the
10270           bus sends 'upwards' on.
10271
10272 2005-07-06  Wim Taymans  <wim@fluendo.com>
10273
10274         * gst/base/README:
10275         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
10276         (gst_base_sink_handle_object), (gst_base_sink_loop),
10277         (gst_base_sink_change_state):
10278         * gst/base/gstbasesink.h:
10279         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
10280         (gst_base_src_init), (gst_base_src_setcaps),
10281         (gst_base_src_getcaps), (gst_base_src_loop),
10282         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
10283         (gst_base_src_start), (gst_base_src_change_state):
10284         * gst/base/gstbasesrc.h:
10285         Make basesrc negotiate.
10286         Handle the case where preroll fails in basesink.
10287         Update README.
10288
10289 2005-07-06  Wim Taymans  <wim@fluendo.com>
10290
10291         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
10292         Implement the fixate function.
10293         Clean up acceptcaps.
10294
10295 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10296
10297         * docs/pwg/building-filterfactory.xml:
10298         * docs/pwg/pwg.xml:
10299           Remove never-written filter-factory chapter; I'll add the various
10300           base classes to part 4 ("other element types") later on.
10301
10302 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10303
10304         * docs/pwg/advanced-negotiation.xml:
10305         * docs/pwg/building-boiler.xml:
10306         * docs/pwg/building-pads.xml:
10307         * docs/pwg/pwg.xml:
10308         * examples/pwg/Makefile.am:
10309           Add a chapter on caps negotiation, simplify the original code
10310           samples a bit w.r.t. caps negotiation, add link to the advanced
10311           section. Add a bunch of examples showing different use cases of
10312           different types of caps negotiation. Upstream renegotiation isn't
10313           fully documented yet since nobody knows how that works.
10314
10315 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10316
10317         * check/gst/gstpad.c:
10318         * check/gstcheck.c:
10319         * gst/gstpad.c: (gst_pad_get_internal_links_default):
10320           if pad has no parent, return NULL as list of internal links
10321
10322 2005-07-05  Andy Wingo  <wingo@pobox.com>
10323
10324         * gst/elements/gstfilesrc.c:
10325         * gst/elements/gstfakesrc.c: 
10326         * gst/base/gstpushsrc.c:
10327         * gst/base/gstbasesrc.h: 
10328         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
10329         
10330 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
10331
10332         * Makefile.am:
10333           better report generation target (lcov needs a patch)
10334
10335 2005-07-05  Andy Wingo  <wingo@pobox.com>
10336
10337         * gst/elements, testsuite: Null if we got it...
10338
10339 2005-07-05  Wim Taymans  <wim@fluendo.com>
10340
10341         * configure.ac:
10342         * libs/gst/dataprotocol/Makefile.am:
10343         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
10344         * libs/gst/dataprotocol/dataprotocol.h:
10345         * pkgconfig/Makefile.am:
10346         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
10347         * pkgconfig/gstreamer-dataprotocol.pc.in:
10348         Ported dataprotol to 0.9. 
10349         Added pkgconfig files.
10350
10351 2005-07-05  Andy Wingo  <wingo@pobox.com>
10352
10353         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
10354         Default to returning TRUE for the case when tranform_caps returns
10355         a fixed caps, like for identity or volume.
10356
10357         * check/gst/gstbus.c (pound_bus_with_messages): 
10358         * check/gst/gstmessage.c (START_TEST): 
10359         * check/pipelines/simple_launch_lines.c (got_handoff): Application
10360         message API change.
10361
10362         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
10363         logic weaks here: always run transform_caps, trying passthrough
10364         operation only if the original caps intersects with the transform.
10365
10366         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
10367         source and sink caps.
10368
10369         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
10370         Intersect the peer caps with the pad template before going into
10371         transform_caps.
10372         (gst_base_transform_transform_caps): More debugging.
10373
10374         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
10375         src argument.
10376
10377 2005-07-04  Edward Hervey  <edward@fluendo.com>
10378
10379         * gst/gstutils.c:
10380         * gst/gstutils.h:
10381         (gst_pad_add_*_probe): now returns the signal id for better wrapping
10382         in bindings.
10383
10384 2005-07-04  Andy Wingo  <wingo@pobox.com>
10385
10386         * check/gst/gstpad.c: Only set explicit caps on pads.
10387
10388 2005-07-01  Andy Wingo  <wingo@pobox.com>
10389
10390         * tests/network-clock.scm: Commentary update.
10391
10392         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
10393         Didn't really make sense, not implementable with basetransform,
10394         etc.
10395         (gst_identity_transform): Unref inbuf via make_writable. Feeble
10396         attempt at implementing the sync property, needs an unlock method.
10397
10398         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
10399         New func, by default returns the same caps (the identity
10400         transformation).
10401         (gst_base_transform_getcaps): Uses transform_caps to return
10402         something sensible.
10403         (gst_base_transform_setcaps): Complicated logic to get caps on
10404         both pads, even if they are different, and to call set_caps once
10405         for every time both pads get their caps set.
10406         (gst_base_transform_handle_buffer): Give the ref to the transform
10407         function. Allows in-place modification of the buffer.
10408
10409         * gst/base/gstbasetransform.h (transform_caps): New class method.
10410         Given caps on one side, what can I do on the other.
10411         (set_caps): Take two caps, one for each side of the element.
10412
10413         * gst/gstpad.h:
10414         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
10415         caps in place. This is safe because we can check the mutability of
10416         the caps, and a good idea because fixate functions are just called
10417         as a matter of last resort. (Not actually implemented.)
10418         (gst_pad_set_caps): If the caps we're setting is actually the same
10419         as the existing pad caps, just update the pointer without calling
10420         setcaps. Assert that caps is either NULL or fixed, as per the
10421         docs.
10422
10423         * gst/gstghostpad.c: Update for fixate changes.
10424
10425 2005-07-02  Andy Wingo  <wingo@pobox.com>
10426
10427         * gst/gstcaps.c:
10428         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
10429         two refcounts makes it immutable, which is enough. Doc more.
10430
10431 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
10432
10433         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
10434           Put the mini_object into GValue as a mini_object,
10435           not a gpointer, since that's how we declared
10436           the signal.
10437
10438 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10439
10440         * examples/pwg/Makefile.am:
10441           Fix buildbot again.
10442
10443 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10444
10445         * docs/pwg/building-testapp.xml:
10446           Add extra check.
10447         * examples/pwg/Makefile.am:
10448           Fix buildbot.
10449
10450 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10451
10452         * configure.ac:
10453         * examples/Makefile.am:
10454         * examples/pwg/Makefile.am:
10455         * examples/pwg/extract.pl:
10456           Enable building the PWG examples.
10457         * docs/pwg/advanced-interfaces.xml:
10458           Add URI interface stub.
10459         * docs/pwg/advanced-types.xml:
10460         * docs/pwg/other-autoplugger.xml:
10461         * docs/pwg/appendix-porting.xml:
10462         * docs/pwg/pwg.xml:
10463           Add porting guide (mostly stubs), remove autoplugging (see ADM).
10464         * docs/pwg/building-boiler.xml:
10465         * docs/pwg/building-chainfn.xml:
10466         * docs/pwg/building-pads.xml:
10467         * docs/pwg/building-props.xml:
10468         * docs/pwg/building-state.xml:
10469         * docs/pwg/building-testapp.xml:
10470           Update the building-*.xml parts for 0.9 changes. All examples
10471           code blocks compile in examples/pwg/*.
10472
10473 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10474
10475         * docs/manual/advanced-autoplugging.xml:
10476         * docs/manual/appendix-checklist.xml:
10477         * docs/manual/appendix-integration.xml:
10478         * docs/manual/highlevel-components.xml:
10479           Fix playbin/decodebin examples, update docs a bit, mention bus
10480           instead of signals in various places, mention kmplayer and
10481           kaffeine since they have a working GStreamer backend in the KDE
10482           section.
10483
10484 2005-06-30  Wim Taymans  <wim@fluendo.com>
10485
10486         * CHANGES-0.9:
10487         * docs/design/draft-ghostpads.txt:
10488         * docs/design/draft-push-pull.txt:
10489         * docs/design/draft-query.txt:
10490         * docs/design/part-TODO.txt:
10491         * docs/design/part-query.txt:
10492         Added CHANGES-0.9 doc, updated status of other docs.
10493         
10494         * gst/gstquery.h:
10495         Remove "hmm" macro
10496
10497 2005-06-30  Wim Taymans  <wim@fluendo.com>
10498
10499         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
10500         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
10501         (gst_base_sink_change_state):
10502         * gst/base/gstbasesink.h:
10503         Some tweaks, only EOS and a buffer complete a preroll.
10504
10505 2005-06-30  Andy Wingo  <wingo@pobox.com>
10506
10507         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
10508         activate_push down to the internal pad as well.
10509
10510 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
10511
10512         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10513
10514         * gst/gsttaginterface.c:
10515           Some documentation fixes (#307394 and #307397).
10516
10517 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
10518
10519         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10520
10521         * gst/gstvalue.c: (gst_value_intersect_list):
10522           Fix memleak (#309125).
10523
10524 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10525
10526         * docs/manual/advanced-dataaccess.xml:
10527           Fix fakesrc example to compile; doesn't work, bug somewhere...?
10528         * docs/manual/basics-pads.xml:
10529           Add reference for filtered caps to above chapter.
10530
10531 2005-06-30  Wim Taymans  <wim@fluendo.com>
10532
10533         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
10534         (gst_bin_change_state):
10535         Probes are gone.
10536         Lame attempt at making the state change function a bit
10537         more readable.
10538
10539 2005-06-30  Wim Taymans  <wim@fluendo.com>
10540
10541         * docs/design/part-clocks.txt:
10542         * docs/design/part-element-sink.txt:
10543         * docs/design/part-events.txt:
10544         * docs/design/part-preroll.txt:
10545         * docs/design/part-states.txt:
10546         Some more tweeks and additions to the docs.
10547
10548 2005-06-30  Wim Taymans  <wim@fluendo.com>
10549
10550         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
10551         (default_have_data), (gst_pad_class_init), (gst_pad_init),
10552         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
10553         (gst_pad_check_pull_range), (gst_pad_get_range),
10554         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
10555         * gst/gstpad.h:
10556         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
10557         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
10558         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
10559         (gst_pad_remove_buffer_probe):
10560         Removed atomic operations, use existing LOCK.
10561         Move exception handling out of main code path.
10562
10563 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10564
10565         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
10566         (silly_return_true_function), (gst_pad_class_init),
10567         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
10568         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
10569         (gst_pad_send_event):
10570           Fix accumulator, add default value by using _emitv() instead
10571           of _emit() for signal emission.
10572
10573 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10574
10575         * docs/manual/advanced-dataaccess.xml:
10576         * examples/manual/Makefile.am:
10577           Add probe example.
10578         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
10579           Make work (??).
10580
10581 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
10582
10583         * gst/elements/gstfilesink.c: (gst_filesink_render):
10584           Simplify code so that we don't have to handle short
10585           writes and return GST_FLOW_ERROR if an error occured.
10586
10587 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10588
10589         * docs/gst/gstreamer-docs.sgml:
10590           Remove probes more.
10591
10592 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10593
10594         * docs/gst/gstreamer-sections.txt:
10595         * docs/gst/tmpl/gstpad.sgml:
10596         * docs/gst/tmpl/gstprobe.sgml:
10597         * gst/Makefile.am:
10598         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
10599         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
10600         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
10601         (gst_pad_push_event), (gst_pad_send_event):
10602         * gst/gstpad.h:
10603         * gst/gstutils.c: (gst_pad_add_data_probe),
10604         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
10605         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
10606         (gst_pad_remove_buffer_probe):
10607         * gst/gstutils.h:
10608           Remove old probes, add new g-signal-based probes and some utility
10609           functions.
10610
10611 2005-06-29  Edward Hervey  <edward@fluendo.com>
10612
10613         * gst/gstelementfactory.c:
10614         * gst/gstutils.h:
10615         * gst/gstutils.c:
10616         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
10617         the definition to the header file.
10618
10619 2005-06-29  Andy Wingo  <wingo@pobox.com>
10620
10621         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
10622         plugins from the source directory.
10623
10624 2005-06-29  Wim Taymans  <wim@fluendo.com>
10625
10626         * docs/gst/tmpl/gstbuffer.sgml:
10627         * docs/gst/tmpl/gstclock.sgml:
10628         Some fixings for blantently wrong text.
10629
10630 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10631
10632         * check/Makefile.am:
10633         * gst/gst.c: (add_path_func), (init_pre):
10634         * gst/gstregistry.c: (gst_registry_add_path):
10635           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
10636           only scan the GST_PLUGIN_PATH locations, and not add
10637           system locations
10638
10639 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10640
10641         * docs/gst/gstreamer-sections.txt:
10642         * docs/gst/tmpl/gstbasesrc.sgml:
10643         * gst/gstelement.c:
10644         * gst/gstelement.h:
10645         * gst/gstevent.c:
10646         * gst/gstutils.c:
10647           doc fixes
10648
10649 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10650
10651         * docs/manual/advanced-autoplugging.xml:
10652           Fix autoplugging example.
10653
10654 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10655
10656         * docs/manual/advanced-autoplugging.xml:
10657         * docs/manual/mime-world.fig:
10658           Try to get autoplugging working, fix type detection. Fix text
10659           in hello-world image.
10660
10661 2005-06-29  Wim Taymans  <wim@fluendo.com>
10662
10663         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
10664         (gst_base_sink_change_state):
10665         Small debug line.
10666
10667         * gst/gstclock.h:
10668         map SIGNAL and BROADCAST to the right function.
10669
10670         * gst/gstobject.h:
10671         Remove redundant braces.
10672
10673         * gst/gstpad.c: (gst_pad_set_caps):
10674         Don't call setcaps function when reseting caps to NULL.
10675
10676         * gst/gstsystemclock.c: (gst_system_clock_dispose),
10677         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
10678         (gst_system_clock_id_unschedule):
10679         Use BROADCAST as this is what we do.
10680
10681 2005-06-29  Wim Taymans  <wim@fluendo.com>
10682
10683         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
10684         We are actually prerolling before commiting the state
10685         change. 
10686
10687 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10688
10689         * docs/manual/advanced-clocks.xml:
10690         * docs/manual/advanced-interfaces.xml:
10691         * docs/manual/advanced-metadata.xml:
10692         * docs/manual/advanced-position.xml:
10693         * docs/manual/advanced-schedulers.xml:
10694         * docs/manual/advanced-threads.xml:
10695         * docs/manual/appendix-porting.xml:
10696         * docs/manual/basics-bins.xml:
10697         * docs/manual/basics-bus.xml:
10698         * docs/manual/basics-elements.xml:
10699         * docs/manual/basics-helloworld.xml:
10700         * docs/manual/basics-pads.xml:
10701         * docs/manual/highlevel-components.xml:
10702         * docs/manual/manual.xml:
10703         * docs/manual/thread.fig:
10704           Update (until threads/scheduling) Application Development Manual;
10705           remove GstThread, add GstBus, add simple porting checklist, add
10706           documentation for tag writing, clocks, make all examples until this
10707           part compile and run.
10708         * examples/manual/Makefile.am:
10709           Update from changes to Application Development Manual; add bus
10710           example, remove thread example.
10711
10712 2005-06-28  Wim Taymans  <wim@fluendo.com>
10713
10714         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
10715         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
10716         (gst_bus_source_dispatch):
10717         Add debugging messages.
10718         Make internal methods static.
10719         Handle the case where the bus is flushed in the handler.
10720         
10721         * gst/gstelement.c: (gst_element_get_bus):
10722         Fix refcount in _get_bus();
10723
10724         * gst/gstpipeline.c: (gst_pipeline_change_state),
10725         (gst_pipeline_get_clock_func):
10726         Clock refcounting fixes.
10727         Handle the case where preroll timed out more gracefully.
10728         
10729         * gst/gstsystemclock.c: (gst_system_clock_dispose):
10730         Clean up the internal thread in dispose. This is needed
10731         for subclasses that actually get disposed.
10732         
10733         * gst/schedulers/threadscheduler.c:
10734         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
10735         (gst_thread_scheduler_dispose):
10736         Free thread pool in dispose.
10737
10738 2005-06-28  Andy Wingo  <wingo@pobox.com>
10739
10740         * tests/network-clock-utils.scm (debug, print-event): New utils.
10741
10742         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
10743         (*packet-loss*): Unified loss probability.
10744         (network-time): Report out-of-band events.
10745
10746         * tests/plot-data: Add support for out-of-band events. Hack it
10747         into this script instead of passing it down the pipe; should fix
10748         this later.
10749
10750 2005-06-28  Wim Taymans  <wim@fluendo.com>
10751
10752         * docs/gst/gstreamer.types:
10753         * docs/gst/tmpl/gstbasesrc.sgml:
10754         * docs/gst/tmpl/gstpad.sgml:
10755         Docs fixes.
10756
10757 2005-06-28  Wim Taymans  <wim@fluendo.com>
10758
10759         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
10760         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
10761         (gst_proxy_pad_do_fixatecaps):
10762         Correctly proxy the check_pull_range function.
10763
10764 2005-06-28  Andy Wingo  <wingo@pobox.com>
10765
10766         * tests/network-clock.scm: Removed need for slib.
10767         
10768 2005-06-28  Wim Taymans  <wim@fluendo.com>
10769
10770         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
10771         (gst_basesink_preroll_queue_flush):
10772         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
10773         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
10774         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
10775         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
10776         (gst_proxy_pad_set_property):
10777         * gst/gstpad.c:
10778         * gst/gstpad.h:
10779         * gst/gstqueue.c: (gst_queue_init):
10780         The deprecated pad loop function is removed now.
10781
10782 2005-06-28  Andy Wingo  <wingo@pobox.com>
10783
10784         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
10785         New parameters, simulate network packet loss.
10786
10787         * tests/network-clock-utils.scm: Initialize the RNG.
10788
10789 2005-06-28  Wim Taymans  <wim@fluendo.com>
10790
10791         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
10792         (gst_basesink_event), (gst_basesink_deactivate):
10793         Flushing the preroll queue always needs to unlock the waiters.
10794
10795 2005-06-28  Edward Hervey  <edward@fluendo.com>
10796
10797         * gst/gstpipeline.c: (gst_pipeline_send_event): 
10798         Wheen a seek was successful on a pipeline, set the stream_time to the
10799         seek offset in order to have a synchronized stream_time.
10800
10801 2005-06-28  Wim Taymans  <wim@fluendo.com>
10802
10803         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
10804         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
10805         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
10806         (gst_proxy_pad_do_fixatecaps):
10807         Call wrapper function instead of just calling the function
10808         pointers. This takes care of any locking and whatmore.
10809
10810 2005-06-28  Wim Taymans  <wim@fluendo.com>
10811
10812         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
10813         (gst_pad_pull_range):
10814         * gst/gstpad.h:
10815         CONNECTED -> LINKED.
10816
10817 2005-06-28  Andy Wingo  <wingo@pobox.com>
10818
10819         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
10820         source-munging commit!!!
10821
10822         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
10823         (gst_object_sink): Take gpointer arguments, not GstObject --
10824         avoids casts. Like GLib.
10825
10826         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
10827         activate.
10828
10829 2005-06-27  Andy Wingo  <wingo@pobox.com>
10830
10831         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
10832         remaining buffer.
10833
10834         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
10835         returns a sorted copy of the trace list.
10836         (gst_alloc_trace_print_live): New API, only prints traces with
10837         live objects. Sort the list.
10838         (gst_alloc_trace_print_all): Sort the list.
10839         (gst_alloc_trace_print): Align columns.
10840
10841         * gst/elements/gstttypefindelement.c:
10842         * gst/elements/gsttee.c:
10843         * gst/base/gstbasesrc.c:
10844         * gst/base/gstbasesink.c:
10845         * gst/base/gstbasetransform.c:
10846         * gst/gstqueue.c: Adapt for pad activation changes.
10847
10848         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
10849         sched.
10850         (gst_pipeline_dispose): Drop ref on sched.
10851
10852         * gst/gstpad.c (gst_pad_init): Set the default activate func.
10853         (gst_pad_activate_default): Push mode by default.
10854         (pre_activate_switch, post_activate_switch): New stubs, things to
10855         do before and after switching activation modes on pads.
10856         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
10857         the pad's activate function to choose which mode to activate.
10858         Shortcut on deactivation and call the right function directly.
10859         (gst_pad_activate_pull): New API, (de)activates a pad in pull
10860         mode.
10861         (gst_pad_activate_push): New API, same for push mode.
10862         (gst_pad_set_activate_function) 
10863         (gst_pad_set_activatepull_function) 
10864         (gst_pad_set_activatepush_function): Setters for new API.
10865
10866         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
10867         Trace all miniobjects.
10868         (gst_mini_object_make_writable): Unref the arg if we copy, like
10869         gst_caps_make_writable.
10870
10871         * gst/gstmessage.c (_gst_message_initialize): No trace init.
10872
10873         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
10874         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
10875         Adapt for new pad API.
10876
10877         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
10878
10879         * gst/gstelement.h:
10880         * gst/gstelement.c (gst_element_iterate_src_pads) 
10881         (gst_element_iterate_sink_pads): New API functions.
10882         
10883         * gst/gstelement.c (iterator_fold_with_resync): New utility,
10884         should fold into gstiterator.c in some form.
10885         (gst_element_pads_activate): Simplified via use of fold and
10886         delegation of decisions to gstpad->activate.
10887
10888         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
10889         help in debugging.
10890
10891         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
10892         class once in init, like gstmessage. Didn't run into this issue
10893         but it seems correct. Don't initialize a trace, gstminiobject does
10894         that.
10895
10896         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
10897         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
10898         to the bus.
10899         (assert_live_count): New util function, uses alloc traces to check
10900         cleanup.
10901
10902         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
10903         To be modified when unlink drops the internal pad.
10904
10905 2005-06-27  Wim Taymans  <wim@fluendo.com>
10906
10907         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
10908         (gst_bin_change_state):
10909         Cleanup the get_state() function a little, make sure it
10910         iterates the same set of elements.
10911         Added stub iterate_state_order().
10912
10913 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
10914
10915         * docs/gst/gstreamer-docs.sgml:
10916         * docs/gst/gstreamer-sections.txt:
10917         * docs/gst/gstreamer.types:
10918         * docs/gst/tmpl/gstbasesink.sgml:
10919         * docs/gst/tmpl/gstbasesrc.sgml:
10920         * docs/gst/tmpl/gstbasetransform.sgml:
10921         * docs/gst/tmpl/gstelement.sgml:
10922         * docs/gst/tmpl/gstiterator.sgml:
10923         * gst/base/gstbasesrc.c:
10924         * gst/base/gstbasesrc.h:
10925         * gst/base/gstbasetransform.h:
10926         * gst/gstelement.c:
10927         * gst/gstiterator.h:
10928           adding basetransform and iterator docs
10929
10930 2005-06-27  Andy Wingo  <wingo@pobox.com>
10931
10932         * docs/design/part-activation.txt: Notes on how activation should
10933         work -- not quite implemented yet.
10934
10935 2005-06-25  Wim Taymans  <wim@fluendo.com>
10936
10937         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
10938         At least get the chain function correct, needs more
10939         fixing.
10940
10941 2005-06-25  Wim Taymans  <wim@fluendo.com>
10942
10943         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
10944         (gst_basesink_handle_object), (gst_basesink_event),
10945         (gst_basesink_do_sync), (gst_basesink_handle_event),
10946         (gst_basesink_change_state):
10947         * gst/gsttask.h:
10948         Right, two problems here: ghostpads don't take locks and
10949         glib _rec_mutex_lock_full() with depth==0 still locks.
10950         Catch illegal locking and g_warn them.
10951
10952 2005-06-25  Wim Taymans  <wim@fluendo.com>
10953
10954         * check/states/sinks.c: (START_TEST), (gst_object_suite):
10955         Have to check for completion now...
10956
10957 2005-06-25  Wim Taymans  <wim@fluendo.com>
10958
10959         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
10960         (gst_basesink_handle_object), (gst_basesink_event),
10961         (gst_basesink_do_sync), (gst_basesink_handle_event),
10962         (gst_basesink_change_state):
10963         * gst/gstpad.h:
10964         Unlock STREAM_LOCK whatever the recursion was.
10965
10966 2005-06-25  Wim Taymans  <wim@fluendo.com>
10967
10968         * gst/base/gstbasesink.c: (gst_basesink_set_property),
10969         (gst_basesink_preroll_queue_empty),
10970         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
10971         (gst_basesink_event), (gst_basesink_do_sync),
10972         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
10973         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
10974         (gst_basesink_change_state):
10975         Reworked the base sink, handle event and buffer serialisation
10976         correctly and removed possible deadlock.
10977         Handle EOS correctly.
10978
10979 2005-06-25  Wim Taymans  <wim@fluendo.com>
10980
10981         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
10982         (gst_pipeline_change_state):
10983         * tools/gst-launch.c: (check_intr), (event_loop), (main):
10984         Allow elements to post EOS in the state change function.
10985         Fix up -launch, make it exit the poll loop when the
10986         pipeline actually changed state.
10987         Fix up warning parsing in -launch.
10988
10989 2005-06-25  Wim Taymans  <wim@fluendo.com>
10990
10991         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
10992         (gst_tee_sink_activate):
10993         Core takes STREAM_LOCK for us now.
10994
10995 2005-06-25  Wim Taymans  <wim@fluendo.com>
10996
10997         * gst/gstelement.c: (gst_element_get_state_func),
10998         (gst_element_set_state):
10999         * gst/gstelement.h:
11000         * gst/gstmessage.c: (gst_message_parse_error),
11001         (gst_message_parse_warning):
11002         Keep track of current target state while performing a state
11003         change so that subclasses can do something interesting.
11004         Fix parsing of warning/error messages when GError is NULL.
11005
11006 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11007
11008         * docs/gst/Makefile.am:
11009         * docs/gst/gstreamer-docs.sgml:
11010         * docs/gst/gstreamer-sections.txt:
11011         * docs/gst/gstreamer.types:
11012         * docs/gst/tmpl/gstbasesink.sgml:
11013         * docs/gst/tmpl/gstbasesrc.sgml:
11014         * docs/gst/tmpl/gstbin.sgml:
11015         * docs/gst/tmpl/gstcompat.sgml:
11016         * docs/gst/tmpl/gstfakesink.sgml:
11017         * docs/gst/tmpl/gstfakesrc.sgml:
11018         * docs/gst/tmpl/gstfilesink.sgml:
11019         * docs/gst/tmpl/gstfilesrc.sgml:
11020         * docs/gst/tmpl/gstindex.sgml:
11021         * docs/manual/appendix-quotes.xml:
11022         * gst/base/gstbasesrc.h:
11023         * gst/elements/gstfakesrc.h:
11024         * gst/gstmessage.h:
11025           start pulling in base classes and elements in our docs
11026
11027 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
11028
11029         * docs/gst/Makefile.am:
11030         * docs/libs/Makefile.am:
11031           fixed make distcheck with gtk-doc 1.3
11032
11033 2005-06-23  Wim Taymans  <wim@fluendo.com>
11034
11035         * gst/gstelement.c: (gst_element_get_state_func),
11036         (gst_element_set_state), (gst_element_change_state):
11037         When the state did not change, also report NO_PREROLL
11038         when it matters.
11039
11040 2005-06-23  Wim Taymans  <wim@fluendo.com>
11041
11042         * gst/gstpad.c: (gst_pad_event_default):
11043         * gst/gstqueue.c: (gst_queue_loop):
11044         No unsafe task pausing please.
11045
11046 2005-06-23  Wim Taymans  <wim@fluendo.com>
11047
11048         * gst/schedulers/threadscheduler.c:
11049         (gst_thread_scheduler_task_start),
11050         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
11051         Ref the task before pushing it on the threadpool. This
11052         makes sure that we have a ref when the threadfunction is
11053         actually called.
11054
11055 2005-06-23  Andy Wingo  <wingo@pobox.com>
11056
11057         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
11058         offset is greater than the file's size.
11059
11060         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
11061         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
11062         * gst/gstobject.c (gst_object_class_init): Make the class lock
11063         recursive. Wim won't let me drop deep_notify. Decodebin works
11064         again, whoopdy doo.
11065
11066         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
11067         internal pad, and hacks accordingly. Doesn't do it on the target
11068         pad because we change its caps. Probably catches all cases of
11069         interest tho.
11070         (gst_ghost_pad_set_property): Connect to notify::caps as
11071         appropritate.
11072
11073         * tests/network-clock.scm (plot-simulation): Pipe data to the
11074         elite python skript.
11075
11076         * tests/network-clock-utils.scm (define-parameter): New macro,
11077         defines a parameter that can be set via the command line.
11078         (set-parameter!, parse-parameter-arguments): Command line args
11079         parser.
11080
11081         * tests/plot-data: Simple matplotlib-based plotter, takes input on
11082         stdin.
11083
11084 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
11085
11086         * gst/elements/gsttypefindelement.c:
11087         (gst_type_find_element_handle_event):
11088           Don't restart typefinding on a discont.
11089         * gst/gstelement.c: (gst_element_set_state):
11090           Debug spelling fix.
11091         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
11092           Allow changing mode of an active pad.
11093           Debug output fixes.
11094         * gst/registries/gstlibxmlregistry.c: (load_feature):
11095           Don't cast a static pad template to a normal pad template.
11096
11097 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11098
11099         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
11100         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
11101           remove gst_strtoll completely, since it didn't actually do
11102           anything more than what g_ascii_strtoull already does.
11103           check for range errors when deserializing
11104           do a cast for the unsigned cases; but further fixing needs
11105           a decision on what the interpretation of "(int)" and
11106           deserialization should be for values that fall outside the
11107           type's boundaries (ie, refuse, or interpret as casting)
11108
11109 2005-06-23  Wim Taymans  <wim@fluendo.com>
11110
11111         * check/Makefile.am:
11112         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
11113         * docs/design/part-live-source.txt:
11114         * docs/design/part-states.txt:
11115         * gst/base/gstbasesrc.c: (gst_basesrc_init),
11116         (gst_basesrc_set_live), (gst_basesrc_is_live),
11117         (gst_basesrc_get_range), (gst_basesrc_activate),
11118         (gst_basesrc_change_state):
11119         * gst/base/gstbasesrc.h:
11120         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
11121         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
11122         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
11123         * gst/gstelement.c: (gst_element_get_state_func),
11124         (gst_element_set_state):
11125         * gst/gstelement.h:
11126         * gst/gsttypes.h:
11127         * tools/gst-launch.c: (event_loop), (main):
11128         Added support for live sources and other elements that
11129         cannot do preroll.
11130         Updated design docs, added live-source design doc.
11131         Implemented live source functionality in basesrc
11132         Fix error condition in _bin_get_state()
11133         Implement live source handling in -launch.
11134         Added check for live sources.
11135         Fixed case in GstBin where elements were changed state
11136         multiple times.
11137
11138
11139 2005-06-23  Andy Wingo  <wingo@pobox.com>
11140
11141         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
11142         borken refcounting.
11143
11144         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
11145         gst_caps_replace takes care of this for us.
11146
11147         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
11148         gst_pad_set_caps on the target, not just its setcaps() function.
11149
11150         * tests/network-clock.scm: 
11151         * tests/network-clock-utils.scm: A network clock simulator.
11152         Something of an algorithmic testbed before doing something in C.
11153
11154 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11155
11156         * check/Makefile.am:
11157         * check/gst/capslist.h:
11158           copy over from 0.8, and add two with bitmasks specified with
11159           (int) 0xFF...
11160         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
11161           add test to parse everything from capslist.h
11162         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
11163         (main):
11164           add test for structure deserialization
11165         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
11166           add tests for deserialization of strings to int types
11167         * gst/gststructure.c: (gst_structure_nth_field_name):
11168         * gst/gststructure.h:
11169           add a way to get the name of a field referenced by index
11170         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
11171           instead of checking if the resulting long long lies between
11172           min and max, we check if the long long would fit into
11173           a number of bytes for the final type.
11174           This fixes cases where a string represents 2^32 - 1, which
11175           when cast to int would be the (valid) -1, but is bigger than
11176           G_MAXINT
11177
11178 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11179
11180         * gst/parse/grammar.y:
11181           add a log line for type deserialization
11182
11183 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11184
11185         * check/gst/gstvalue.c: (START_TEST):
11186         * gst/gstvalue.c: (gst_value_deserialize):
11187           return long long, not int, so gint64 deserialization actually
11188           works.  Is there any flag that makes the compiler check this ?
11189           Fixes #308559
11190
11191 2005-06-22  Wim Taymans  <wim@fluendo.com>
11192
11193         * gst/gstbuffer.h:
11194         Added convenience macros for setting buffers in GValue.
11195
11196 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
11197
11198         * check/gst/.cvsignore:
11199         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
11200           add a test deserializing int64, and comment part out because
11201           it fails, yay !
11202
11203 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
11204
11205         * check/Makefile.am:
11206         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
11207         * testsuite/Makefile.am:
11208         * testsuite/caps/Makefile.am:
11209         * testsuite/caps/value_serialize.c:
11210         * testsuite/test_gst_init.c:
11211           move a value_serialize test over
11212
11213 2005-06-20  Wim Taymans  <wim@fluendo.com>
11214
11215         * gst/gstpad.c:
11216         Small doc updates.
11217         
11218         * gst/gstvalue.c: (gst_value_compare_buffer),
11219         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
11220         (gst_value_compare_flags), (gst_value_serialize_flags),
11221         (gst_value_deserialize_flags), (_gst_value_initialize):
11222         Fix serialisation of buffers, they are not boxed types anymore
11223
11224 2005-06-20  Wim Taymans  <wim@fluendo.com>
11225
11226         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
11227         Testcase to show error in buffer-on-caps serialisation.
11228
11229 2005-06-20  Andy Wingo  <wingo@pobox.com>
11230
11231         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
11232         will be adding to later.
11233
11234         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
11235         if its socks fill with rocks.
11236         (gst_system_clock_obtain): Set the name on object construction.
11237         Avoid double-checked locking.
11238
11239 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
11240
11241         * gst/gsturi.c: (gst_element_make_from_uri):
11242           Fix potential endless loop.
11243
11244 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11245
11246         * check/Makefile.am:
11247           add gsttag
11248         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
11249         (main):
11250           move over from testsuite dir and clean up
11251         * configure.ac:
11252         * gst/gsttag.c:
11253         * testsuite/Makefile.am:
11254         * testsuite/tags/.cvsignore:
11255         * testsuite/tags/Makefile.am:
11256         * testsuite/tags/merge.c:
11257           remove testsuite/tags
11258
11259 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11260
11261         * docs/gst/gstreamer-sections.txt:
11262         * docs/gst/tmpl/gstenumtypes.sgml:
11263         * win32/gstenumtypes.c:
11264           clean up documentation build a little
11265
11266 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11267
11268         * check/gstcheck.h:
11269           add macros for checking refcounts on objects and caps
11270         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
11271           add some more unit tests
11272         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
11273         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
11274           fix leaked refcounts (I hope :)) so unittest works
11275         * gst/gstpad.h:
11276           whitespace removal
11277
11278 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11279
11280         * configure.ac: back to HEAD
11281
11282 === release 0.9.1 ===
11283
11284 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11285
11286         * NEWS:
11287         * RELEASE:
11288           updated
11289
11290 2005-06-17  Andy Wingo  <wingo@pobox.com>
11291
11292         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
11293         assert; it's always possible that the pad gets deactivated in
11294         between the checks in gstpad.c and the implementation. Rely on
11295         finish_preroll() to return a FLUSHING or similar instead of on the
11296         assert.
11297         
11298         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
11299         clock and post an EOS message if we come out of finish_preroll in
11300         the playing state.
11301
11302 2005-06-16  David Schleef  <ds@schleef.org>
11303
11304         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
11305         (gst_capsfilter_set_property): Allow NULL as possible value
11306         for filter_caps property, indicating GST_CAPS_ANY.
11307
11308 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11309
11310         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
11311           fix debug output
11312         * gst/schedulers/Makefile.am:
11313           use libgst prefix
11314         * gstreamer.spec.in:
11315           fix spec for it
11316
11317 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11318
11319         * gstreamer.spec.in:
11320           clean up
11321
11322 2005-06-08  Andy Wingo  <wingo@pobox.com>
11323
11324         * gst/gstutils.c: RPAD fixes all around.
11325         (gst_element_link_pads): Refcounting fixes.
11326
11327         * tools/gst-inspect.c:
11328         * tools/gst-xmlinspect.c:
11329         * parse/grammar.y:
11330         * gst/base/gsttypefindhelper.c:
11331         * gst/base/gstbasesink.c:
11332         * gst/gstqueue.c: RPAD fixes.
11333
11334         * gst/gstghostpad.h:
11335         * gst/gstghostpad.c: New ghost pad implementation as full proxy
11336         pads. The tricky thing is they provide both source and sink
11337         interfaces, since they proxy the internal pad for the external
11338         pad, and vice versa. Implement with lower-level ProxyPad objects,
11339         with the interior proxy pad as a child of the exterior ghost pad.
11340         Should write a doc on this.
11341         
11342         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
11343         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
11344         gst_object API.
11345         
11346         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
11347         pads are real pads. No ghost pads in this file. Not documenting
11348         the myriad s/RPAD/PAD/ and REALIZE fixes.
11349         (gst_pad_class_init): Add properties for "direction" and
11350         "template". Both are construct-only, so they can't change during
11351         the life of the pad. Fixes properly deriving from GstPad.
11352         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
11353         derived objects, just set properties when creating the objects via
11354         g_object_new.
11355         (gst_pad_get_parent): Implement as a function, return NULL if the
11356         parent is not an element.
11357         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
11358         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
11359         
11360         * gst/gstobject.c (gst_object_class_init): Make name a construct
11361         property. Don't set it in the object init.
11362
11363         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
11364         with UNKNOWN direction.
11365         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
11366         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
11367         (gst_element_remove_pad): Remove ghost-pad special cases.
11368         (gst_element_pads_activate): Remove rpad cruft.
11369
11370         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
11371         catch the pad's-parent-not-an-element case.
11372
11373         * gst/gst.h: Include gstghostpad.h.
11374
11375         * gst/gst.c (init_post): No more real, ghost pads.
11376
11377         * gst/Makefile.am: Add gstghostpad.[ch].
11378
11379         * check/Makefile.am:
11380         * check/gst/gstbin.c:
11381         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
11382         into a bin creates ghost pads, and that the refcounts are right.
11383         Partly moved from gstbin.c.
11384
11385 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11386
11387         * check/gst-libs/.cvsignore:
11388         * check/gst/.cvsignore:
11389         * check/pipelines/.cvsignore:
11390           ignore more
11391         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
11392         (START_TEST), (cleanup_suite), (main):
11393           add some tests related to cleanup after running pipelines
11394
11395 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11396
11397         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
11398           add a testsuite for GstBuffer
11399
11400 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11401
11402         * gst/gstminiobject.h:
11403           add defines for accessing the refcount
11404
11405 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
11406
11407         * Makefile.am: added support for html unit test coverage reports
11408
11409 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
11410
11411         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
11412           Free existing caps if the capsfilter changes. Add a FIXME about
11413           setting those caps on the pads.
11414
11415         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
11416           Before adding a ghost pad to a parent bin, check that there isn't
11417           already one for the element on the bin. Prevents infinite recursion
11418           when using decodebin in parse pipelines. Andy says he'll rewrite the
11419           way this works anyway, so ignore the hack.
11420
11421 2005-06-02  Andy Wingo  <wingo@pobox.com>
11422
11423         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
11424         file size, pass it on to the type find helper.
11425
11426         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
11427         segment_start and segment_end properly according to the seek
11428         method. Segment_end is still a bit flaky because offset can be
11429         negative for CUR and END cases, but it takes -1 as an "unset"
11430         value.
11431
11432 2005-06-02  Wim Taymans  <wim@fluendo.com>
11433
11434         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
11435         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
11436         (gst_basesink_activate):
11437         * gst/base/gstbasesink.h:
11438         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
11439         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
11440         (gst_pad_query), (gst_pad_start_task):
11441         * gst/gstpad.h:
11442         * gst/gstqueue.c: (gst_queue_bufferalloc),
11443         (gst_queue_handle_sink_event), (gst_queue_chain):
11444         Bufferalloc: return GstFlowReturn to more accuratly report
11445         why allocation failed.
11446
11447 2005-06-02  Wim Taymans  <wim@fluendo.com>
11448
11449         * gst/gstpipeline.c: (gst_pipeline_send_event):
11450         Take snapshot of state without blocking.
11451
11452 2005-06-02  Wim Taymans  <wim@fluendo.com>
11453
11454         * docs/design/part-TODO.txt:
11455         * docs/design/part-caps.txt:
11456         * docs/design/part-clocks.txt:
11457         * docs/design/part-negotiation.txt:
11458         * docs/design/part-preroll.txt:
11459         Small doc updates 
11460
11461 2005-05-30  Wim Taymans  <wim@fluendo.com>
11462
11463         * gst/elements/gstidentity.c: (gst_identity_event),
11464         (gst_identity_transform), (gst_identity_get_property):
11465         Protect last_message property as it is accessed from
11466         multiple threads.
11467
11468 2005-05-30  Wim Taymans  <wim@fluendo.com>
11469
11470         * gst/gstelement.c: (gst_element_init),
11471         (gst_element_pads_activate), (gst_element_change_state):
11472         Slicker pad activation code.
11473
11474 2005-05-30  Wim Taymans  <wim@fluendo.com>
11475
11476         * gst/Makefile.am:
11477         * gst/gstelement.h:
11478         * gst/gstelementfactory.h:
11479         * gst/gsttypes.h:
11480         Move elementfactory methods to separate .h file.
11481
11482 2005-05-30  Wim Taymans  <wim@fluendo.com>
11483
11484         * docs/design/part-overview.txt:
11485         * gst/gstsystemclock.h:
11486         Small typo fixes, doc updates.
11487
11488 2005-05-30  Wim Taymans  <wim@fluendo.com>
11489
11490         * gst/gst.c: (gst_init_get_popt_table), (init_post),
11491         (init_popt_callback):
11492         Remove cpu-opt flag.
11493
11494 2005-05-30  Wim Taymans  <wim@fluendo.com>
11495
11496         * gst/gstbuffer.c: (gst_subbuffer_finalize),
11497         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
11498         * gst/gstbuffer.h:
11499         Avoid typechecking in places where not needed.
11500         Added accessor for malloc_data.
11501
11502 2005-05-30  Wim Taymans  <wim@fluendo.com>
11503
11504         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
11505         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
11506         (gst_pad_configure_sink), (gst_pad_configure_src),
11507         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
11508         (gst_pad_start_task):
11509         Propagate errors from _set_caps() in configure_src/sink
11510         functions instead of returning TRUE.
11511         FLUSH events can travel up and downstream
11512
11513
11514 2005-05-30  Wim Taymans  <wim@fluendo.com>
11515
11516         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
11517         (gst_basesink_activate):
11518         Handle EOS in preroll.
11519
11520 2005-05-30  Wim Taymans  <wim@fluendo.com>
11521
11522         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
11523         (gst_queue_loop), (gst_queue_handle_src_event):
11524         Remove old pieces of code
11525         Flushing the queue in an upstream event is a very bad idea.
11526
11527 2005-05-26  Andy Wingo  <wingo@pobox.com>
11528
11529         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
11530         gst_value_set_mini_object so as to add a ref on the object (which
11531         will be removed when the value is unset).
11532
11533         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
11534         arg type in ::handoff.
11535
11536         * gst/gstelement.c (gst_element_change_state): Also deactivate
11537         pads in READY->NULL, just in case the element didn't make it to
11538         PAUSED. Wingo tested, Wim approved.
11539
11540 2005-05-26  Wim Taymans  <wim@fluendo.com>
11541
11542         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
11543         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
11544         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
11545         A flushing pad cannot be used to alloc_buffer from.
11546
11547 2005-05-26  Wim Taymans  <wim@fluendo.com>
11548
11549         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
11550         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
11551         (gst_bus_source_dispatch), (gst_bus_source_finalize),
11552         (gst_bus_create_watch), (gst_bus_add_watch_full):
11553         * gst/gstbus.h:
11554         Implement a real GSource and use g_main_context_wakeup() to
11555         signal new messages instead of the socketpair.
11556
11557 2005-05-25  Wim Taymans  <wim@fluendo.com>
11558
11559         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
11560         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
11561         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
11562         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
11563         (gst_pad_send_event), (gst_pad_start_task):
11564         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
11565         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
11566         (gst_queue_sink_activate), (gst_queue_src_activate),
11567         (gst_queue_change_state):
11568         * gst/gstqueue.h:
11569         Fix state changes for non sinks. We now change sinks, then elements
11570         with unconnected srcpads, then the rest.
11571         More efficient queue unlocking in flush and state changes.
11572         Set the pad activate mode even if it does not have an activate
11573         function.
11574
11575 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
11576
11577         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
11578           Don't go in pull mode for non-seekable sources.
11579         * gst/elements/gsttypefindelement.h:
11580         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
11581         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
11582         (free_entry), (stop_typefinding),
11583         (gst_type_find_element_handle_event), (find_peek),
11584         (gst_type_find_element_chain), (do_pull_typefind),
11585         (gst_type_find_element_change_state):
11586           Allow typefinding (w/o seeking) in push-mode, simplified version
11587           of what was in 0.8.
11588         * gst/gstutils.c: (gst_buffer_join):
11589         * gst/gstutils.h:
11590           gst_buffer_join() from 0.8.
11591
11592 2005-05-25  Wim Taymans  <wim@fluendo.com>
11593
11594         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
11595         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
11596         (gst_pad_send_event), (gst_pad_start_task):
11597         Disable attempt at mode switching until it is figured out.
11598
11599 2005-05-25  Wim Taymans  <wim@fluendo.com>
11600
11601         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
11602         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
11603         (gst_basesink_finish_preroll), (gst_basesink_chain),
11604         (gst_basesink_loop), (gst_basesink_activate),
11605         (gst_basesink_change_state):
11606         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
11607         (gst_basesrc_get_range), (gst_basesrc_loop),
11608         (gst_basesrc_activate):
11609         * gst/elements/gsttee.c: (gst_tee_sink_activate):
11610         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
11611         (gst_real_pad_init), (gst_real_pad_set_property),
11612         (gst_real_pad_get_property), (gst_pad_set_active),
11613         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
11614         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
11615         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
11616         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
11617         (gst_pad_event_default_dispatch), (gst_pad_event_default),
11618         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
11619         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
11620         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
11621         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
11622         (gst_pad_stop_task):
11623         * gst/gstpad.h:
11624         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
11625         (gst_queue_loop), (gst_queue_src_activate):
11626         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
11627         (gst_task_get_state):
11628         * gst/gsttask.h:
11629         * gst/schedulers/threadscheduler.c:
11630         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
11631         Implement gst_pad_pause/start/stop_task(), take STREAM lock
11632         in task function.
11633         Remove ACTIVE pad flag, use FLUSHING everywhere
11634         Added _pad_chain(), _pad_get_range() to call chain/getrange 
11635         functions.
11636         Add locks around IS_FLUSHING when reading.
11637         Take STREAM lock in chain(), get_range() functions so plugins
11638         don't need to take it anymore.
11639         
11640
11641
11642 2005-05-25  Wim Taymans  <wim@fluendo.com>
11643
11644         * tools/gst-launch.c: (event_loop):
11645         Unref message after using its contents instead of
11646         before.
11647
11648 2005-05-24  Wim Taymans  <wim@fluendo.com>
11649
11650         * docs/design/draft-ghostpads.txt:
11651         * docs/design/draft-push-pull.txt:
11652         * docs/design/draft-query.txt:
11653         * docs/design/part-overview.txt:
11654         Docs updates, added general overview doc.
11655
11656 2005-05-21  David Schleef  <ds@schleef.org>
11657
11658         * docs/gst/tmpl/old/GstBin.sgml:
11659         * docs/gst/tmpl/old/GstBuffer.sgml:
11660         * docs/gst/tmpl/old/GstCaps.sgml:
11661         * docs/gst/tmpl/old/GstClock.sgml:
11662         * docs/gst/tmpl/old/GstCompat.sgml:
11663         * docs/gst/tmpl/old/GstData.sgml:
11664         * docs/gst/tmpl/old/GstElement.sgml:
11665         * docs/gst/tmpl/old/GstEvent.sgml:
11666         * docs/gst/tmpl/old/GstIndex.sgml:
11667         * docs/gst/tmpl/old/GstStructure.sgml:
11668         * docs/gst/tmpl/old/GstTag.sgml:
11669         * docs/gst/tmpl/old/cothreads.sgml:
11670         * docs/gst/tmpl/old/cothreads_compat.sgml:
11671         * docs/gst/tmpl/old/gettext.sgml:
11672         * docs/gst/tmpl/old/gobject2gtk.sgml:
11673         * docs/gst/tmpl/old/grammar.tab.sgml:
11674         * docs/gst/tmpl/old/gst-i18n-app.sgml:
11675         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
11676         * docs/gst/tmpl/old/gst_private.sgml:
11677         * docs/gst/tmpl/old/gstaggregator.sgml:
11678         * docs/gst/tmpl/old/gstarch.sgml:
11679         * docs/gst/tmpl/old/gstatomic_impl.sgml:
11680         * docs/gst/tmpl/old/gstbufferstore.sgml:
11681         * docs/gst/tmpl/old/gstdata_private.sgml:
11682         * docs/gst/tmpl/old/gstdisksink.sgml:
11683         * docs/gst/tmpl/old/gstdisksrc.sgml:
11684         * docs/gst/tmpl/old/gstelementfactory.sgml:
11685         * docs/gst/tmpl/old/gstextratypes.sgml:
11686         * docs/gst/tmpl/old/gstfakesink.sgml:
11687         * docs/gst/tmpl/old/gstfakesrc.sgml:
11688         * docs/gst/tmpl/old/gstfdsink.sgml:
11689         * docs/gst/tmpl/old/gstfdsrc.sgml:
11690         * docs/gst/tmpl/old/gstfilesink.sgml:
11691         * docs/gst/tmpl/old/gstfilesrc.sgml:
11692         * docs/gst/tmpl/old/gsthttpsrc.sgml:
11693         * docs/gst/tmpl/old/gstidentity.sgml:
11694         * docs/gst/tmpl/old/gstindexfactory.sgml:
11695         * docs/gst/tmpl/old/gstmarshal.sgml:
11696         * docs/gst/tmpl/old/gstmd5sink.sgml:
11697         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
11698         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
11699         * docs/gst/tmpl/old/gstpadtemplate.sgml:
11700         * docs/gst/tmpl/old/gstpipefilter.sgml:
11701         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
11702         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
11703         * docs/gst/tmpl/old/gstshaper.sgml:
11704         * docs/gst/tmpl/old/gstspider.sgml:
11705         * docs/gst/tmpl/old/gstspideridentity.sgml:
11706         * docs/gst/tmpl/old/gststatistics.sgml:
11707         * docs/gst/tmpl/old/gsttee.sgml:
11708         * docs/gst/tmpl/old/gsttimecache.sgml:
11709         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
11710         * docs/gst/tmpl/old/gstxmlregistry.sgml:
11711         * docs/gst/tmpl/old/gthread-cothreads.sgml:
11712         * docs/gst/tmpl/old/types.sgml:
11713           I didn't intend to add these or check them in.
11714
11715 2005-05-19  David Schleef  <ds@schleef.org>
11716
11717         * configure.ac: Use -no-common everywhere.  In a sane world, it
11718           would be the default in libtool, because without it, you can't
11719           build DLLs on Windows.
11720         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
11721         * docs/gst/gstreamer-sections.txt:
11722         * docs/gst/tmpl/gstcpu.sgml:
11723         * docs/gst/tmpl/gstdata.sgml:
11724         * docs/gst/tmpl/gstthread.sgml:
11725
11726 2005-05-19  David Schleef  <ds@schleef.org>
11727
11728         * gst/gstminiobject.c: (gst_value_set_mini_object),
11729         (gst_value_take_mini_object), (gst_value_get_mini_object):
11730         * gst/gstminiobject.h: Add GValue set/get functions.
11731
11732 2005-05-19  Wim Taymans  <wim@fluendo.com>
11733
11734         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
11735         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
11736         (gst_subbuffer_init), (gst_buffer_is_span_fast):
11737         * gst/gstbuffer.h:
11738         * gst/gstbus.c: (gst_bus_post):
11739         * gst/gstelement.c: (gst_element_get_random_pad):
11740         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
11741         Make subbufer unref the parent in finalize.
11742         some more debugging info.
11743
11744
11745 2005-05-19  Wim Taymans  <wim@fluendo.com>
11746
11747         * gst/base/gstbasesink.c: (gst_basesink_class_init),
11748         (gst_basesink_init), (gst_basesink_finalize),
11749         (gst_basesink_activate), (gst_basesink_change_state):
11750         Don't free preroll queue too early.
11751
11752 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
11753
11754         * gst/Makefile.am:
11755         * gst/ROADMAP:
11756           Hi, I'm outdated. Please shoot me.
11757
11758 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
11759
11760         * gst/gstpipeline.c: (gst_pipeline_send_event):
11761           Do not access variables after they have been deleted.
11762
11763 2005-05-19  Wim Taymans  <wim@fluendo.com>
11764
11765         * tools/gst-inspect.c: (print_plugin_features):
11766         A plugin feature does unfortunatly not use the
11767         object name yet...
11768
11769 2005-05-18  Wim Taymans  <wim@fluendo.com>
11770
11771         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
11772         Port _span() functions to new subbuffers.
11773
11774 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
11775
11776         * gst/gstbin.c: (gst_bin_add_func):
11777           Fix clock settery in bins when adding kids after the clock has
11778           been selected.
11779
11780 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
11781
11782         * gst/elements/gstidentity.c: (gst_identity_class_init):
11783           Workaround until signals support GstMiniObject.
11784
11785 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
11786
11787         * gst/gstbuffer.c:
11788         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
11789
11790 2005-05-18  Wim Taymans  <wim@fluendo.com>
11791
11792         * gst/base/Makefile.am:
11793         * gst/base/gstadapter.c: (gst_adapter_base_init),
11794         (gst_adapter_class_init), (gst_adapter_init),
11795         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
11796         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
11797         (gst_adapter_flush), (gst_adapter_available),
11798         (gst_adapter_available_fast):
11799         * gst/base/gstadapter.h:
11800         Ported and added adapter to the base classes.
11801
11802 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11803
11804         * gst/gst.c:
11805         * gst/gstmessage.c:
11806           Make sure the class is reffed/unreffed once before threads can be
11807           used.  Fixes #304551.
11808
11809 2005-05-17  Wim Taymans  <wim@fluendo.com>
11810
11811         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
11812         (gst_basesink_chain_unlocked), (gst_basesink_activate):
11813         * gst/gstminiobject.c: (gst_mini_object_get_type),
11814         (gst_mini_object_free):
11815         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
11816         (gst_pad_push), (gst_pad_push_event):
11817         * gst/gstqueue.c: (gst_queue_change_state):
11818         Don't queue buffers in basesink when we are flushing.
11819         Unref buffer when flushing in basesink.
11820         Flush queue when going to READY
11821         Unref buffer when _push() returns an error.
11822         Don't free MiniObject instance when refcount is incremented
11823         in _finalize() so that we can recover objects.
11824
11825 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11826
11827         * docs/manual/advanced-schedulers.xml:
11828         * docs/manual/appendix-checklist.xml:
11829         * docs/pwg/advanced-clock.xml:
11830         * docs/pwg/advanced-interfaces.xml:
11831         * docs/pwg/advanced-request.xml:
11832         * docs/pwg/advanced-types.xml:
11833         * docs/pwg/intro-preface.xml:
11834         * examples/plugins/example.c: (gst_example_get_type),
11835         (gst_example_class_init), (gst_example_chain),
11836         (gst_example_set_property), (gst_example_get_property),
11837         (gst_example_change_state), (plugin_init):
11838         * examples/plugins/example.h:
11839           small doc fixes
11840
11841 2005-05-17  Wim Taymans  <wim@fluendo.com>
11842
11843         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
11844         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
11845         * gst/gstqueue.c: (gst_queue_change_state):
11846         Clear queue when going to READY.
11847         Remove IN_SETCAPS flag too.
11848
11849 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
11850
11851         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
11852           Remove implicit cast from gboolean to GstElementStateReturn;
11853           make sure we still return failure in paused => ready case if
11854           the parent class fails to change state and our own stop 
11855           vfunc succeeds.
11856
11857 2005-05-17  Wim Taymans  <wim@fluendo.com>
11858
11859         * tools/gst-launch.c: (event_loop):
11860         Message was unreffed too soon.
11861
11862 2005-05-16  Andy Wingo  <wingo@pobox.com>
11863
11864         * gst/gstbin.c (sink_iterator_filter): Err... um...
11865
11866         * check/gst/gstbin.c (test_ghost_pads): New test for the
11867         ghosting-if-elements-not-in-same-bin behavior.
11868
11869 2005-05-16  David Schleef  <ds@schleef.org>
11870
11871         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
11872         accessing refcount directly.
11873
11874 2005-05-15  David Schleef  <ds@schleef.org>
11875
11876         * check/Makefile.am: remove GstData checks
11877         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
11878         * gst/Makefile.am: add miniobject, remove data
11879         * gst/gst.h: add miniobject, remove data
11880         * gst/gstdata.c: remove
11881         * gst/gstdata.h: remove
11882         * gst/gstdata_private.h: remove
11883         * gst/gsttypes.h: remove GstEvent and GstMessage
11884         * gst/gstelement.c: (gst_element_post_message): fix for API changes
11885         * gst/gstmarshal.list: change BOXED -> OBJECT
11886
11887         Implement GstMiniObject.
11888         * gst/gstminiobject.c:
11889         * gst/gstminiobject.h:
11890
11891         Modify to be subclasses of GstMiniObject.
11892         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
11893         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
11894         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
11895         (gst_subbuffer_get_type), (gst_subbuffer_init),
11896         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
11897         (gst_buffer_span):
11898         * gst/gstbuffer.h:
11899         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
11900         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
11901         (_gst_event_copy), (gst_event_new):
11902         * gst/gstevent.h:
11903         * gst/gstmessage.c: (_gst_message_initialize),
11904         (gst_message_get_type), (gst_message_class_init),
11905         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
11906         (gst_message_new), (gst_message_new_error),
11907         (gst_message_new_warning), (gst_message_new_tag),
11908         (gst_message_new_state_changed), (gst_message_new_application):
11909         * gst/gstmessage.h:
11910         * gst/gstprobe.c: (gst_probe_perform),
11911         (gst_probe_dispatcher_dispatch):
11912         * gst/gstprobe.h:
11913         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
11914         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
11915         (_gst_query_copy), (gst_query_new):
11916
11917         Update elements for GstData -> GstMiniObject changes
11918         * gst/gstquery.h:
11919         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
11920         (gst_queue_chain), (gst_queue_loop):
11921         * gst/elements/gstbufferstore.c:
11922         (gst_buffer_store_add_buffer_func),
11923         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
11924         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
11925         (gst_fakesink_render):
11926         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
11927         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
11928         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
11929         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
11930         (gst_filesrc_create_read):
11931         * gst/elements/gstidentity.c: (gst_identity_class_init):
11932         * gst/elements/gsttypefindelement.c:
11933         (gst_type_find_element_src_event), (free_entry_buffers),
11934         (gst_type_find_element_handle_event):
11935         * libs/gst/dataprotocol/dataprotocol.c:
11936         (gst_dp_header_from_buffer):
11937         * libs/gst/dataprotocol/dataprotocol.h:
11938         * libs/gst/dataprotocol/dp-private.h:
11939
11940 2005-05-15  David Schleef  <ds@schleef.org>
11941
11942         * gst/elements/gstelements.c: Don't include headers that were
11943         just removed.
11944
11945 2005-05-15  David Schleef  <ds@schleef.org>
11946
11947         * gst/elements/Makefile.am: Remove some elements that don't
11948         need to be in the core (or even exist at all).
11949         * gst/elements/gstaggregator.c:
11950         * gst/elements/gstaggregator.h:
11951         * gst/elements/gstmd5sink.c:
11952         * gst/elements/gstmd5sink.h:
11953         * gst/elements/gstmultifilesrc.c:
11954         * gst/elements/gstmultifilesrc.h:
11955         * gst/elements/gstpipefilter.c:
11956         * gst/elements/gstpipefilter.h:
11957         * gst/elements/gstshaper.c:
11958         * gst/elements/gstshaper.h:
11959         * gst/elements/gststatistics.c:
11960         * gst/elements/gststatistics.h:
11961         * po/POTFILES.in: Remove above files.
11962
11963 2005-05-14  Andy Wingo  <wingo@pobox.com>
11964
11965         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
11966         so as to get the refs right.
11967         (sink_iterator_filter): New function, wraps bin_element_is_sink,
11968         unreffing objects that don't pass the filter.
11969
11970         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
11971         gst_element_set_bus.
11972         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
11973         normal cases, this will destroy the bus.
11974
11975         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
11976         object.
11977
11978         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
11979         has no sinks.
11980
11981 2005-05-13  Andy Wingo  <wingo@pobox.com>
11982
11983         * gst/gstutils.c (gst_element_link_pads): Instead of calling
11984         gst_pad_link, call pad_link_maybe_ghosting,
11985         (pad_link_maybe_ghosting): Links pads, making sure that the
11986         elements being linked are in the same bin.
11987         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
11988         Helpers for pad_link_maybe_ghosting.
11989
11990 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
11991
11992         * configure.ac:
11993           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
11994
11995 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
11996
11997         * docs/design/part-element-source.txt:
11998           Mention GstPushSrc
11999
12000 2005-05-12  Wim Taymans  <wim@fluendo.com>
12001
12002         * gst/base/gstbasesink.c: (gst_basesink_init),
12003         (gst_basesink_activate):
12004         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
12005         (gst_basesrc_is_seekable):
12006         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
12007         (bin_element_is_sink), (gst_bin_change_state):
12008         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
12009         * gst/gstelement.h:
12010         Identify sinks by their flag to avoid overly complicated
12011         checks (fow now).
12012         Do state changes even for elements not reachable from the
12013         sinks.
12014         BaseSink is a sink now :)
12015         Some more debugging info in the basesrc.
12016
12017
12018 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
12019
12020         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
12021           Implement _query on a bin, similar to _send_event.
12022
12023 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
12024
12025         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
12026           Discont event offset format should be GST_FORMAT_BYTES,
12027           not GST_FORMAT_TIME.
12028
12029 2005-05-12  Wim Taymans  <wim@fluendo.com>
12030
12031         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
12032         Same fix as Ronald's but without the signal. 
12033
12034 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
12035
12036         * gst/gstutils.c: (gst_element_query_position):
12037           No, an element is not a pad.
12038
12039 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
12040
12041         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
12042         (gst_bin_get_state):
12043           If a child is removed from a bin while we remove the child from
12044           the bin and while we're retrieving its state, signal this to the
12045           get_state function so we abort the wait (instead of waiting for
12046           a timeout) and can immediately re-iterate over all other elements.
12047
12048 2005-05-12  Wim Taymans  <wim@fluendo.com>
12049
12050         * gst/base/Makefile.am:
12051         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
12052         (gst_basesrc_start):
12053         * gst/base/gstbasesrc.h:
12054         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
12055         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
12056         (gst_pushsrc_init), (gst_pushsrc_create):
12057         * gst/base/gstpushsrc.h:
12058         Added is_seekable to BaseSrc
12059         Added simple PushSrc.
12060
12061 2005-05-11  Wim Taymans  <wim@fluendo.com>
12062
12063         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
12064         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
12065         (gst_element_link_pads), (gst_element_query_position),
12066         (gst_element_query_convert), (intersect_caps_func),
12067         (gst_pad_query_position), (gst_pad_query_convert):
12068         Fix refcounting in utils function.
12069         No point in trying to activate a pad when it's added, it could
12070         be added from the state change function and then we deadlock, the
12071         element has to decide what to do.
12072
12073 2005-05-10  Andy Wingo  <wingo@pobox.com>
12074
12075         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
12076         *all* the arguments.
12077
12078         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
12079         stream lock if it's a FLUSH_DONE; normal flushes don't get the
12080         lock (according to the docs -- if this is wrong change the docs).
12081
12082         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
12083         flush messages in the NULL state.
12084
12085         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
12086         message immediately and return.
12087         (gst_bus_set_flushing): New function. If a bus is flushing, it
12088         flushes out any queued messages and immediately unrefs new
12089         messages. This is so when an element goes to NULL, all of the
12090         unhandled messages coming from it can be freed, and their
12091         references to the element dropped. In other words: message source
12092         ref considered harmful :P
12093
12094         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
12095         we're finished with it.
12096
12097         * gst/gstmessage.c (gst_message_new_state_changed): 
12098
12099 2005-05-10  Wim Taymans  <wim@fluendo.com>
12100
12101         * gst/gstvalue.c: (gst_value_compare_flags),
12102         (gst_value_serialize_flags), (gst_value_deserialize_flags),
12103         (_gst_value_initialize):
12104         Added flags serialize/deserialize/compare code.
12105
12106 2005-05-09  Andy Wingo  <wingo@pobox.com>
12107
12108         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
12109         Intersect the peer's caps with our caps.
12110
12111 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
12112
12113         * gst/base/gsttypefindhelper.c: (helper_find_peek):
12114         * gst/elements/gsttypefindelement.c: (find_peek):
12115           Handle negative offsets better. Fixes decodebin.
12116
12117 2005-05-09  Wim Taymans  <wim@fluendo.com>
12118
12119         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
12120         (gst_base_transform_event):
12121         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
12122         Implement accept_caps.
12123         Fix silly lock/unlock mismatch in base class.
12124
12125 2005-05-09  Wim Taymans  <wim@fluendo.com>
12126
12127         * docs/design/draft-push-pull.txt:
12128         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
12129         * gst/elements/gstfilesink.c: (gst_filesink_init),
12130         (gst_filesink_query):
12131         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
12132         (gst_type_find_handle_src_query), (find_element_get_length):
12133         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
12134         * gst/gstelement.h:
12135         * gst/gstmessage.c:
12136         * gst/gstmessage.h:
12137         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
12138         (gst_real_pad_get_caps_unlocked),
12139         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
12140         (gst_pad_event_default_dispatch), (gst_pad_event_default),
12141         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
12142         (gst_real_pad_dispose), (gst_real_pad_finalize),
12143         (gst_pad_load_and_link), (gst_pad_save_thyself),
12144         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
12145         (gst_pad_check_pull_range), (gst_pad_pull_range),
12146         (gst_pad_template_get_type), (gst_pad_template_class_init),
12147         (gst_pad_template_init), (gst_pad_template_dispose),
12148         (name_is_valid), (gst_static_pad_template_get),
12149         (gst_pad_template_new), (gst_static_pad_template_get_caps),
12150         (gst_pad_template_get_caps), (gst_pad_set_element_private),
12151         (gst_pad_get_element_private), (gst_pad_start_task),
12152         (gst_pad_pause_task), (gst_pad_stop_task),
12153         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
12154         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
12155         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
12156         (gst_ghost_pad_new):
12157         * gst/gstpad.h:
12158         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
12159         (gst_query_new_position), (gst_query_set_position),
12160         (gst_query_parse_position), (gst_query_new_convert),
12161         (gst_query_set_convert), (gst_query_parse_convert):
12162         * gst/gstquery.h:
12163         * gst/gstqueryutils.c:
12164         * gst/gstqueryutils.h:
12165         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12166         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
12167         (gst_queue_handle_src_query):
12168         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
12169         (gst_element_query_position), (gst_element_query_convert),
12170         (intersect_caps_func), (gst_pad_query_position),
12171         (gst_pad_query_convert):
12172         * gst/gstutils.h:
12173         * tools/gst-inspect.c: (print_pad_info):
12174         * tools/gst-xmlinspect.c: (print_element_info):
12175         Remove old query functions. Ported old code.
12176         Added position/convert helper functions to gstutils.
12177         Reordered gstpad.c code, grouping relevant things.
12178         Remove gst_message_new(), always need to speficy a specific
12179         message.
12180
12181
12182 2005-05-09  Andy Wingo  <wingo@pobox.com>
12183
12184         * gst/gstiterator.h: Add some includes.
12185
12186         * gst/gstqueryutils.h: Include more headers.
12187
12188         * gst/gstpad.h:
12189         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
12190         some uses of gst_pad_query.
12191
12192         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
12193         NULL out parameters.
12194         (gst_query_new_position): New proc, allocates a new position
12195         query.
12196
12197         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
12198         gstqueryutils.c to the build.
12199
12200         * gst/gststructure.c (gst_structure_set_valist): Implement with
12201         the generic G_VALUE_COLLECT.
12202         
12203 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
12204
12205         * gst/Makefile.am: (gst_headers):
12206         Added gstqueryutils.h to the list of headers to install, that was
12207         a 'nachty' move wingo :)
12208
12209 2005-05-06  Andy Wingo  <wingo@pobox.com>
12210
12211         * gst/gstquery.h
12212         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
12213         GstData, init a memchunk.
12214         (standard_definitions): Add a few query types, deprecate a few.
12215         (gst_query_get_type): New proc.
12216         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
12217         implementation.
12218         (gst_query_new_application, gst_query_get_structure): New public
12219         procs.
12220
12221         * docs/design/draft-query.txt: Removed LINKS from the query types,
12222         because all the rest can be dispatched to other pads -- seemed
12223         ugly to have a query that couldn't be dispatched. internal_links
12224         is fine as a pad method.
12225
12226         * gst/gstpad.h: Add query2 as a pad method, add the new functions
12227         in gstpad.c, but maintain binary compatibility for the moment.
12228         Will fix before 0.9 is out.
12229
12230         * gst/gstqueryutils.c: 
12231         * gst/gstqueryutils.h: New files, implement 3 methods for each
12232         query type: parse_query, parse_response, and set. Probably need an
12233         allocator as well.
12234
12235         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
12236
12237         * gst/elements/gstfilesink.c (gst_filesink_query2):
12238         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
12239         query_types, and formats methods.
12240
12241         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
12242         (gst_pad_set_query2_function): New functions.
12243         (gst_real_pad_init): Set query2_default as the default query2
12244         function. Basically just dispatches to internally linked pads.
12245
12246         Needs review!
12247         
12248         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
12249         without using the atomic operations. Only one thread can possibly
12250         be accessing the data at this point. Changed so as to avoid
12251         gst_atomic operations.
12252
12253 2005-05-06  Wim Taymans  <wim@fluendo.com>
12254
12255         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
12256         Also set caps if we use the fallback buffer alloc.
12257
12258 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
12259
12260         * docs/gst/Makefile.am:
12261         * docs/gst/gstreamer-docs.sgml:
12262         * docs/gst/gstreamer-sections.txt:
12263         * docs/gst/tmpl/gstatomic.sgml:
12264         * docs/gst/tmpl/gstmemchunk.sgml:
12265         * testsuite/elements/struct_i386.h:
12266         * win32/GStreamer.vcproj:
12267         * win32/Makefile:
12268           Purge GstAtomic stuff from docs and win32 makefiles as well
12269
12270 2005-05-06  Wim Taymans  <wim@fluendo.com>
12271
12272         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
12273         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
12274         * gst/gstpad.c: (gst_pad_peer_get_caps):
12275         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12276         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
12277         (gst_queue_src_activate), (gst_queue_change_state):
12278         * gst/gstqueue.h:
12279         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
12280         (intersect_caps_func):
12281         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
12282         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
12283         Some fixes for the peer_get_caps() change.
12284
12285 2005-05-06  Wim Taymans  <wim@fluendo.com>
12286
12287         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
12288         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
12289         (gst_basesink_activate):
12290         Actually do something with error codes returned from the push
12291         functions.
12292
12293 2005-05-06  Wim Taymans  <wim@fluendo.com>
12294
12295         * docs/design/part-element-sink.txt:
12296         * docs/design/part-element-source.txt:
12297         * gst/base/gstbasesink.c: (gst_basesink_class_init),
12298         (gst_basesink_event), (gst_basesink_activate):
12299         * gst/base/gstbasesink.h:
12300         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
12301         (gst_basesrc_activate):
12302         * gst/base/gstbasesrc.h:
12303         * gst/gstelement.c: (gst_element_pads_activate):
12304         Some more documentation.
12305         Fixed scheduling decision in _pads_activate().
12306
12307 2005-05-05  Andy Wingo  <wingo@pobox.com>
12308
12309         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
12310         the test suite.
12311
12312 2005-05-05  Wim Taymans  <wim@fluendo.com>
12313
12314         * gst/base/Makefile.am:
12315         * gst/base/gstbasesink.h:
12316         * gst/base/gstbasesrc.c: (gst_basesrc_init),
12317         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
12318         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
12319         (gst_collectpads_class_init), (gst_collectpads_init),
12320         (gst_collectpads_finalize), (gst_collectpads_new),
12321         (gst_collectpads_set_function), (gst_collectpads_add_pad),
12322         (find_pad), (gst_collectpads_remove_pad),
12323         (gst_collectpads_is_active), (gst_collectpads_collect),
12324         (gst_collectpads_collect_range), (gst_collectpads_start),
12325         (gst_collectpads_stop), (gst_collectpads_peek),
12326         (gst_collectpads_pop), (gst_collectpads_available),
12327         (gst_collectpads_read), (gst_collectpads_flush),
12328         (gst_collectpads_chain):
12329         * gst/base/gstcollectpads.h:
12330         * gst/elements/Makefile.am:
12331         * gst/elements/gstelements.c:
12332         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
12333         (gst_fakesink_get_times), (gst_fakesink_event),
12334         (gst_fakesink_preroll), (gst_fakesink_render):
12335         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
12336         (gst_filesink_init), (gst_filesink_set_location),
12337         (gst_filesink_open_file), (gst_filesink_close_file),
12338         (gst_filesink_pad_query), (gst_filesink_event),
12339         (gst_filesink_render), (gst_filesink_change_state):
12340         * gst/elements/gstfilesink.h:
12341         Added object to help in making collect pad based elements.
12342         Ported filesink.
12343         Make event function in sink baseclass return gboolean.
12344
12345 2005-05-05  Wim Taymans  <wim@fluendo.com>
12346
12347         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
12348         (gst_bin_get_by_name):
12349         * gst/gstbuffer.h:
12350         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
12351         (gst_clock_finalize):
12352         * gst/gstdata.c: (gst_data_replace):
12353         * gst/gstdata.h:
12354         * gst/gstelement.c: (gst_element_request_pad),
12355         (gst_element_pads_activate):
12356         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
12357         (gst_object_unref):
12358         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12359         (gst_pad_set_checkgetrange_function),
12360         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
12361         (gst_pad_check_pull_range), (gst_pad_pull_range),
12362         (gst_static_pad_template_get_caps), (gst_pad_start_task),
12363         (gst_pad_pause_task), (gst_pad_stop_task):
12364         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
12365         (gst_element_request_pad), (gst_pad_proxy_getcaps):
12366         Fix name lookup in GstBin.
12367         Added _data_replace() function and _buffer_replace()
12368         Use finalize method to clean up clock.
12369         Fix refcounting on request pads.
12370         Fix pad schedule mode error.
12371         Some more object refcounting debug info,
12372
12373
12374 2005-05-04  Andy Wingo <wingo@pobox.com>
12375
12376         * check/Makefile.am:
12377         * docs/gst/tmpl/gstatomic.sgml:
12378         * docs/gst/tmpl/gstplugin.sgml:
12379         * gst/base/gstbasesink.c: (gst_basesink_activate):
12380         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
12381         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
12382         (gst_basesrc_query), (gst_basesrc_set_property),
12383         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
12384         (gst_basesrc_activate):
12385         * gst/base/gstbasesrc.h:
12386         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
12387         (gst_base_transform_src_activate):
12388         * gst/elements/gstelements.c:
12389         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
12390         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
12391         * gst/elements/gsttee.c: (gst_tee_sink_activate):
12392         * gst/elements/gsttypefindelement.c: (find_element_get_length),
12393         (gst_type_find_element_checkgetrange),
12394         (gst_type_find_element_activate):
12395         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
12396         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
12397         (gst_caps_load_thyself):
12398         * gst/gstelement.c: (gst_element_pads_activate),
12399         (gst_element_save_thyself), (gst_element_restore_thyself):
12400         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
12401         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
12402         * gst/gstpad.h:
12403         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
12404         (gst_xml_parse_file), (gst_xml_parse_memory),
12405         (gst_xml_get_element), (gst_xml_make_element):
12406         * gst/indexers/gstfileindex.c: (gst_file_index_load),
12407         (_file_index_id_save_xml), (gst_file_index_commit):
12408         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
12409         (read_enum), (load_pad_template), (load_feature), (load_plugin),
12410         (load_paths):
12411         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
12412         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
12413         * tools/gst-complete.c: (main):
12414         * tools/gst-compprep.c: (main):
12415         * tools/gst-inspect.c: (print_element_properties_info):
12416         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
12417         * tools/gst-xmlinspect.c: (print_element_properties):
12418         GCC 4 fixen.
12419         
12420 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12421
12422         * gst/gstplugin.c: (gst_plugin_check_module),
12423         (gst_plugin_check_file), (gst_plugin_load_file):
12424             apply patch from #172526 to make register work on MacOSX
12425
12426 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12427
12428         * docs/gst/tmpl/gstconfig.sgml:
12429         * gst/gstconfig.h.in:
12430           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
12431         * testsuite/debug/printf_extension.c: (main):
12432           Do not use GST_PTR_FORMAT on pointers to types with
12433           sizeof < sizeof(gpointer).  Fixes test on 64-bit
12434         * testsuite/elements/property.h:
12435           use correct printf format
12436
12437 2005-05-02  Wim Taymans  <wim@fluendo.com>
12438
12439         * docs/design/draft-push-pull.txt:
12440         * docs/design/draft-query.txt:
12441         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
12442         (gst_basesrc_start):
12443         Added draft for new query API.
12444         Added draft for better selecting scheduling methods.
12445         Make basesrc ignore length if the subclass does not support
12446         it.
12447
12448 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12449
12450         * gst/Makefile.am:
12451           possible fixes for automake-1.5 - _LIBADD is reserved
12452
12453 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12454
12455         * docs/faq/Makefile.am:
12456         * docs/manual/Makefile.am:
12457         * docs/manuals.mak:
12458         * docs/pwg/Makefile.am:
12459         * gst/Makefile.am:
12460           possible fixes for automake-1.5
12461
12462 2005-04-28  Wim Taymans  <wim@fluendo.com>
12463
12464         * gst/base/gstbasesink.c: (gst_basesink_base_init),
12465         (gst_basesink_pad_getcaps), (gst_basesink_init),
12466         (gst_basesink_do_sync):
12467         * gst/gstclock.c: (gst_clock_entry_new):
12468         * gst/gstevent.c: (gst_event_discont_get_value):
12469         * gst/gstpipeline.c: (pipeline_bus_handler),
12470         (gst_pipeline_change_state):
12471         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
12472         Better debugging of clocking info.
12473         Allow NULL values when getting discont values.
12474
12475 2005-04-27  Wim Taymans  <wim@fluendo.com>
12476
12477         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
12478         * check/gst/gstpad.c: (gst_pad_suite):
12479         Increase timeout for checks.
12480
12481 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12482
12483         * check/Makefile.am:
12484           fix the broken rule for cleanup.  Apparently this rule is
12485           only needed on FC2, so maybe this warrants further autotool
12486           inspection.
12487
12488 2005-04-26  Wim Taymans  <wim@fluendo.com>
12489
12490         * gst/gsttrashstack.h:
12491         Ooohh. a nasty one! After having a failed pop() from the stack,
12492         it's possible that the stack is empty. In that case, don't
12493         follow the NULL pointer.
12494
12495 2005-04-25  Wim Taymans  <wim@fluendo.com>
12496
12497         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12498         (gst_pad_set_checkgetrange_function),
12499         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
12500         (gst_pad_check_pull_range), (gst_pad_pull_range),
12501         (gst_static_pad_template_get_caps), (gst_pad_start_task),
12502         (gst_pad_pause_task), (gst_pad_stop_task):
12503         * gst/gstplugin.c: (gst_plugin_load):
12504         * gst/gstplugin.h:
12505         Remove gst_library_load as it does more harm than good with
12506         the new g_module flags.
12507         Revert bogus caps template check in pad linking, pad caps
12508         are important when linking not the template, which is more
12509         general than the current caps.
12510
12511 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
12512
12513         * gst/autoplug/.cvsignore:
12514         * gst/autoplug/Makefile.am:
12515         * gst/autoplug/gstsearchfuncs.c:
12516         * gst/autoplug/gstsearchfuncs.h:
12517         * gst/autoplug/gstspider.c:
12518         * gst/autoplug/gstspider.h:
12519         * gst/autoplug/gstspideridentity.c:
12520         * gst/autoplug/gstspideridentity.h:
12521         * gst/autoplug/spidertest.c:
12522           Die, spider, die.
12523
12524 2005-04-25  Wim Taymans  <wim@fluendo.com>
12525
12526         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12527         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
12528         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
12529         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
12530         * gst/gstpad.h:
12531         Added stubs for unimplemented functions. 
12532
12533 2005-04-24  David Schleef  <ds@schleef.org>
12534
12535         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
12536         please fix.
12537
12538 2005-04-24  David Schleef  <ds@schleef.org>
12539
12540         Convert everything from GstAtomicInt to g_atomic_int_*, and
12541         remove gstatomic.
12542         * gst/Makefile.am:
12543         * gst/gstatomic.c:
12544         * gst/gstatomic.h:
12545         * gst/gstatomic_impl.h:
12546         * gst/gstbuffer.c:
12547         * gst/gstcaps.c:
12548         * gst/gstcaps.h:
12549         * gst/gstclock.c:
12550         * gst/gstclock.h:
12551         * gst/gstdata.c:
12552         * gst/gstdata.h:
12553         * gst/gstdata_private.h:
12554         * gst/gstevent.c:
12555         * gst/gstinfo.c:
12556         * gst/gstinfo.h:
12557         * gst/gstmessage.c:
12558         * gst/gstobject.c:
12559         * gst/gstobject.h:
12560         * gst/gststructure.c:
12561         * gst/gststructure.h:
12562         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
12563         * gst/gstutils.h:
12564
12565 2005-04-24  David Schleef  <ds@schleef.org>
12566
12567         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
12568         make the regressions tests work.  Remove some code that is no
12569         longer true.
12570         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
12571         Disable warning for pads without templates.
12572
12573 2005-04-24  David Schleef  <ds@schleef.org>
12574
12575         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
12576         functions that handle filtered links.
12577         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
12578         removed functions.
12579         * gst/gstutils.c: Fix/remove utility functions that handle
12580         filtered caps.
12581         * gst/gstutils.h:
12582         * gst/gstvalue.c: Add serialization/deserialization of caps
12583         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
12584         requires fixing so that the filter caps notation creates
12585         a capsfilter element and sets the filter_caps property.  I
12586         think everyone probably wants to keep the shorthand notation.
12587         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
12588         * docs/gst/tmpl/gstpad.sgml:
12589
12590         * gst/elements/gstelements.c: Register capsfilter element.
12591         * gst/Makefile.am: fix spacing
12592         * docs/random/ds/0.9-suggested-changes: random
12593
12594 2005-04-23  David Schleef  <ds@schleef.org>
12595
12596         * gst/elements/Makefile.am:
12597         * gst/elements/gstcapsfilter.c: New element that acts like an
12598         identity, but filters caps.  Will eventually replace filtered
12599         caps in pad linking.
12600         * gst/gstutils.c: (gst_element_create_all_pads): New function
12601         to create all the ALWAYS pads that are registered with an
12602         element class.  This functionality should eventually be
12603         merged in with GstElement initialization.
12604         * gst/gstutils.h:
12605         * testsuite/trigger/README: part of trigger test code that should
12606         have been checked in a long time ago.
12607
12608 2005-04-23  David Schleef  <ds@schleef.org>
12609
12610         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
12611         needed with new versions of libtool (nobody will confirm this),
12612         and hard to carry around.
12613         * gst/autoplug/Makefile.am:
12614         * gst/base/Makefile.am:
12615         * gst/elements/Makefile.am:
12616         * gst/indexers/Makefile.am:
12617         * gst/schedulers/Makefile.am:
12618         * libs/gst/bytestream/Makefile.am:
12619         * libs/gst/control/Makefile.am:
12620         * libs/gst/dataprotocol/Makefile.am:
12621         * libs/gst/getbits/Makefile.am:
12622
12623 2005-04-21  Wim Taymans  <wim@fluendo.com>
12624
12625         * docs/design/draft-push-pull.txt:
12626         * docs/design/part-MT-refcounting.txt:
12627         * docs/design/part-TODO.txt:
12628         * docs/design/part-caps.txt:
12629         * docs/design/part-events.txt:
12630         * docs/design/part-gstbus.txt:
12631         * docs/design/part-gstpipeline.txt:
12632         * docs/design/part-messages.txt:
12633         * docs/design/part-push-pull.txt:
12634         * docs/design/part-query.txt:
12635         Some more docs.
12636
12637 2005-04-21  Wim Taymans  <wim@fluendo.com>
12638
12639         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
12640         (gst_message_new), (gst_message_new_error),
12641         (gst_message_new_warning), (gst_message_new_tag),
12642         (gst_message_new_state_changed), (gst_message_new_application),
12643         (gst_message_get_structure):
12644         * gst/gstmessage.h:
12645         * gst/gststructure.c: (gst_structure_set_parent_refcount),
12646         (gst_structure_copy_conditional):
12647         Use parent refcount in GstMessage to ensure GstStructure
12648         consistency.
12649         Cleaned up headers a bit.
12650         
12651
12652 2005-04-20  Wim Taymans  <wim@fluendo.com>
12653
12654         * gst/base/gstbasesink.c: (gst_basesink_base_init),
12655         (gst_basesink_pad_getcaps), (gst_basesink_init),
12656         (gst_basesink_chain_unlocked):
12657         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
12658         (gst_type_find_helper):
12659         * gst/elements/gsttypefindelement.c:
12660         (gst_type_find_element_have_type), (gst_type_find_element_init),
12661         (stop_typefinding), (gst_type_find_element_handle_event),
12662         (find_suggest), (gst_type_find_element_chain),
12663         (gst_type_find_element_checkgetrange),
12664         (gst_type_find_element_getrange), (do_typefind),
12665         (gst_type_find_element_activate):
12666         * gst/gstbuffer.c: (_gst_buffer_sub_free),
12667         (gst_buffer_default_free), (gst_buffer_default_copy),
12668         (gst_buffer_set_caps):
12669         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
12670         (gst_caps_replace):
12671         * gst/gstmessage.c: (gst_message_new),
12672         (gst_message_new_state_changed):
12673         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12674         (gst_pad_set_checkgetrange_function),
12675         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
12676         (gst_pad_set_caps), (gst_pad_check_pull_range),
12677         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
12678         * gst/gstpad.h:
12679         * gst/gsttypefind.c: (gst_type_find_register):
12680         Make gst_caps_replace() work like other _replace() functions.
12681         Use _caps_replace() where possible.
12682         Make sure _message_new() initialises its field.
12683         Add gst_static_pad_template_get_caps()
12684
12685
12686 2005-04-18  Andy Wingo  <wingo@pobox.com>
12687
12688         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
12689         on the peer, not the pad. I think that was a typo. Pass an extra
12690         arg to see if random access is possible. Activate the pads as
12691         PULL_RANGE if possible.
12692
12693         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
12694
12695         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
12696         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
12697         to PROP_....
12698
12699 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
12700
12701         * docs/faq/using.xml:
12702           Add note on gstreamer-properties (#154996).
12703
12704 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
12705
12706         * docs/random/bbb/optional-properties:
12707           Some analysis on optional properties.
12708
12709 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
12710
12711         * docs/gst/tmpl/gstelementfactory.sgml:
12712         * gst/gstelement.h:
12713         * gst/gstelementfactory.c: (gst_element_factory_init),
12714         (gst_element_factory_cleanup), (gst_element_register),
12715         (__gst_element_factory_add_static_pad_template),
12716         (gst_element_factory_get_static_pad_templates),
12717         (gst_element_factory_can_src_caps),
12718         (gst_element_factory_can_sink_caps):
12719         * gst/registries/Makefile.am:
12720         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
12721         (gst_xml_registry_class_init), (gst_xml_registry_init),
12722         (gst_xml_registry_new), (gst_xml_registry_set_property),
12723         (gst_xml_registry_get_property), (get_time), (make_dir),
12724         (gst_xml_registry_get_perms_func),
12725         (plugin_times_older_than_recurse), (plugin_times_older_than),
12726         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
12727         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
12728         (add_to_char_array), (read_string), (read_uint), (read_enum),
12729         (load_pad_template), (load_feature), (load_plugin), (load_paths),
12730         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
12731         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
12732         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
12733         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
12734         (gst_xml_registry_rebuild):
12735         * gst/registries/gstlibxmlregistry.h:
12736         * tools/gst-compprep.c: (main):
12737         * tools/gst-inspect.c: (print_pad_templates_info):
12738         * tools/gst-xmlinspect.c: (print_element_info):
12739           Use libxml2 for registry parsing, use staticpadtemplates in
12740           elementfactories. Makes gst_init() +/- 10x faster.
12741
12742 2005-04-12  Wim Taymans  <wim@fluendo.com>
12743
12744         * gst/base/Makefile.am:
12745         * gst/base/gstbasesink.c: (gst_basesink_base_init),
12746         (gst_basesink_pad_getcaps), (gst_basesink_init),
12747         (gst_basesink_event), (gst_basesink_change_state):
12748         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
12749         (gst_basesrc_init), (gst_basesrc_query),
12750         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
12751         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
12752         (gst_basesrc_check_get_range), (gst_basesrc_loop),
12753         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
12754         (gst_basesrc_stop), (gst_basesrc_activate),
12755         (gst_basesrc_change_state):
12756         * gst/base/gsttypefindhelper.c: (helper_find_peek),
12757         (helper_find_suggest), (gst_type_find_helper):
12758         * gst/base/gsttypefindhelper.h:
12759         * gst/elements/Makefile.am:
12760         * gst/elements/gstelements.c:
12761         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
12762         (gst_fakesink_get_times), (gst_fakesink_event),
12763         (gst_fakesink_preroll), (gst_fakesink_render):
12764         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
12765         (gst_fakesrc_init), (gst_fakesrc_event_handler),
12766         (gst_fakesrc_get_property), (gst_fakesrc_create),
12767         (gst_fakesrc_start), (gst_fakesrc_stop):
12768         * gst/elements/gstfakesrc.h:
12769         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
12770         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
12771         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
12772         (gst_filesrc_create_read), (gst_filesrc_create),
12773         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
12774         (gst_filesrc_start):
12775         * gst/elements/gsttypefindelement.c:
12776         (gst_type_find_element_have_type), (gst_type_find_element_init),
12777         (start_typefinding), (stop_typefinding), (push_buffer_store),
12778         (gst_type_find_element_handle_event),
12779         (gst_type_find_element_chain),
12780         (gst_type_find_element_checkgetrange),
12781         (gst_type_find_element_getrange), (do_typefind),
12782         (gst_type_find_element_activate),
12783         (gst_type_find_element_change_state):
12784         * gst/elements/gsttypefindelement.h:
12785         * gst/gstpipeline.c: (pipeline_bus_handler):
12786         Added typefind helper.
12787         Small preroll fix in the base sink.
12788         Disable typefind code in basesrc.
12789         Crude port of typefindelement.
12790         Fakesrc cleanups.
12791
12792
12793 2005-04-11  Wim Taymans  <wim@fluendo.com>
12794
12795         * check/gst/gstbus.c: (gstbus_suite):
12796         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
12797         * check/gstcheck.h:
12798           Fix up the timeout so that the test does not fail.
12799
12800 2005-04-06  Wim Taymans  <wim@fluendo.com>
12801
12802         * gst/base/README:
12803         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
12804         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
12805         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
12806         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
12807         (gst_basesrc_check_get_range), (gst_basesrc_loop),
12808         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
12809         (gst_basesrc_stop), (gst_basesrc_activate),
12810         (gst_basesrc_change_state), (basesrc_find_peek),
12811         (basesrc_find_suggest), (gst_basesrc_type_find):
12812         * gst/base/gstbasesrc.h:
12813         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
12814         (gst_filesrc_class_init), (gst_filesrc_init),
12815         (gst_filesrc_finalize), (gst_filesrc_set_location),
12816         (gst_filesrc_set_property), (gst_filesrc_get_property),
12817         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
12818         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
12819         (gst_filesrc_create_read), (gst_filesrc_create),
12820         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
12821         * gst/elements/gstfilesrc.h:
12822         * gst/gstelement.c: (gst_element_get_state_func),
12823         (gst_element_lost_state), (gst_element_pads_activate):
12824         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12825         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
12826         (gst_pad_pull_range):
12827         * gst/gstpad.h:
12828         More work on the generic source base class, implement seeking,
12829         query.
12830         Make filesrc extend the base source class.
12831         Added gst_pad_set_checkgetrange_function to GstPad.
12832
12833 2005-04-06  Andy Wingo  <wingo@pobox.com>
12834
12835         * pkgconfig/gstreamer-base.pc.in:
12836         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
12837
12838         * pkgconfig/Makefile.am:
12839         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
12840
12841 2005-04-04  Wim Taymans  <wim@fluendo.com>
12842
12843         * gst/base/Makefile.am:
12844         * gst/base/README:
12845         * gst/base/gstbasesink.c: (gst_basesink_base_init),
12846         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
12847         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
12848         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
12849         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
12850         (gst_basesrc_base_init), (gst_basesrc_class_init),
12851         (gst_basesrc_init), (gst_basesrc_get_formats),
12852         (gst_basesrc_get_query_types), (gst_basesrc_query),
12853         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
12854         (gst_basesrc_set_property), (gst_basesrc_get_property),
12855         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
12856         (gst_basesrc_loop), (gst_basesrc_activate),
12857         (gst_basesrc_change_state):
12858         * gst/base/gstbasesrc.h:
12859         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
12860         (gst_fakesrc_class_init), (gst_fakesrc_init),
12861         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
12862         (gst_fakesrc_get_property), (gst_fakesrc_create):
12863         * gst/elements/gstfakesrc.h:
12864         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
12865         (gst_filesrc_open_file), (gst_filesrc_loop),
12866         (gst_filesrc_activate), (filesrc_find_peek),
12867         (gst_filesrc_type_find):
12868         Made base source class, make fakesrc extend it.
12869         Add comments to basesink class.
12870         Some filesrc cleanup.
12871
12872 2005-03-31  David Schleef  <ds@schleef.org>
12873
12874         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
12875         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
12876         expected to link against libgstreamer.
12877         * gst/base/Makefile.am: link against libgstreamer
12878         * gst/elements/Makefile.am: same
12879
12880 2005-03-31  Andy Wingo  <wingo@pobox.com>
12881
12882         * tests/instantiate/Makefile.am:
12883         * tests/instantiate/caps.c: Add test to test speed of caps copy
12884         and free.
12885
12886         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
12887         GMemChunk to be fair.
12888
12889         * gst/gsttrashstack.h: Remove warning about using the fallback
12890         trash stack implementation, it's still faster than malloc.
12891
12892 2005-03-30  Andy Wingo  <wingo@pobox.com>
12893
12894         * tests/complexity.c: Add a copyright.
12895
12896 2005-03-31  Wim Taymans  <wim@fluendo.com>
12897
12898         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
12899         (gst_base_transform_class_init), (gst_base_transform_init),
12900         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
12901         (gst_base_transform_get_property),
12902         (gst_base_transform_sink_activate),
12903         (gst_base_transform_src_activate),
12904         (gst_base_transform_change_state):
12905         * gst/base/gstbasetransform.h:
12906         * gst/elements/gstidentity.c: (gst_identity_class_init),
12907         (gst_identity_event), (gst_identity_check_perfect),
12908         (gst_identity_transform), (gst_identity_start),
12909         (gst_identity_stop):
12910         Added start/stop methods to transform base class so subclasses 
12911         don't need to deal with state changes even.
12912
12913 2005-03-31  Wim Taymans  <wim@fluendo.com>
12914
12915         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
12916         (gst_event_new_discontinuous), (gst_event_discont_get_value):
12917         * gst/gstevent.h:
12918         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12919         (gst_pad_pull_range):
12920         Added rate to the discont event to prepare for variable speed
12921         and reverse playback.
12922
12923 2005-03-29  David Schleef  <ds@schleef.org>
12924
12925         * configure.ac:
12926         * testsuite/trigger/Makefile.am:
12927         * testsuite/trigger/trigger.c: A little example program to show
12928         how trigger-based elements can work.
12929
12930 2005-03-29  Wim Taymans  <wim@fluendo.com>
12931
12932         * gst/base/Makefile.am:
12933         * gst/base/README:
12934         * gst/base/gstbasesink.c: (gst_basesink_get_type),
12935         (gst_basesink_base_init), (gst_basesink_class_init),
12936         (gst_basesink_pad_getcaps), (gst_basesink_init),
12937         (gst_basesink_activate), (gst_basesink_change_state):
12938         * gst/base/gstbasesink.h:
12939         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
12940         (gst_base_transform_base_init), (gst_base_transform_finalize),
12941         (gst_base_transform_class_init), (gst_base_transform_init),
12942         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
12943         (gst_base_transform_event), (gst_base_transform_getrange),
12944         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
12945         (gst_base_transform_set_property),
12946         (gst_base_transform_get_property),
12947         (gst_base_transform_sink_activate),
12948         (gst_base_transform_src_activate),
12949         (gst_base_transform_change_state):
12950         * gst/base/gstbasetransform.h:
12951         * gst/elements/gstidentity.c: (gst_identity_finalize),
12952         (gst_identity_class_init), (gst_identity_init),
12953         (gst_identity_event), (gst_identity_check_perfect),
12954         (gst_identity_transform), (gst_identity_set_property),
12955         (gst_identity_get_property), (gst_identity_change_state):
12956         * gst/elements/gstidentity.h:
12957         * gst/gstelement.c: (gst_element_get_state_func),
12958         (gst_element_lost_state), (gst_element_pads_activate):
12959         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12960         (gst_pad_check_pull_range), (gst_pad_pull_range):
12961         * gst/gstpad.h:
12962         Simplify pad activation.
12963         Added function to check if pull_range can be performed.
12964         Error out when pulling inactive or flushing pads.
12965         Removed const from refcounted types as it does not make sense.
12966         Simplify pad templates in basesink
12967         Added base class for simple 1-to-1 transforms.
12968         Make identity subclass the base transform.
12969
12970 2005-03-29  Andy Wingo  <wingo@pobox.com>
12971
12972         * docs/libs/gstreamer-libs-overrides.txt: 
12973         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
12974         really don't understand what's going on, but like whatever. I want
12975         green buildbot!
12976
12977         * docs/gst/Makefile.am:
12978         * docs/libs/Makefile.am: Dist the overrides files.
12979
12980         * check/Makefile.am (clean-local): Remove .libs directories.
12981
12982         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
12983         elements to EXTRA_DIST, so po/ files are happy.
12984
12985         * po/POTFILES.in: Er, remove it here.
12986
12987         * po/POTFILES: Remove gstspider.c.
12988
12989         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
12990
12991         * docs/libs/gstreamer-libs-docs.sgml: 
12992         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
12993         bytestream.
12994
12995         * tests/complexity.c (main): Set the length of the preroll queue
12996         on the sinks to prevent a lockup.
12997
12998         * libs/gst/dataprotocol/Makefile.am: 
12999         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
13000         the same as the one in check/gst-libs/gdp.c.
13001
13002         * po/, docs/gst/: Commit automatic changes to docs and po files.
13003
13004         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
13005         the versioned libgstbase.
13006
13007         * check/Makefile.am: Depend on an unversioned gst-register, seems
13008         to make autoconf happier.
13009
13010         * gst/base/Makefile.am: Make libgstbase a versioned lib.
13011
13012 2005-03-28  Wim Taymans  <wim@fluendo.com>
13013
13014         * configure.ac:
13015         * docs/design/part-gstelement.txt:
13016         * docs/design/part-negotiation.txt:
13017         * docs/design/part-preroll.txt:
13018         * docs/design/part-scheduling.txt:
13019         * docs/design/part-states.txt:
13020         * gst/Makefile.am:
13021         * gst/base/Makefile.am:
13022         * gst/base/README:
13023         * gst/base/gstbasesink.c: (gst_basesink_get_template),
13024         (gst_basesink_base_init), (gst_basesink_class_init),
13025         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
13026         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
13027         (gst_basesink_set_pad_functions),
13028         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
13029         (gst_basesink_set_property), (gst_basesink_get_property),
13030         (gst_base_sink_get_template), (gst_base_sink_get_caps),
13031         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
13032         (gst_basesink_preroll_queue_push),
13033         (gst_basesink_preroll_queue_empty),
13034         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
13035         (gst_basesink_event), (gst_basesink_get_times),
13036         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
13037         (gst_basesink_chain_unlocked), (gst_basesink_chain),
13038         (gst_basesink_loop), (gst_basesink_activate),
13039         (gst_basesink_change_state):
13040         * gst/base/gstbasesink.h:
13041         * gst/elements/Makefile.am:
13042         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
13043         (gst_fakesink_class_init), (gst_fakesink_init),
13044         (gst_fakesink_set_property), (gst_fakesink_get_property),
13045         (gst_fakesink_get_times), (gst_fakesink_event),
13046         (gst_fakesink_preroll), (gst_fakesink_render),
13047         (gst_fakesink_change_state):
13048         * gst/elements/gstfakesink.h:
13049         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
13050         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
13051         * gst/gstelement.c: (gst_element_add_pad),
13052         (gst_element_get_state_func), (gst_element_abort_state),
13053         (gst_element_commit_state), (gst_element_lost_state),
13054         (gst_element_set_state), (gst_element_pads_activate):
13055         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
13056         * gst/gstpipeline.c: (gst_pipeline_send_event),
13057         (gst_pipeline_change_state):
13058         Added state change code.
13059         Added/updated docs.
13060         Added sink base class, make fakesink extend the base class.
13061         Small cleanups in GstPipeline.
13062
13063 2005-03-26  David Schleef  <ds@schleef.org>
13064
13065         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
13066         is broken and should be implemented in a different library.
13067         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
13068         * gst/gst.h: remove gstcpu.h
13069         * gst/gstcpu.c: remove
13070         * gst/gstcpu.h: remove
13071         * gst/Makefile.am.future: Remove this file.  It's ancient.
13072
13073 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
13074
13075         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
13076         (gst_bin_send_event):
13077           Add default event/set_manager handlers. The set_manager handler
13078           takes care that the manager is distributed over kids that were
13079           already in the bin before the manager was set. The event handler
13080           is a utility virtual function that sends the event over all sinks,
13081           so that gst_element_send_event (bin, event); has the expected
13082           behaviour.
13083         * gst/gstpad.c: (gst_pad_event_default):
13084           Re-install default event handling for discontinuities, so that
13085           seeking works without requiring hacks in applications or extra
13086           code in sinks.
13087         * gst/gstpipeline.c: (gst_pipeline_class_init),
13088         (gst_pipeline_send_event):
13089           Half hack, half utility: set a pipeline to PAUSED for seek events,
13090           since that is the only way we can guarantee a/v sync. Means that
13091           you can do gst_element_seek (pipeline, method, pos); on a pipeline
13092           and it "just works".
13093
13094 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
13095
13096         * gst/gstpipeline.c: (gst_pipeline_use_clock):
13097           Lock/unlock mismatch.
13098
13099 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13100
13101         * docs/faq/gst-uninstalled:
13102           add gst-plugins-base
13103         * docs/gst/Makefile.am:
13104           don't error out until docs are fixed
13105         * docs/gst/gstreamer.types:
13106           remove thread
13107
13108 2005-03-22  Wim Taymans  <wim@fluendo.com>
13109
13110         * check/Makefile.am:
13111         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
13112         * gst/gststructure.c: (gst_structure_set_valist),
13113         (gst_structure_copy_conditional):
13114         Activated more tests.
13115         Added message test.
13116         Added G_TYPE_POINTER to GstStructure.
13117         
13118
13119 2005-03-22  Wim Taymans  <wim@fluendo.com>
13120
13121         * docs/design/part-TODO.txt:
13122         * docs/design/part-events.txt:
13123         * docs/design/part-gstbin.txt:
13124         * docs/design/part-gstbus.txt:
13125         * docs/design/part-gstpipeline.txt:
13126         * docs/design/part-messages.txt:
13127         * gst/gstbus.c:
13128         * gst/gstmessage.c:
13129         Docs updates
13130
13131 2005-03-21  Wim Taymans  <wim@fluendo.com>
13132
13133         * gst/gstbus.c: (gst_bus_post):
13134         Fix copy-and-paste error.
13135
13136 2005-03-21  Wim Taymans  <wim@fluendo.com>
13137
13138         * check/Makefile.am:
13139         * gst/Makefile.am:
13140         * gst/elements/Makefile.am:
13141         * gst/elements/gstelements.c:
13142         * gst/elements/gstfakesink.c: (gst_fakesink_init),
13143         (gst_fakesink_event), (gst_fakesink_chain):
13144         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
13145         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
13146         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
13147         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
13148         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
13149         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
13150         (gst_fakesrc_loop), (gst_fakesrc_activate),
13151         (gst_fakesrc_change_state):
13152         * gst/elements/gstfakesrc.h:
13153         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
13154         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
13155         (gst_filesrc_open_file), (gst_filesrc_loop),
13156         (gst_filesrc_activate), (gst_filesrc_change_state),
13157         (filesrc_find_peek), (filesrc_find_suggest),
13158         (gst_filesrc_type_find):
13159         * gst/elements/gstidentity.c: (gst_identity_finalize),
13160         (gst_identity_class_init), (gst_identity_init),
13161         (gst_identity_proxy_getcaps), (identity_queue_push),
13162         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
13163         (gst_identity_getrange), (gst_identity_chain),
13164         (gst_identity_sink_loop), (gst_identity_src_loop),
13165         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
13166         (gst_identity_set_property), (gst_identity_get_property),
13167         (gst_identity_change_state):
13168         * gst/elements/gstidentity.h:
13169         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
13170         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
13171         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
13172         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
13173         (gst_tee_sink_activate):
13174         * gst/elements/gsttee.h:
13175         * gst/gst.c: (gst_register_core_elements), (init_post):
13176         * gst/gst.h:
13177         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
13178         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
13179         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
13180         (gst_bin_change_state):
13181         * gst/gstbin.h:
13182         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
13183         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
13184         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
13185         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
13186         (gst_bus_set_sync_handler), (gst_bus_create_watch),
13187         (bus_watch_callback), (bus_watch_destroy),
13188         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
13189         (poll_timeout), (gst_bus_poll):
13190         * gst/gstbus.h:
13191         * gst/gstcaps.h:
13192         * gst/gstdata.h:
13193         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
13194         (gst_element_post_message), (gst_element_message_full),
13195         (gst_element_get_state_func), (gst_element_get_state),
13196         (gst_element_abort_state), (gst_element_commit_state),
13197         (gst_element_lost_state), (gst_element_set_state),
13198         (gst_element_pads_activate), (gst_element_change_state),
13199         (gst_element_dispose), (gst_element_set_manager_func),
13200         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
13201         (gst_element_set_manager), (gst_element_get_manager),
13202         (gst_element_set_bus), (gst_element_get_bus),
13203         (gst_element_set_scheduler), (gst_element_get_scheduler):
13204         * gst/gstelement.h:
13205         * gst/gstevent.c: (gst_event_new_segment_seek),
13206         (gst_event_new_flush):
13207         * gst/gstevent.h:
13208         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
13209         (_gst_message_free), (gst_message_get_type), (gst_message_new),
13210         (gst_message_new_eos), (gst_message_new_error),
13211         (gst_message_new_warning), (gst_message_new_tag),
13212         (gst_message_new_state_changed), (gst_message_new_application),
13213         (gst_message_get_structure), (gst_message_parse_tag),
13214         (gst_message_parse_state_changed), (gst_message_parse_error),
13215         (gst_message_parse_warning):
13216         * gst/gstmessage.h:
13217         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
13218         (gst_real_pad_set_property), (gst_pad_set_active),
13219         (gst_pad_is_active), (gst_pad_set_blocked_async),
13220         (gst_pad_set_blocked), (gst_pad_is_blocked),
13221         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
13222         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
13223         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
13224         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
13225         (gst_pad_link_filtered), (gst_pad_relink_filtered),
13226         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
13227         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
13228         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
13229         (gst_pad_set_caps), (gst_pad_configure_sink),
13230         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
13231         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
13232         (gst_real_pad_dispose), (gst_real_pad_finalize),
13233         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
13234         (gst_pad_event_default_dispatch), (gst_pad_event_default),
13235         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
13236         * gst/gstpad.h:
13237         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
13238         (pipeline_bus_handler), (gst_pipeline_change_state),
13239         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
13240         * gst/gstpipeline.h:
13241         * gst/gstprobe.h:
13242         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
13243         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
13244         (gst_queue_link_src), (gst_queue_bufferalloc),
13245         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
13246         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
13247         (gst_queue_loop), (gst_queue_handle_src_event),
13248         (gst_queue_handle_src_query), (gst_queue_src_activate),
13249         (gst_queue_change_state):
13250         * gst/gstqueue.h:
13251         * gst/gstscheduler.c: (gst_scheduler_init),
13252         (gst_scheduler_dispose), (gst_scheduler_create_task),
13253         (gst_scheduler_factory_create):
13254         * gst/gstscheduler.h:
13255         * gst/gststructure.c: (gst_structure_get_type),
13256         (gst_structure_copy_conditional):
13257         * gst/gststructure.h:
13258         * gst/gsttaginterface.h:
13259         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
13260         (gst_task_init), (gst_task_dispose), (gst_task_create),
13261         (gst_task_get_state), (gst_task_start), (gst_task_stop),
13262         (gst_task_pause):
13263         * gst/gsttask.h:
13264         * gst/gstthread.c:
13265         * gst/gstthread.h:
13266         * gst/gsttypes.h:
13267         * gst/schedulers/Makefile.am:
13268         * gst/schedulers/cothreads_compat.h:
13269         * gst/schedulers/entryscheduler.c:
13270         * gst/schedulers/faircothreads.c:
13271         * gst/schedulers/faircothreads.h:
13272         * gst/schedulers/fairscheduler.c:
13273         * gst/schedulers/gstbasicscheduler.c:
13274         * gst/schedulers/gstoptimalscheduler.c:
13275         * gst/schedulers/gthread-cothreads.h:
13276         * gst/schedulers/threadscheduler.c:
13277         (gst_thread_scheduler_task_get_type),
13278         (gst_thread_scheduler_task_class_init),
13279         (gst_thread_scheduler_task_init),
13280         (gst_thread_scheduler_task_start),
13281         (gst_thread_scheduler_task_stop),
13282         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
13283         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
13284         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
13285         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
13286         (plugin_init):
13287         * libs/gst/Makefile.am:
13288         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
13289         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
13290         (gst_file_pad_parent_set):
13291         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
13292         (gst_dp_event_from_packet):
13293         * tests/complexity.c: (main):
13294         * tests/mass_elements.c: (main):
13295         * testsuite/states/locked.c: (message_received), (main):
13296         * testsuite/states/parent.c: (main):
13297         * tools/gst-inspect.c: (print_element_flag_info),
13298         (print_implementation_info), (print_pad_info):
13299         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
13300         (main):
13301         * tools/gst-md5sum.c: (event_loop), (main):
13302         * tools/gst-typefind.c: (main):
13303         * tools/gst-xmlinspect.c: (print_element_info):
13304         Next big merge.
13305         Added GstBus for mainloop integration.
13306         Added GstMessage for sending notifications on the bus.
13307         Added GstTask as an abstraction for pipeline entry points.
13308         Removed GstThread.
13309         Removed Schedulers.
13310         Simplified GstQueue for multithreaded core.
13311         Made _link threadsafe, removed old capsnego.
13312         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
13313         Added pad blocking functions.
13314         Reworked scheduling functions in GstPad to prepare for
13315         scheduling updates soon.
13316         Moved events out of data stream.
13317         Simplified GstEvent types.
13318         Added return values to push/pull.
13319         Removed clocking from GstElement.
13320         Added prototypes for state change function for next merge.
13321         Removed iterate from bins and state change management.
13322         Fixed some elements, disabled others for now.
13323         Fixed -inspect and -launch.
13324         Added check for GstBus.
13325
13326 2005-03-10  Wim Taymans  <wim@fluendo.com>
13327
13328         * docs/design/part-MT-refcounting.txt:
13329         * docs/design/part-clocks.txt:
13330         * docs/design/part-gstelement.txt:
13331         * docs/design/part-gstobject.txt:
13332         * docs/design/part-standards.txt:
13333         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
13334         (gst_bin_remove_func), (gst_bin_remove):
13335         * gst/gstbin.h:
13336         * gst/gstbuffer.c:
13337         * gst/gstcaps.h:
13338         * testsuite/clock/clock1.c: (main):
13339         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
13340         (main):
13341         * testsuite/dlopen/loadgst.c: (do_test):
13342         * testsuite/refcounting/bin.c: (add_remove_test1),
13343         (add_remove_test2), (main):
13344         * testsuite/refcounting/element.c: (main):
13345         * testsuite/refcounting/element_pad.c: (main):
13346         * testsuite/refcounting/pad.c: (main):
13347         * tools/gst-launch.c: (sigint_handler_sighandler):
13348         * tools/gst-typefind.c: (main):
13349         Doc updates.
13350         Added doc about clock.
13351         removed gst_bin_iterate_recurse_up(), marked methods
13352         for removal.
13353         Fix more testsuites.
13354
13355 2005-03-09  Wim Taymans  <wim@fluendo.com>
13356
13357         * gst/gstpad.c: (gst_pad_get_direction),
13358         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
13359         (gst_pad_collect_valist):
13360         * testsuite/bins/interface.c: (main):
13361         * testsuite/caps/audioscale.c: (test_caps):
13362         * testsuite/caps/caps.c: (test1), (test2), (test3):
13363         * testsuite/caps/deserialize.c: (main):
13364         * testsuite/caps/enumcaps.c: (main):
13365         * testsuite/caps/filtercaps.c: (main):
13366         * testsuite/caps/intersect2.c: (main):
13367         * testsuite/caps/random.c: (main):
13368         * testsuite/caps/renegotiate.c: (my_fixate), (main):
13369         * testsuite/caps/sets.c: (check_caps):
13370         * testsuite/caps/simplify.c: (check_caps), (main):
13371         * testsuite/caps/subtract.c: (check_caps):
13372         Fix _pad_get_direction wrt ghostpads.
13373         Fix caps testsuite.
13374
13375 2005-03-09  Wim Taymans  <wim@fluendo.com>
13376
13377         * check/Makefile.am:
13378         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
13379         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
13380         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
13381         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
13382         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
13383         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
13384         (gst_bin_remove), (gst_bin_iterate_recurse_up),
13385         (bin_element_is_sink), (gst_bin_iterate_sinks),
13386         (gst_bin_iterate_all_by_interface):
13387         * gst/gstbin.h:
13388         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
13389         (gst_element_change_state), (gst_element_dispose),
13390         (gst_element_finalize), (gst_element_set_loop_function):
13391         * gst/gstelement.h:
13392         * gst/gstiterator.c: (find_custom_fold_func):
13393         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
13394         (gst_pad_collectv), (gst_pad_collect_valist),
13395         (gst_pad_template_new):
13396         * gst/gstpipeline.c: (gst_pipeline_class_init),
13397         (gst_pipeline_dispose), (gst_pipeline_set_property),
13398         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
13399         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
13400         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
13401         * gst/gstutils.h:
13402         * gst/schedulers/entryscheduler.c:
13403         * gst/schedulers/gstbasicscheduler.c:
13404         (gst_basic_scheduler_cothreaded_chain),
13405         (gst_basic_scheduler_chain_add_element):
13406         * testsuite/bins/interface.c: (main):
13407         Added GstBin test.
13408         Added GstSystemClock test.
13409         Implemented clock distribution code in GstBin.
13410         Implemented iterate sinks method for future use.
13411         Rearranged gstelement.h
13412         Fix GstIterator comparison bug.
13413         Moved some code to GstPipeline, mostly clocking related.
13414
13415 2005-03-09  Wim Taymans  <wim@fluendo.com>
13416
13417         * configure.ac:
13418         * gst/gst_private.h:
13419         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
13420         (gst_bin_remove_func), (gst_bin_remove),
13421         (gst_bin_get_by_name_recurse_up):
13422         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
13423         (gst_clock_id_compare_func), (gst_clock_id_wait),
13424         (gst_clock_id_wait_async), (gst_clock_init),
13425         (gst_clock_adjust_unlocked), (gst_clock_get_time):
13426         * gst/gstelement.h:
13427         * gst/gstinfo.c: (_gst_debug_init):
13428         * gst/gstobject.h:
13429         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
13430         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
13431         * gst/gstpad.h:
13432         Bump version number, we're now 0.9.0
13433         Add future debugging category.
13434         Fix NULL _unref() in _get_by_name_recurse_up
13435         Rearrange gstpad.h.
13436         Update some docs.
13437
13438 2005-03-08  Wim Taymans  <wim@fluendo.com>
13439
13440         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
13441         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
13442         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
13443         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
13444         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
13445         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
13446         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
13447         * gst/elements/gstidentity.c: (gst_identity_class_init):
13448         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
13449         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
13450         * gst/elements/gstshaper.c: (gst_shaper_class_init):
13451         * gst/elements/gststatistics.c: (gst_statistics_class_init):
13452         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
13453         (gst_tee_link):
13454         * gst/gstelement.c: (gst_element_class_init),
13455         (gst_element_base_class_init), (gst_element_init),
13456         (gst_element_get_random_pad), (gst_element_wait_state_change),
13457         (gst_element_change_state), (gst_element_dispose),
13458         (gst_element_finalize), (gst_element_set_loop_function):
13459         * gst/gstelement.h:
13460         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
13461         * gst/gstthread.c: (gst_thread_class_init),
13462         (gst_thread_release_children_locks), (gst_thread_change_state):
13463         * gst/schedulers/gstbasicscheduler.c:
13464         (gst_basic_scheduler_loopfunc_wrapper),
13465         (gst_basic_scheduler_chain_wrapper),
13466         (gst_basic_scheduler_src_wrapper),
13467         (gst_basic_scheduler_remove_element):
13468         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
13469         Remove threadsafe properties. Fix elements because GObject
13470         complains when installing a property before declaring a
13471         set/get_property handler.
13472         Rearrange gstelement.h file, use STATE macros for state locks.
13473         Free mutexes in the finalize method instead of dispose.
13474
13475 2005-03-08  Wim Taymans  <wim@fluendo.com>
13476
13477         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
13478         * gst/gstthread.c: (gst_thread_release_children_locks):
13479         Added parentage check.
13480         Fix build og GstThread again.
13481
13482 2005-03-08  Wim Taymans  <wim@fluendo.com>
13483
13484         * docs/design/part-MT-refcounting.txt:
13485         * docs/design/part-conventions.txt:
13486         * docs/design/part-gstobject.txt:
13487         * docs/design/part-relations.txt:
13488         * docs/design/part-standards.txt:
13489         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
13490         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
13491         (gst_bin_get_by_name), (gst_bin_get_by_interface),
13492         (gst_bin_iterate_all_by_interface):
13493         * gst/gstbuffer.h:
13494         * gst/gstclock.h:
13495         * gst/gstelement.c: (gst_element_class_init),
13496         (gst_element_change_state), (gst_element_set_loop_function):
13497         * gst/gstelement.h:
13498         * gst/gstiterator.c:
13499         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
13500         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
13501         (gst_object_dispatch_properties_changed), (gst_object_set_name),
13502         (gst_object_set_parent), (gst_object_unparent),
13503         (gst_object_check_uniqueness):
13504         * gst/gstobject.h:
13505         Docs updates, clean up some headers.
13506
13507 2005-03-07  Wim Taymans  <wim@fluendo.com>
13508
13509         * check/.cvsignore:
13510         * check/Makefile.am:
13511         * check/gst-libs/.cvsignore:
13512         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
13513         * check/gst/.cvsignore:
13514         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
13515         (START_TEST), (gstbus_suite), (main):
13516         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
13517         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
13518         (gst_data_suite), (main):
13519         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
13520         (add_fold_func), (gstiterator_suite), (main):
13521         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
13522         (thread_name_object), (thread_name_object_default),
13523         (gst_object_name_compare), (gst_object_suite), (main):
13524         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
13525         (gst_pad_suite), (main):
13526         * check/gstcheck.c: (gst_check_log_message_func),
13527         (gst_check_log_critical_func), (gst_check_init):
13528         * check/gstcheck.h:
13529         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
13530         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
13531         Added checks.
13532
13533 2005-03-07  Wim Taymans  <wim@fluendo.com>
13534
13535         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
13536         (gst_list_iterator_next), (gst_list_iterator_resync),
13537         (gst_list_iterator_free), (gst_iterator_new_list),
13538         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
13539         (gst_iterator_free), (gst_iterator_push), (filter_next),
13540         (filter_resync), (filter_uninit), (filter_free),
13541         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
13542         (gst_iterator_foreach), (find_custom_fold_func),
13543         (gst_iterator_find_custom):
13544         * gst/gstiterator.h:
13545         Added missing files.
13546
13547 2005-03-07  Wim Taymans  <wim@fluendo.com>
13548
13549         * Makefile.am:
13550         * configure.ac:
13551         * docs/design/part-MT-refcounting.txt:
13552         * docs/design/part-conventions.txt:
13553         * docs/design/part-gstobject.txt:
13554         * docs/design/part-relations.txt:
13555         * examples/mixer/mixer.c: (main):
13556         * examples/thread/thread.c: (eos), (main):
13557         * gst/Makefile.am:
13558         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13559         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
13560         (gst_spider_plug_from_srcpad):
13561         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
13562         (gst_spider_identity_change_state),
13563         (gst_spider_identity_sink_loop_type_finding):
13564         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
13565         * gst/elements/gstidentity.c: (gst_identity_init):
13566         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
13567         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
13568         * gst/elements/gsttypefindelement.c: (free_entry):
13569         * gst/gst.c:
13570         * gst/gst.h:
13571         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
13572         (gst_bin_set_clock_func), (gst_bin_auto_clock),
13573         (gst_bin_set_index), (gst_bin_set_element_sched),
13574         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
13575         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
13576         (gst_bin_iterate_elements), (iterate_child_recurse),
13577         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
13578         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
13579         (compare_interface), (gst_bin_get_by_interface),
13580         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
13581         * gst/gstbin.h:
13582         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
13583         (gst_buffer_default_free), (gst_buffer_default_copy),
13584         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
13585         (gst_buffer_create_sub):
13586         * gst/gstbuffer.h:
13587         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
13588         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
13589         (gst_caps_unref), (gst_static_caps_get),
13590         (gst_caps_remove_and_get_structure), (gst_caps_append),
13591         (gst_caps_append_structure), (gst_caps_remove_structure),
13592         (gst_caps_copy_nth), (gst_caps_set_simple),
13593         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
13594         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
13595         (gst_caps_structure_intersect_field), (gst_caps_intersect),
13596         (gst_caps_structure_subtract_field), (gst_caps_subtract),
13597         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
13598         (gst_caps_structure_figure_out_union),
13599         (gst_caps_switch_structures), (gst_caps_do_simplify),
13600         (gst_caps_replace), (gst_caps_from_string),
13601         (gst_caps_copy_conditional):
13602         * gst/gstcaps.h:
13603         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
13604         (_gst_clock_id_free), (gst_clock_id_unref),
13605         (gst_clock_id_compare_func), (gst_clock_id_wait),
13606         (gst_clock_id_wait_async), (gst_clock_class_init),
13607         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
13608         (gst_clock_get_time), (gst_clock_set_time_adjust),
13609         (gst_clock_set_property), (gst_clock_get_property):
13610         * gst/gstclock.h:
13611         * gst/gstcompat.h:
13612         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
13613         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
13614         * gst/gstdata.h:
13615         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
13616         (gst_element_requires_clock), (gst_element_provides_clock),
13617         (gst_element_set_clock), (gst_element_clock_wait),
13618         (gst_element_wait), (gst_element_set_time_delay),
13619         (gst_element_is_indexable), (gst_element_add_pad),
13620         (gst_element_add_ghost_pad), (gst_element_remove_pad),
13621         (pad_compare_name), (gst_element_get_static_pad),
13622         (gst_element_request_pad), (gst_element_get_request_pad),
13623         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
13624         (gst_element_class_get_pad_template_list),
13625         (gst_element_class_get_pad_template), (gst_element_error_func),
13626         (gst_element_get_random_pad), (gst_element_get_event_masks),
13627         (gst_element_send_event), (gst_element_seek),
13628         (gst_element_get_query_types), (gst_element_query),
13629         (gst_element_get_formats), (gst_element_convert),
13630         (gst_element_is_locked_state), (gst_element_set_locked_state),
13631         (gst_element_sync_state_with_parent), (gst_element_change_state),
13632         (gst_element_finalize), (gst_element_yield),
13633         (gst_element_interrupt), (gst_element_set_scheduler),
13634         (gst_element_get_scheduler), (gst_element_set_loop_function):
13635         * gst/gstelement.h:
13636         * gst/gstevent.h:
13637         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
13638         (gst_format_get_by_nick), (gst_format_get_details),
13639         (gst_format_iterate_definitions):
13640         * gst/gstformat.h:
13641         * gst/gstindex.c: (gst_index_gtype_resolver):
13642         * gst/gstinfo.c:
13643         * gst/gstinfo.h:
13644         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
13645         (gst_mem_chunk_free):
13646         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
13647         (gst_object_ref), (gst_object_unref), (gst_object_sink),
13648         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
13649         (gst_object_dispatch_properties_changed),
13650         (gst_object_set_name_default), (gst_object_set_name),
13651         (gst_object_get_name), (gst_object_set_name_prefix),
13652         (gst_object_get_name_prefix), (gst_object_set_parent),
13653         (gst_object_get_parent), (gst_object_unparent),
13654         (gst_object_check_uniqueness), (gst_object_save_thyself),
13655         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
13656         (gst_object_set_property), (gst_object_get_property),
13657         (gst_object_get_path_string):
13658         * gst/gstobject.h:
13659         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
13660         (gst_real_pad_init), (gst_real_pad_get_property),
13661         (gst_pad_custom_new), (gst_pad_get_direction),
13662         (gst_pad_set_active), (gst_pad_is_active),
13663         (gst_pad_set_event_function), (gst_pad_is_linked),
13664         (gst_pad_link_free), (gst_pad_link_intersect),
13665         (gst_pad_link_fixate), (gst_pad_set_caps),
13666         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
13667         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
13668         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
13669         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
13670         (gst_pad_get_caps), (gst_pad_peer_get_caps),
13671         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
13672         (gst_pad_realize), (gst_pad_get_allowed_caps),
13673         (gst_real_pad_dispose), (gst_real_pad_finalize),
13674         (gst_pad_collectv), (gst_pad_collect_valist),
13675         (gst_pad_template_dispose), (gst_pad_template_new),
13676         (gst_pad_get_internal_links):
13677         * gst/gstpad.h:
13678         * gst/gstpipeline.c: (gst_pipeline_dispose),
13679         (gst_pipeline_change_state):
13680         * gst/gstpipeline.h:
13681         * gst/gstplugin.c:
13682         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
13683         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
13684         * gst/gstpluginfeature.h:
13685         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
13686         * gst/gstquery.c: (_gst_query_type_initialize),
13687         (gst_query_type_register), (gst_query_type_get_by_nick),
13688         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
13689         * gst/gstquery.h:
13690         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
13691         * gst/gstscheduler.c: (gst_scheduler_add_element),
13692         (gst_scheduler_factory_create):
13693         * gst/gststructure.c: (gst_structure_set_parent_refcount),
13694         (gst_structure_free), (gst_structure_set_name),
13695         (gst_structure_id_set_value), (gst_structure_set_value),
13696         (gst_structure_set_valist), (gst_structure_remove_field),
13697         (gst_structure_remove_fields),
13698         (gst_structure_remove_fields_valist),
13699         (gst_structure_remove_all_fields), (gst_structure_foreach),
13700         (gst_structure_map_in_place),
13701         (gst_caps_structure_fixate_field_nearest_int),
13702         (gst_caps_structure_fixate_field_nearest_double):
13703         * gst/gststructure.h:
13704         * gst/gstsystemclock.c: (gst_system_clock_class_init),
13705         (gst_system_clock_init), (gst_system_clock_dispose),
13706         (gst_system_clock_async_thread),
13707         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
13708         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
13709         * gst/gstsystemclock.h:
13710         * gst/gsttag.c: (gst_tag_list_add_value_internal),
13711         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
13712         * gst/gsttaginterface.c:
13713         * gst/gstthread.c: (gst_thread_dispose),
13714         (gst_thread_release_children_locks), (gst_thread_change_state),
13715         (gst_thread_main_loop):
13716         * gst/gsttrashstack.h:
13717         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
13718         * gst/gsttypes.h:
13719         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
13720         (gst_element_request_pad), (gst_element_get_pad_from_template),
13721         (gst_element_request_compatible_pad),
13722         (gst_element_get_compatible_pad_filtered),
13723         (gst_element_get_compatible_pad), (gst_element_state_get_name),
13724         (gst_element_link_pads_filtered), (gst_element_link_filtered),
13725         (gst_element_link_many), (gst_element_link),
13726         (gst_element_link_pads), (gst_element_unlink_pads),
13727         (gst_element_unlink_many), (gst_element_unlink),
13728         (gst_pad_can_link_filtered), (gst_pad_can_link),
13729         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
13730         (gst_object_default_error), (gst_bin_add_many),
13731         (gst_bin_remove_many), (gst_element_populate_std_props),
13732         (gst_element_class_install_std_props), (gst_buffer_merge),
13733         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
13734         (link_fold_func), (gst_pad_proxy_setcaps):
13735         * gst/gstutils.h:
13736         * gst/gstvalue.c: (gst_value_deserialize_string):
13737         * gst/parse/grammar.y:
13738         * gst/schedulers/gstbasicscheduler.c:
13739         (gst_basic_scheduler_cothreaded_chain),
13740         (gst_basic_scheduler_chain_recursive_add),
13741         (gst_basic_scheduler_pad_link):
13742         * gst/schedulers/gstoptimalscheduler.c:
13743         (get_group_schedule_function),
13744         (gst_opt_scheduler_state_transition),
13745         (gst_opt_scheduler_add_element), (element_get_reachables_func):
13746         * libs/gst/bytestream/bytestream.c:
13747         * libs/gst/dataprotocol/dataprotocol.c:
13748         (gst_dp_header_from_buffer):
13749         * po/nb.po:
13750         * po/ru.po:
13751         * tests/threadstate/threadstate2.c: (eos):
13752         * tools/gst-compprep.c: (main):
13753         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
13754         (print_pad_info), (print_children_info):
13755         * tools/gst-launch.c: (idle_func), (main):
13756         * tools/gst-md5sum.c: (idle_func), (main):
13757         * tools/gst-xmlinspect.c: (print_element_info):
13758         First THREADED backport attempt, focusing on adding locks and
13759         making sure the API is threadsafe. Needs more work. More docs
13760         follow this week.
13761
13762 2005-02-24  Andy Wingo  <wingo@pobox.com>
13763
13764         * tests/bench-complexity.scm:
13765         * tests/complexity.gnuplot: New files, good for running complexity
13766         benchmarks.
13767
13768         * tests/Makefile.am:
13769         * tests/complexity.c: New test, sets up N elements, at each level
13770         teeing into M streams per element. Eeeenteresting.
13771
13772         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
13773         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
13774         running bench-mass_elements.scm.
13775
13776         * tests/bench-mass_elements.scm: New script, runs mass_elements
13777         for various numbers of identities, outputting the results to a
13778         file. Requires guile 1.6. Just for testing.
13779
13780 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13781
13782         * gst/schedulers/fairscheduler.c:
13783           compile with debug disabled
13784
13785 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
13786
13787         * configure.ac:
13788           hunting season on 0.9 is now OPEN