README: gst-register is gone.
[platform/upstream/gstreamer.git] / ChangeLog
1 2006-01-09  Tim-Philipp Müller  <tim at centricular dot net>
2
3         * README:
4           gst-register is gone.
5
6 2006-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7
8         * gst/gstvalue.c: (_gst_value_initialize):
9           make the G_TYPE_DATE instantiation work if debug is disabled
10
11 2006-01-06  Tim-Philipp Müller  <tim at centricular dot net>
12
13         * gst/gstmessage.c: (gst_message_parse_tag),
14         (gst_message_parse_error), (gst_message_parse_warning):
15           Don't crash when return location for error/warning debug
16           string is NULL; add fact that return locations can be
17           NULL to docs where appropriate.
18
19 2006-01-05  Wim Taymans  <wim@fluendo.com>
20
21         * gst/gstplugin.c: (gst_plugin_load_file):
22         Replace strdup by g_strdup.
23
24 2006-01-05  Thomas Vander Stichele  <thomas at apestaart dot org>
25
26         * docs/pwg/advanced-types.xml:
27           fix doc borkage
28
29 2006-01-05  Thomas Vander Stichele  <thomas at apestaart dot org>
30
31         submitted by: Abel Cheung
32
33         * po/LINGUAS:
34         * po/zh_TW.po:
35           Added Chinese (traditional) translation
36
37 2006-01-04  Wim Taymans  <wim@fluendo.com>
38
39         * docs/manual/basics-pads.xml:
40         * docs/plugins/Makefile.am:
41         * docs/plugins/gstreamer-plugins-docs.sgml:
42         * docs/plugins/gstreamer-plugins-sections.txt:
43         * docs/pwg/advanced-clock.xml:
44         * docs/pwg/advanced-scheduling.xml:
45         * docs/pwg/advanced-types.xml:
46         * plugins/elements/gstfdsink.c:
47         * plugins/elements/gstfdsrc.c:
48         * plugins/elements/gstfdsrc.h:
49         * plugins/elements/gstidentity.c: (gst_identity_class_init):
50         * plugins/elements/gstidentity.h:
51         * plugins/elements/gstqueue.h:
52         * plugins/elements/gsttee.c:
53         * plugins/elements/gsttee.h:
54         * plugins/elements/gsttypefindelement.c:
55         (gst_type_find_element_class_init):
56         * plugins/elements/gsttypefindelement.h:
57         Small updates to various docs.
58         Added core plugins to docs.
59
60 2006-01-03  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
61
62         * common/gst.supp:
63           add a suppression for liboil's uninitialized variable
64
65 2006-01-02  James Livingston  <jrl at ids dot org dot au>
66
67         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
68
69         * gst/gstutils.h:
70           Add prototype for _get_type() function to GST_BOILERPLATE_FULL
71           macro, so that gcc doesn't complain if the -Wmissing-prototypes
72           compiler switch is being used (#325429).
73
74 >>>>>>> 1.2159
75 2005-12-29  Tim-Philipp Müller  <tim at centricular dot net>
76
77         * gst/gstbin.c: (gst_bin_query):
78           Disable duration query caching in bins until it gets
79           fixed (see #324807).
80
81 2005-12-27  Tim-Philipp Müller  <tim at centricular dot net>
82
83         * tools/gst-inspect.c: (print_element_properties_info):
84           Handle properties of POINTER and BOXED type.
85
86 2005-12-27  Tim-Philipp Müller  <tim at centricular dot net>
87
88         * gst/gst.c: (init_post):
89           Init tags stuff and some other things before loading
90           any static plugins (there may be other static plugins
91           than just the GStreamer ones, and they may want to
92           register their own tags or formats or whatever, and
93           preferably without segfaulting).
94
95         * plugins/elements/gstqueue.c: (gst_queue_handle_src_query):
96           Print at least a warning in the debug logs if we drop a
97           query just because we don't know how to adjust the value
98           in the particular format.
99
100 2005-12-24  David Schleef  <ds@schleef.org>
101
102         * tools/gstreamer-completion:
103           Replacement for gst-complete written in sh and sed.  Only
104           completes names of features, but that's 90% of what I want
105           it for.  Properties are not available in registry.xml.  (Maybe
106           they should be...)
107
108 === release 0.10.1 ===
109
110 2005-12-23  Thomas Vander Stichele <thomas at apestaart dot org>
111
112         * configure.ac:
113           releasing 0.10.1, "Nollaig chridheil"
114
115 2005-12-22  Tim-Philipp Müller  <tim at centricular dot net>
116
117         * docs/faq/cvs.xml:
118           Add missing quote, should be make ERROR_CFLAGS="".
119
120 2005-12-20  Wim Taymans  <wim@fluendo.com>
121
122         * docs/design/part-trickmodes.txt:
123         More documentation on trickmodes.
124
125 2005-12-20  Edward Hervey  <edward@fluendo.com>
126
127         * gst/gstcaps.c: (gst_static_caps_get_type):
128         * gst/gstcaps.h:
129           API addition: GST_TYPE_STATIC_CAPS
130         Added gpointer GType for GstStaticCaps so we can wrap them in bindings.
131         * gst/gstpadtemplate.c: (gst_static_pad_template_get_type):
132         * gst/gstpadtemplate.h:
133           API addition: GST_TYPE_STATIC_PAD_TEMPLATE
134         Added gpointer GType for GstStaticPadTemplate so we can wrap them in
135         bindings.
136
137 2005-12-18  Wim Taymans  <wim@fluendo.com>
138
139         * libs/gst/base/gstadapter.c:
140         * libs/gst/base/gstadapter.h:
141         * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
142         (gst_base_sink_get_position):
143         * libs/gst/base/gstbasesink.h:
144         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
145         (gst_base_src_default_query), (gst_base_src_default_do_seek),
146         (gst_base_src_do_seek), (gst_base_src_perform_seek),
147         (gst_base_src_send_event), (gst_base_src_update_length),
148         (gst_base_src_get_range), (gst_base_src_loop),
149         (gst_base_src_start):
150         * libs/gst/base/gstbasesrc.h:
151         * libs/gst/base/gstbasetransform.h:
152         * libs/gst/base/gstcollectpads.h:
153         * libs/gst/base/gstpushsrc.c:
154         * libs/gst/base/gstpushsrc.h:
155         * libs/gst/dataprotocol/dataprotocol.c:
156         * libs/gst/dataprotocol/dataprotocol.h:
157         * libs/gst/net/gstnetclientclock.h:
158         * libs/gst/net/gstnettimeprovider.h:
159         Documentation updates.
160
161 2005-12-18  Tim-Philipp Müller  <tim at centricular dot net>
162
163         * docs/manual/basics-helloworld.xml:
164           Remove superfluous closing bracket in helloworld example.
165
166 2005-12-17  Tim-Philipp Müller  <tim at centricular dot net>
167
168         * tools/gst-launch.1.in:
169           Update gst-launch man page; add a section with useful
170           environment variables. Fixes #323882.
171
172 2005-12-16  Stefan Kost  <ensonic@users.sf.net>
173
174         * gst/gst.c:
175         * gst/gst_private.h:
176           change some char* into char[]
177
178 2005-12-16  Wim Taymans  <wim@fluendo.com>
179
180         * gst/gstregistryxml.c: (load_feature):
181         Cleanups.
182         Don't use g_object_unref on GstObjects so that we avoid
183         leaks on unsafe glibs.
184
185 2005-12-16  Wim Taymans  <wim@fluendo.com>
186
187         * gst/gstbin.c: (gst_bin_recalc_state):
188         Small doc updates.
189
190 2005-12-16  Wim Taymans  <wim@fluendo.com>
191
192         * common/check.mak:
193         Added make forever target for check.
194
195 2005-12-16  Thomas Vander Stichele  <thomas at apestaart dot org>
196
197         * gst/gst.c: (init_post):
198           make the registry cache file HOST_CPU-dependent
199
200 2005-12-16  Andy Wingo  <wingo@pobox.com>
201
202         * plugins/elements/gstbufferstore.c
203         (gst_buffer_store_cleared_func): Pay attention to g_list_append
204         return value.
205
206         * tests/check/gst/gstobject.c
207         (test_fake_object_name_threaded_unique): Pay attention to
208         g_list_sort return value.
209
210 2005-12-16  Tim-Philipp Müller  <tim at centricular dot net>
211
212         * tools/gst-feedback-m.m:
213           Update for 0.9/0.10 (fixes #323870).
214
215 2005-12-15  Tim-Philipp Müller  <tim at centricular dot net>
216
217         * gst/gstminiobject.c: (gst_value_mini_object_lcopy):
218           Fix lcopy for mini objects, the mini object needs to be ref'ed.
219           
220         * tests/check/gst/gstminiobject.c: (my_foo_init),
221         (my_foo_get_property), (my_foo_set_property), (my_foo_class_init),
222         (test_value_collection), (gst_mini_object_suite):
223           Add test to ensure refcounts end up as expected when passing
224           GstMiniObjects through g_object_get() and g_object_set().
225
226 2005-12-14  Julien MOUTTE  <julien@moutte.net>
227
228         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
229         (gst_collect_pads_remove_pad), (gst_collect_pads_is_collected),
230         (gst_collect_pads_event), (gst_collect_pads_chain): Refactoring
231         of collectpads. This version removes a lot of races without
232         touching API/ABI. Yay !
233
234 2005-12-14  Jan Schmidt  <thaytan@mad.scientist.com>
235
236         * gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_link_prepare):
237           Don't allow activation of a srcpad in pull_range if it has no
238           getrange function.
239           Change some debug statements to be a little clearer
240
241         * plugins/elements/gsttypefindelement.c:
242         (gst_type_find_handle_src_query):
243           Check that we have a peer before executing queries thereupon.
244
245         * tests/examples/metadata/read-metadata.c: (message_loop):
246           Use gst_bus_pop instead of gst_bus_poll when we just want it to
247           immediately return us any available message with 0 timeout.
248
249 2005-12-12  Michael Smith  <msmith@fluendo.com>
250
251         * gst/gsttypefindfactory.c: (gst_type_find_factory_call_function):
252           Don't unref factories after calling them.
253         * libs/gst/base/gsttypefindhelper.c: (gst_type_find_helper):
254         * plugins/elements/gsttypefindelement.c:
255         (gst_type_find_element_chain):
256           Free lists of factories after using them. Fixing typefinding memory
257           leaks.
258
259 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
260
261         * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
262         (gst_plugin_feature_load):
263           more meaningful debug output
264         * configure.ac:
265         * tests/Makefile.am:
266         * tests/old/examples/Makefile.am:
267           make make distcheck happy again
268
269 2005-12-12  Tim-Philipp Müller  <tim at centricular dot net>
270
271         * plugins/elements/gsttypefindelement.c: (stop_typefinding):
272           Catch the special case where we are operating chain-based,
273           but the downstream peer pad has no chain function. Emit a
274           custom error message in this case instead of letting the
275           core generate one implying that this is some sort of core
276           bug. It's not, it just means that whatever got plugged
277           into the pipeline downstream when we announced the type
278           can only operate pull-based, while our source can only
279           operate push-based (e.g. http://foo/bar.mov ! qtdemux ! ...)
280           Error string has not been marked for translation yet, as
281           it probably needs some more work first.
282
283         (gst_type_find_element_get_best_possibility):
284           Add helper function to find the best of all available
285           found possibilities that qualify given the min. threshold.
286
287         (gst_type_find_element_handle_event):
288           Fix the case where we get an EOS while still in TYPEFIND
289           mode (we want to chose the best of all possible types,
290           not just the first type that happens to be in our unsorted
291           list of possible types).
292
293         (gst_type_find_element_chain):
294           Make sure we return GST_FLOW_ERROR when we errored out
295           in stop_typefinding(); also, don't just find the best of
296           all found type entries and then use the last examined
297           type entry, but actually use the best entry.
298
299 2005-12-12  Tim-Philipp Müller  <tim at centricular dot net>
300
301         * tests/examples/typefind/typefind.c: (type_found):
302         * tests/examples/xml/runxml.c: (xml_loaded):
303           More gcc4 fixes and a mem leak fix.
304
305 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
306
307         * tests/examples/xml/createxml.c: (object_saved):
308           gcc 4 fixes
309
310 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
311
312         * tests/Makefile.am:
313           enable the examples even more
314
315 2005-12-12  Andy Wingo  <wingo@pobox.com>
316
317         * libs/gst/net/gstnettimeprovider.c
318         (gst_net_time_provider_class_init, gst_net_time_provider_init)
319         (gst_net_time_provider_set_property)
320         (gst_net_time_provider_get_property):
321         API addition: Export "active" as a GObject property.
322         (gst_net_time_provider_thread): Only respond to time queries if
323         the time provider is active.
324
325         * libs/gst/net/gstnettimeprovider.h: Add an "active" boolean to
326         NetTimeProvider, preserving binary compat.
327
328 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
329
330         * tests/examples/controller/audio-example.c: (main):
331         * tests/examples/launch/Makefile.am:
332           convert comments again
333
334 2005-12-12  Wim Taymans  <wim@fluendo.com>
335
336         * libs/gst/base/gstpushsrc.c:
337         Fix typo.
338
339 2005-12-12  Wim Taymans  <wim@fluendo.com>
340
341         * docs/libs/gstreamer-libs-sections.txt:
342         Added new symbol to docs.
343
344         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
345         (gst_base_src_init), (gst_base_src_set_format),
346         (gst_base_src_default_query), (gst_base_src_query),
347         (gst_base_src_default_do_seek), (gst_base_src_do_seek),
348         (gst_base_src_perform_seek), (gst_base_src_send_event),
349         (gst_base_src_default_event), (gst_base_src_event_handler),
350         (gst_base_src_set_property), (gst_base_src_get_property),
351         (gst_base_src_wait), (gst_base_src_do_sync),
352         (gst_base_src_update_length), (gst_base_src_get_range),
353         (gst_base_src_check_get_range), (gst_base_src_loop),
354         (gst_base_src_default_negotiate), (gst_base_src_start),
355         (gst_base_src_activate_push), (gst_base_src_activate_pull),
356         (gst_base_src_change_state):
357         * libs/gst/base/gstbasesrc.h:
358         Implement seeking to other formats than _BYTES.
359         Implement more seeking methods correctly.
360         Doc updates.
361         Added query vmethod.
362         Added do_seek vmethod to make life easier for subclasses
363         when seeking.
364         API addition: gst_base_src_set_format()
365
366 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
367
368         * tests/examples/Makefile.am:
369           added that too
370
371 2005-12-12  Stefan Kost  <ensonic@users.sf.net>
372
373         * configure.ac:
374         * docs/random/ensonic/media-device-daemon.txt:
375         * tests/examples/controller/.cvsignore:
376         * tests/examples/controller/Makefile.am:
377         * tests/examples/controller/audio-example.c: (main):
378         * tests/examples/helloworld/.cvsignore:
379         * tests/examples/helloworld/Makefile.am:
380         * tests/examples/helloworld/helloworld.c: (event_loop), (main):
381         * tests/examples/launch/.cvsignore:
382         * tests/examples/launch/Makefile.am:
383         * tests/examples/launch/mp3parselaunch.c: (event_loop), (main):
384         * tests/examples/metadata/.cvsignore:
385         * tests/examples/metadata/Makefile.am:
386         * tests/examples/metadata/read-metadata.c: (message_loop),
387         (make_pipeline), (print_tag), (main):
388         * tests/examples/queue/.cvsignore:
389         * tests/examples/queue/Makefile.am:
390         * tests/examples/queue/queue.c: (event_loop), (main):
391         * tests/examples/typefind/.cvsignore:
392         * tests/examples/typefind/Makefile.am:
393         * tests/examples/typefind/typefind.c: (type_found), (event_loop),
394         (main):
395         * tests/examples/xml/.cvsignore:
396         * tests/examples/xml/Makefile.am:
397         * tests/examples/xml/createxml.c: (object_saved), (main):
398         * tests/examples/xml/runxml.c: (xml_loaded), (event_loop), (main):
399         * tests/old/examples/Makefile.am:
400         * tests/old/examples/TODO:
401         * tests/old/examples/controller/.cvsignore:
402         * tests/old/examples/controller/Makefile.am:
403         * tests/old/examples/controller/audio-example.c:
404         * tests/old/examples/helloworld/.cvsignore:
405         * tests/old/examples/helloworld/Makefile.am:
406         * tests/old/examples/helloworld/helloworld.c:
407         * tests/old/examples/launch/.cvsignore:
408         * tests/old/examples/launch/Makefile.am:
409         * tests/old/examples/launch/mp3parselaunch.c:
410         * tests/old/examples/launch/mp3play:
411         * tests/old/examples/manual/Makefile.am:
412         * tests/old/examples/metadata/Makefile.am:
413         * tests/old/examples/metadata/read-metadata.c:
414         * tests/old/examples/queue/.cvsignore:
415         * tests/old/examples/queue/Makefile.am:
416         * tests/old/examples/queue/queue.c:
417         * tests/old/examples/typefind/.cvsignore:
418         * tests/old/examples/typefind/Makefile.am:
419         * tests/old/examples/typefind/typefind.c:
420         * tests/old/examples/xml/.cvsignore:
421         * tests/old/examples/xml/Makefile.am:
422         * tests/old/examples/xml/createxml.c:
423         * tests/old/examples/xml/runxml.c:
424           applied some simple fixing to some examples
425           re-enabled the working examples
426
427 2005-12-12  Wim Taymans  <wim@fluendo.com>
428
429         * gst/gstsegment.c: (gst_segment_init),
430         (gst_segment_set_last_stop), (gst_segment_set_seek),
431         (gst_segment_set_newsegment), (gst_segment_to_stream_time),
432         (gst_segment_to_running_time):
433         Added more documentation.
434         Make sure the last_pos value is updated properly.
435         Make sure to_stream_time and to_running_time don't
436         operate on wrong values.
437
438         * tests/check/gst/gstsegment.c: (GST_START_TEST):
439         Update check.
440
441 2005-12-12  Michael Smith  <msmith@fluendo.com>
442
443         * plugins/elements/gsttypefindelement.c: (free_entry),
444         (gst_type_find_element_chain):
445           Now that we're not leaking factories, make sure we keep references
446           to them while we need them.
447
448 2005-12-12  Thomas Vander Stichele  <thomas at apestaart dot org>
449
450         * tests/check/gst/struct_i386.h:
451           ifdef out the XML structs
452
453 2005-12-12  Thomas Vander Stichele  <thomas at apestaart dot org>
454
455         * gst/gstvalue.c: (gst_value_transform_double_fraction):
456           floor is not needed, F is always positive; this obviates the
457           need for adding -lm when building without libxml
458
459 2005-12-12  Wim Taymans  <wim@fluendo.com>
460
461         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
462         Take current playback rate into account when reporting
463         the position.
464
465 2005-12-11  Tim-Philipp Müller  <tim at centricular dot net>
466
467         * docs/manual/mime-world.fig:
468           Let's try this again, this time with a file that is
469           actually in XFig format.
470
471 2005-12-11  Tim-Philipp Müller  <tim at centricular dot net>
472
473         * docs/manual/mime-world.fig:
474           Add audioconvert element to diagram so that it
475           matches the text and the code (fixes #319526).
476
477 2005-12-11  Tim-Philipp Müller  <tim at centricular dot net>
478
479         * docs/pwg/building-chainfn.xml:
480         * docs/pwg/building-pads.xml:
481         * docs/pwg/building-state.xml:
482         * docs/pwg/other-source.xml:
483           Update state change stuff for 0.10 (fixes #322969).
484
485 2005-12-11  Tim-Philipp Müller  <tim at centricular dot net>
486
487         * docs/manual/advanced-dataaccess.xml:
488         * docs/manual/appendix-checklist.xml:
489         * docs/manual/appendix-programs.xml:
490         * docs/manual/basics-pads.xml:
491         * docs/manual/highlevel-components.xml:
492         * docs/manual/manual.xml:
493           Update for 0.10: s/0.9/0.10/; s/audioscale/audiorsample/;
494           add converters in front of pipelines; remove curly
495           brackets for threads stuff, they no longer exist; use
496           GST_TYPE_FRACTION for framerates; update some pieces of
497           code to 0.10, but there's plenty more to do.
498
499         * docs/manual/appendix-porting.xml:
500           Expand on asynchroneous state changes; s/0.9/0.10/;
501           mention disappearance of gst_init_get_popt_table()
502           (fixes #322916).
503
504 2005-12-11  Tim-Philipp Müller  <tim at centricular dot net>
505
506         * docs/faq/using.xml:
507           Spider no longer exists, and neither does gst-launch-ext.
508           Update examples to use decodebin and playbin and put
509           converters in front of sinks (fixes #323726).
510
511 2005-12-09  Michael Smith  <msmith@fluendo.com>
512
513         * plugins/elements/gsttypefindelement.c: (find_peek),
514         (gst_type_find_element_chain):
515           Fix leaking element factories in typefinding.
516           Fix problem where we forgot about a probable type on non-seekable
517           files, and thus later mis-typefound it.
518
519 2005-12-09  Michael Smith  <msmith@fluendo.com>
520
521         * common/m4/gst-makecontext.m4:
522         * common/m4/gst-mcsc.m4:
523         * configure.ac:
524         * win32/common/config.h:
525         * win32/common/config.h.in:
526           Remove makecontext stuff; not used in 0.10 and causes problems on
527           HPUX according to bug #322441
528
529 2005-12-07  Wim Taymans  <wim@fluendo.com>
530
531         * tests/check/Makefile.am:
532         * tests/check/libs/libsabi.c: (GST_START_TEST), (gstabi_suite),
533         (main):
534         * tests/check/libs/struct_i386.h:
535         Added ABI check for libs
536
537 2005-12-07  Wim Taymans  <wim@fluendo.com>
538
539         * tests/check/Makefile.am:
540         And add the struct_i386.h to dist.
541
542 2005-12-07  Wim Taymans  <wim@fluendo.com>
543
544         * tests/check/Makefile.am:
545         * tests/check/gst/.cvsignore:
546         * tests/check/gst/gstabi.c: (GST_START_TEST), (gstabi_suite),
547         (main):
548         * tests/check/gst/struct_i386.h:
549         Added check for ABI compatibility.
550
551 2005-12-07  Wim Taymans  <wim@fluendo.com>
552
553         * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
554         (gst_fake_src_get_times), (gst_fake_src_create):
555         Fix broken sync option, fixes #323259
556
557 2005-12-07  Wim Taymans  <wim@fluendo.com>
558
559         * gst/gstbuffer.c:
560         Small docs update.
561
562         * gst/gstcaps.c: (gst_caps_is_equal):
563         Don't assert on NULL <--> X. Fixes #323260
564
565         * gst/gstminiobject.c: (gst_mini_object_replace):
566         If we're doing atomic operations, we might just as well use
567         the proper way to get an atomic pointer.
568
569         * libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
570         Clean up debugging.
571
572 2005-12-07  Michael Smith  <msmith@fluendo.com>
573
574         * gst/parse/grammar.y:
575           Remove handling of { } for threads.
576
577 2005-12-06  David Schleef  <ds@schleef.org>
578
579         * libs/gst/base/gstbasetransform.c: speling fix.
580
581 2005-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
582
583         * docs/libs/tmpl/gstdataprotocol.sgml:
584         * docs/random/omega/testing/gstobject.c:
585         * gst/gst.c:
586         * gst/gstclock.c:
587         * gst/gstelement.c:
588         * gst/gstelementfactory.c:
589         * gst/gsterror.c:
590         * gst/gstevent.c:
591         * gst/gstghostpad.c:
592         * gst/gstinfo.c:
593         * gst/gstpadtemplate.c:
594         * gst/gstregistryxml.c:
595         * gst/gsttaglist.c:
596         * gst/gsttagsetter.c:
597         * gst/gsttypefind.c:
598         * gst/gstvalue.c:
599         * libs/gst/base/gstbasesrc.c:
600         * libs/gst/net/gstnetclientclock.c:
601         * libs/gst/net/gstnettimeprovider.c:
602         * plugins/elements/gstfakesrc.c:
603         * plugins/elements/gstfdsrc.c:
604         * plugins/elements/gstfilesrc.c:
605         * plugins/elements/gstidentity.c:
606         * plugins/elements/gstqueue.c:
607         * plugins/elements/gsttypefindelement.c:
608         * plugins/indexers/gstfileindex.c:
609         * plugins/indexers/gstmemindex.c:
610         * tests/check/gst/gsttag.c:
611         * tests/old/examples/cutter/cutter.c:
612         * tests/old/examples/mixer/mixer.c:
613         * tests/old/examples/xml/runxml.c: (main):
614         * tests/old/testsuite/caps/normalisation.c:
615         * tests/old/testsuite/debug/global.c:
616         * tests/old/testsuite/parse/parse1.c:
617         * tools/gst-xmlinspect.c:
618         * win32/common/dirent.c:
619           expand tabs
620
621 === release 0.10.0 ===
622
623 2005-12-05   <thomas (at) apestaart (dot) org>
624
625         * configure.ac:
626           releasing 0.10.0, "Maroilles"
627
628 2005-12-05  Thomas Vander Stichele  <thomas at apestaart dot org>
629
630         submitted by: Funda Wang <fundawang@linux.net.cn>
631
632         * po/LINGUAS:
633         * po/zh_CN.po:
634           added Chinese (Traditional) translation
635
636 2005-12-05  Thomas Vander Stichele  <thomas at apestaart dot org>
637
638         * docs/gst/gstreamer-sections.txt:
639         * docs/libs/tmpl/gstdataprotocol.sgml:
640         * docs/random/thomasvs/TODO:
641         * gst/gstutils.c:
642         * gst/gstutils.h:
643           fix docs
644
645 2005-12-05  Andy Wingo  <wingo@pobox.com>
646
647         patch by: Wim Taymans <wim@fluendo.com>
648
649         * libs/gst/base/gstbasetransform.c
650         (gst_base_transform_prepare_output_buf)
651         (gst_base_transform_buffer_alloc):
652         * plugins/elements/gstqueue.c (gst_queue_bufferalloc): Call
653         alloc_buffer_and_set_caps.
654
655         * gst/gstpad.c (gst_pad_alloc_buffer): Changed to not call
656         set_caps on the source pad.
657         (gst_pad_alloc_buffer_and_set_caps): New function, does what
658         alloc_buffer used to do. Fixes #322874.
659
660         * docs/gst/gstreamer-sections.txt: 
661         * docs/design/part-negotiation.txt: 
662         * docs/pwg/advanced-negotiation.xml: Update for the alloc_buffer
663         changes.
664
665 2005-12-05  Thomas Vander Stichele  <thomas at apestaart dot org>
666
667         patch by: Sebastien Moutte
668
669         * win32/MANIFEST:
670         * win32/common/config.h.in:
671         * win32/vs6/libgstcontroller.dsp:
672           win32 build fixes
673
674 2005-12-05  Wim Taymans  <wim@fluendo.com>
675
676         * gst/gstcaps.c: (gst_caps_is_equal):
677         * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
678         (gst_fake_src_create):
679         Back out previous code changes, leave doc updates, file bugs 
680         instead. 
681
682 2005-12-05  Wim Taymans  <wim@fluendo.com>
683
684         * plugins/elements/gstfakesrc.c: (gst_fake_src_class_init),
685         (gst_fake_src_get_times), (gst_fake_src_create):
686         * plugins/elements/gstfakesrc.h:
687         Fix broken sync code.
688
689 2005-12-05  Wim Taymans  <wim@fluendo.com>
690
691         * gst/gstcaps.c: (gst_caps_is_equal):
692         Comparing NULL against !NULL yields different caps, not a
693         failure.
694
695 2005-12-05  Wim Taymans  <wim@fluendo.com>
696
697         * gst/gstpipeline.c:
698         Fix small typo in docs.
699
700 2005-12-05  Andy Wingo  <wingo@pobox.com>
701
702         patch by: Thomas Vander Stichele  <thomas at apestaart dot org>
703
704         * gst/gst.c (init_post): remove hard-coded 0.9 location for
705         registries/plugins with a MAJORMINOR one.
706         (plugin_desc): Rename library from gstcoreleements to
707         staticelements. Fixes #323222.
708
709 2005-12-05  Tim-Philipp Müller  <tim at centricular dot net>
710
711         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_base_init):
712           Change debug category to 'collectpads' from 'collect_pads'
713           (fixes #323250).
714
715 2005-12-04  Thomas Vander Stichele  <thomas at apestaart dot org>
716
717         patch by: Sebastien Moutte
718
719         * libs/gst/controller/gstinterpolation.c:
720           use convert function for uint64/double
721         * win32/vs6/libgstcontroller.dsp:
722           link to GLib
723
724 2005-12-04  Thomas Vander Stichele  <thomas at apestaart dot org>
725
726         * gst/gstutils.c: (gst_util_guint64_to_gdouble),
727         (gst_util_gdouble_to_guint64), (gst_util_uint64_scale_int64):
728         * gst/gstutils.h:
729         * tests/check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
730           add tests that seem to show that the guint64/gdouble conversions
731           are correct.
732
733 2005-12-02  Wim Taymans  <wim@fluendo.com>
734
735         * gst/gstregistry.c: (gst_registry_add_path):
736         * gst/gstregistry.h:
737         * gst/gstregistryxml.c:
738         Fix docs again.
739
740 2005-12-02  Wim Taymans  <wim@fluendo.com>
741
742         * gst/gstutils.c: (gst_util_uint64_scale_int64),
743         (gst_util_uint64_scale_int):
744         Small cleanup.
745
746         * libs/gst/base/gstbasesink.c: (gst_base_sink_handle_object):
747         Add debug log line.
748
749         * libs/gst/base/gstbasetransform.c: (gst_base_transform_event):
750         Add FIXME.
751
752 2005-12-02  Thomas Vander Stichele  <thomas at apestaart dot org>
753
754         * win32/MANIFEST:
755         * win32/common/config.h:
756         * win32/vs6/gstreamer.dsw:
757         * win32/vs6/libgstcoreelements.dsp:
758         * win32/vs6/libgstelements.dsp:
759           renamed core elements plugin
760
761 2005-12-02  Thomas Vander Stichele  <thomas at apestaart dot org>
762
763         * tools/gst-run.c: (compare_major_minor), (find_highest_version),
764         (get_candidates):
765           do piece-wise major/minor comparison so 0.9 < 0.10
766           also allow .exe extensions for tools
767
768 2005-12-02  Michael Smith  <msmith@fluendo.com>
769
770         * gst/gst.c:
771           Escape a % to make gtkdoc happier; bug 322958.
772
773 === release 0.9.7 ===
774
775 2005-12-01   <thomas (at) apestaart (dot) org>
776
777         * configure.ac:
778           releasing 0.9.7, "My Dog Has No Nose"
779
780 2005-12-01  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
781
782         * common/gst-xmlinspect.py:
783         * configure.ac:
784         * docs/libs/tmpl/gstdataprotocol.sgml:
785         * docs/random/release:
786         * po/af.po:
787         * po/az.po:
788         * po/bg.po:
789         * po/ca.po:
790         * po/cs.po:
791         * po/de.po:
792         * po/en_GB.po:
793         * po/fr.po:
794         * po/it.po:
795         * po/nb.po:
796         * po/nl.po:
797         * po/ru.po:
798         * po/sq.po:
799         * po/sr.po:
800         * po/sv.po:
801         * po/tr.po:
802         * po/uk.po:
803         * po/vi.po:
804         * win32/common/config.h:
805         * win32/common/config.h.in:
806         * win32/vs6/gst_inspect.dsp:
807         * win32/vs6/gst_launch.dsp:
808         * win32/vs6/libgstbase.dsp:
809         * win32/vs6/libgstelements.dsp:
810         * win32/vs6/libgstreamer.dsp:
811         * win32/vs7/GStreamer.vcproj:
812         * win32/vs7/gst-inspect.vcproj:
813         * win32/vs7/gst-launch.vcproj:
814         * win32/vs7/libgstbase.vcproj:
815           bump GST_MAJORMINOR to 0.10
816           reset libtool version
817
818 2005-12-01  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
819
820         * po/LINGUAS:
821         * po/bg.po:
822           Added Bulgarian translation by (Alexander Shopov)
823
824 2005-12-01  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
825
826         * tests/check/gst/gstplugin.c:
827           fix test
828
829 2005-12-01  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
830
831         * common/gst-xmlinspect.py:
832         * common/gtk-doc-plugins.mak:
833         * configure.ac:
834         * docs/Makefile.am:
835         * docs/gst/Makefile.am:
836         * docs/gst/gstreamer-docs.sgml:
837         * docs/gst/gstreamer-sections.txt:
838         * docs/gst/gstreamer.types:
839         * docs/gst/gstreamer.types.in:
840         * docs/plugins/Makefile.am:
841         * docs/plugins/gstreamer-plugins-docs.sgml:
842         * docs/plugins/gstreamer-plugins-sections.txt:
843         * docs/plugins/gstreamer-plugins.types:
844         * docs/plugins/inspect.stamp:
845         * docs/plugins/inspect/plugin-coreelements.xml:
846         * docs/plugins/inspect/plugin-coreindexers.xml:
847         * docs/plugins/scanobj-build.stamp:
848         * gstreamer.spec.in:
849         * plugins/elements/Makefile.am:
850         * plugins/elements/gstelements.c:
851         * plugins/elements/gstfakesink.c:
852         * plugins/elements/gstfakesrc.c:
853         * plugins/elements/gstfilesink.c:
854         * plugins/elements/gstfilesrc.c:
855         * plugins/elements/gstqueue.c:
856         * plugins/indexers/Makefile.am:
857         * plugins/indexers/gstindexers.c:
858           document core plugins in a separate document just like all the
859           others
860           rename these plugins to something starting with core
861
862 2005-12-01  Andy Wingo  <wingo@pobox.com>
863
864         * gst/gstevent.h (struct _GstEvent): Meant to remove the extra
865         padding here before, but it missed the commit.
866
867 2005-12-01  Thomas Vander Stichele  <thomas at apestaart dot org>
868
869         * libs/gst/controller/gstinterpolation.c:
870           whitespace prices have crashed, we should feel free to use some now
871           use gst_guint64_to_gdouble
872
873 2005-12-01  Thomas Vander Stichele  <thomas at apestaart dot org>
874
875         * libs/gst/controller/gstcontroller.c:
876         * libs/gst/controller/gsthelper.c:
877         * libs/gst/controller/gstinterpolation.c:
878         * libs/gst/controller/lib.c:
879           wrap config.h include
880
881 2005-12-01  Thomas Vander Stichele  <thomas at apestaart dot org>
882
883         * docs/gst/gstreamer-sections.txt:
884           update docs
885
886 2005-12-01  Thomas Vander Stichele  <thomas at apestaart dot org>
887
888         * plugins/elements/gstelements.c:
889         * plugins/elements/gstfdsink.c: (gst_fd_sink__base_init),
890         (gst_fd_sink__class_init), (gst_fd_sink__init),
891         (gst_fd_sink__chain), (gst_fd_sink__set_property),
892         (gst_fd_sink__get_property):
893         * plugins/elements/gstfdsink.h:
894         * plugins/elements/gstfdsrc.c: (_do_init), (gst_fd_src_base_init),
895         (gst_fd_src_class_init), (gst_fd_src_init), (gst_fd_src_dispose),
896         (gst_fd_src_update_fd), (gst_fd_src_start), (gst_fd_src_stop),
897         (gst_fd_src_unlock), (gst_fd_src_set_property),
898         (gst_fd_src_get_property), (gst_fd_src_create),
899         (gst_fd_src_is_seekable), (gst_fd_src_get_size),
900         (gst_fd_src_uri_get_type), (gst_fd_src_uri_get_protocols),
901         (gst_fd_src_uri_get_uri), (gst_fd_src_uri_set_uri),
902         (gst_fd_src_uri_handler_init):
903         * plugins/elements/gstfdsrc.h:
904         * plugins/elements/gstqueue.c: (gst_queue_get_type):
905           more anal cleanup
906
907 2005-11-30  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
908
909         * docs/gst/Makefile.am:
910         * docs/gst/gstreamer.types.in:
911         * gst/Makefile.am:
912           fix the docs build
913
914 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
915
916         * configure.ac:
917         * gst/Makefile.am:
918         * gst/gst.c:
919         * gst/gstplugin.h:
920         * gst/gstregistry.h:
921         * tests/benchmarks/complexity.c:
922         * tests/benchmarks/mass-elements.c:
923         * tests/check/Makefile.am:
924         * tools/Makefile.am:
925         * tools/gst-inspect.c:
926         * tools/gst-xmlinspect.c:
927           various fixes to make
928           --disable-nls --disable-registry --disable-loadsave
929           --disable-parse --disable-gst-debug
930           work and get the core .so down to 360444 bytes after stripping
931
932 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
933
934         * Makefile.am:
935         * configure.ac:
936           descend into tests
937         * docs/random/thomasvs/TODO:
938         * tests/Makefile.am:
939         * tests/README:
940           add a README
941
942 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
943
944         * win32/GStreamer.vcproj:
945         * win32/MANIFEST:
946         * win32/Makefile:
947         * win32/Makefile.inspect:
948         * win32/Makefile.launch:
949         * win32/Makefile.register:
950         * win32/README.txt:
951         * win32/gst-inspect.vcproj:
952         * win32/gst-launch.vcproj:
953         * win32/gst-register.vcproj:
954         * win32/gstelements.vcproj:
955         * win32/gstgetbits.def:
956         * win32/gstgetbits.vcproj:
957         * win32/gstreamer-dbg.def:
958         * win32/gstreamer.def:
959         * win32/libgstbase.def:
960         * win32/libgstbase.vcproj:
961         * win32/link_oldruntime.c:
962         * win32/mman.c:
963         * win32/mman.h:
964         * win32/mman.inl:
965         * win32/msvc71.sln:
966           move even more stuff, win32/ is nice and clean now
967
968 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
969
970         * libs/gst/control/.cvsignore:
971         * win32/MANIFEST:
972         * win32/config.h:
973         * win32/dirent.c:
974         * win32/dirent.h:
975         * win32/gstbytestream.def:
976         * win32/gstbytestream.vcproj:
977         * win32/gstconfig.h:
978         * win32/gstenumtypes.c:
979         * win32/gstenumtypes.h:
980         * win32/gstoptimalscheduler.vcproj:
981         * win32/gstversion.h:
982         * win32/gtchar.h:
983         * win32/testsuite/bins.vcproj:
984         * win32/testsuite/bytestream.vcproj:
985         * win32/testsuite/caps.vcproj:
986         * win32/testsuite/cleanup.vcproj:
987         * win32/testsuite/clock.vcproj:
988         * win32/testsuite/debug.vcproj:
989         * win32/testsuite/dlopen.vcproj:
990         * win32/testsuite/dynparams.vcproj:
991         * win32/testsuite/elements.vcproj:
992         * win32/testsuite/ghostpads.vcproj:
993         * win32/testsuite/indexers.vcproj:
994         * win32/testsuite/negotiation.vcproj:
995         * win32/testsuite/parse.vcproj:
996         * win32/testsuite/plugin.vcproj:
997         * win32/testsuite/refcounting.vcproj:
998         * win32/testsuite/schedulers.vcproj:
999         * win32/testsuite/states.vcproj:
1000         * win32/testsuite/tags.vcproj:
1001         * win32/testsuite/threads.vcproj:
1002           remove old win32 stuff that isn't maintained and should be
1003           reorganized
1004
1005 2005-11-30  Andy Wingo  <wingo@pobox.com>
1006
1007         * configure.ac (GST_PKG_DEPS): Revert previous patch, makes
1008         loading the gst.interfaces python module bork.
1009
1010         * configure.ac (GST_PKG_DEPS): Use gmodule-no-export-2.0.pc,
1011         available since GLib 2.2. Fixes #318031.
1012
1013 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1014
1015         * Makefile.am:
1016         * check/.cvsignore:
1017         * check/Makefile.am:
1018         * check/elements/.cvsignore:
1019         * check/elements/fakesrc.c:
1020         * check/elements/fdsrc.c:
1021         * check/elements/identity.c:
1022         * check/generic/.cvsignore:
1023         * check/generic/states.c:
1024         * check/gst-libs/.cvsignore:
1025         * check/gst-libs/controller.c:
1026         * check/gst-libs/gdp.c:
1027         * check/gst/.cvsignore:
1028         * check/gst/capslist.h:
1029         * check/gst/gst.c:
1030         * check/gst/gstbin.c:
1031         * check/gst/gstbuffer.c:
1032         * check/gst/gstbus.c:
1033         * check/gst/gstcaps.c:
1034         * check/gst/gstelement.c:
1035         * check/gst/gstevent.c:
1036         * check/gst/gstghostpad.c:
1037         * check/gst/gstiterator.c:
1038         * check/gst/gstmessage.c:
1039         * check/gst/gstminiobject.c:
1040         * check/gst/gstobject.c:
1041         * check/gst/gstpad.c:
1042         * check/gst/gstpipeline.c:
1043         * check/gst/gstplugin.c:
1044         * check/gst/gstsegment.c:
1045         * check/gst/gststructure.c:
1046         * check/gst/gstsystemclock.c:
1047         * check/gst/gsttag.c:
1048         * check/gst/gstutils.c:
1049         * check/gst/gstvalue.c:
1050         * check/net/.cvsignore:
1051         * check/net/gstnetclientclock.c:
1052         * check/net/gstnettimeprovider.c:
1053         * check/pipelines/.cvsignore:
1054         * check/pipelines/cleanup.c:
1055         * check/pipelines/simple_launch_lines.c:
1056         * check/pipelines/stress.c:
1057         * check/states/.cvsignore:
1058         * check/states/sinks.c:
1059         * configure.ac:
1060         * examples/Makefile.am:
1061         * examples/appreader/.cvsignore:
1062         * examples/appreader/Makefile.am:
1063         * examples/appreader/appreader.c:
1064         * examples/controller/.cvsignore:
1065         * examples/controller/Makefile.am:
1066         * examples/controller/audio-example.c:
1067         * examples/cutter/.cvsignore:
1068         * examples/cutter/Makefile.am:
1069         * examples/cutter/cutter.c:
1070         * examples/cutter/cutter.h:
1071         * examples/events/Makefile.am:
1072         * examples/events/seek.c:
1073         * examples/helloworld/.cvsignore:
1074         * examples/helloworld/Makefile.am:
1075         * examples/helloworld/helloworld.c:
1076         * examples/helloworld2/.cvsignore:
1077         * examples/helloworld2/Makefile.am:
1078         * examples/helloworld2/helloworld2.c:
1079         * examples/launch/.cvsignore:
1080         * examples/launch/Makefile.am:
1081         * examples/launch/mp3parselaunch.c:
1082         * examples/launch/mp3play:
1083         * examples/manual/.cvsignore:
1084         * examples/manual/Makefile.am:
1085         * examples/manual/extract.pl:
1086         * examples/metadata/Makefile.am:
1087         * examples/metadata/read-metadata.c:
1088         * examples/mixer/.cvsignore:
1089         * examples/mixer/Makefile.am:
1090         * examples/mixer/mixer.c:
1091         * examples/mixer/mixer.h:
1092         * examples/pingpong/.cvsignore:
1093         * examples/pingpong/Makefile.am:
1094         * examples/pingpong/pingpong.c:
1095         * examples/plugins/.cvsignore:
1096         * examples/plugins/Makefile.am:
1097         * examples/plugins/example.c:
1098         * examples/plugins/example.h:
1099         * examples/pwg/.cvsignore:
1100         * examples/pwg/Makefile.am:
1101         * examples/pwg/extract.pl:
1102         * examples/queue/.cvsignore:
1103         * examples/queue/Makefile.am:
1104         * examples/queue/queue.c:
1105         * examples/queue2/.cvsignore:
1106         * examples/queue2/Makefile.am:
1107         * examples/queue2/queue2.c:
1108         * examples/queue3/.cvsignore:
1109         * examples/queue3/Makefile.am:
1110         * examples/queue3/queue3.c:
1111         * examples/queue4/.cvsignore:
1112         * examples/queue4/Makefile.am:
1113         * examples/queue4/queue4.c:
1114         * examples/retag/.cvsignore:
1115         * examples/retag/Makefile.am:
1116         * examples/retag/retag.c:
1117         * examples/retag/transcode.c:
1118         * examples/thread/.cvsignore:
1119         * examples/thread/Makefile.am:
1120         * examples/thread/thread.c:
1121         * examples/typefind/.cvsignore:
1122         * examples/typefind/Makefile.am:
1123         * examples/typefind/typefind.c:
1124         * examples/xml/.cvsignore:
1125         * examples/xml/Makefile.am:
1126         * examples/xml/createxml.c:
1127         * examples/xml/runxml.c:
1128         * tests/Makefile.am:
1129         * tests/check/Makefile.am:
1130         * testsuite/.cvsignore:
1131         * testsuite/Makefile.am:
1132         * testsuite/Rules:
1133         * testsuite/caps/.cvsignore:
1134         * testsuite/caps/Makefile.am:
1135         * testsuite/caps/app_fixate.c:
1136         * testsuite/caps/audioscale.c:
1137         * testsuite/caps/caps.c:
1138         * testsuite/caps/caps.h:
1139         * testsuite/caps/caps_strings:
1140         * testsuite/caps/compatibility.c:
1141         * testsuite/caps/deserialize.c:
1142         * testsuite/caps/enumcaps.c:
1143         * testsuite/caps/eratosthenes.c:
1144         * testsuite/caps/filtercaps.c:
1145         * testsuite/caps/fixed.c:
1146         * testsuite/caps/fraction-convert.c:
1147         * testsuite/caps/fraction-multiply-and-zero.c:
1148         * testsuite/caps/intersect2.c:
1149         * testsuite/caps/intersection.c:
1150         * testsuite/caps/normalisation.c:
1151         * testsuite/caps/random.c:
1152         * testsuite/caps/renegotiate.c:
1153         * testsuite/caps/sets.c:
1154         * testsuite/caps/simplify.c:
1155         * testsuite/caps/string-conversions.c:
1156         * testsuite/caps/structure.c:
1157         * testsuite/caps/subtract.c:
1158         * testsuite/caps/union.c:
1159         * testsuite/debug/.cvsignore:
1160         * testsuite/debug/Makefile.am:
1161         * testsuite/debug/category.c:
1162         * testsuite/debug/commandline.c:
1163         * testsuite/debug/global.c:
1164         * testsuite/debug/output.c:
1165         * testsuite/debug/printf_extension.c:
1166         * testsuite/dlopen/.cvsignore:
1167         * testsuite/dlopen/Makefile.am:
1168         * testsuite/dlopen/dlopen_gst.c:
1169         * testsuite/dlopen/loadgst.c:
1170         * testsuite/elements/.cvsignore:
1171         * testsuite/elements/Makefile.am:
1172         * testsuite/elements/gst-inspect-check.in:
1173         * testsuite/elements/struct_i386.h:
1174         * testsuite/elements/struct_size.c:
1175         * testsuite/indexers/.cvsignore:
1176         * testsuite/indexers/Makefile.am:
1177         * testsuite/indexers/cache1.c:
1178         * testsuite/indexers/indexdump.c:
1179         * testsuite/parse/.cvsignore:
1180         * testsuite/parse/Makefile.am:
1181         * testsuite/parse/parse1.c:
1182         * testsuite/parse/parse2.c:
1183         * testsuite/plugin/.cvsignore:
1184         * testsuite/plugin/Makefile.am:
1185         * testsuite/plugin/README:
1186         * testsuite/plugin/dynamic.c:
1187         * testsuite/plugin/linked.c:
1188         * testsuite/plugin/loading.c:
1189         * testsuite/plugin/registry.c:
1190         * testsuite/plugin/static.c:
1191         * testsuite/plugin/static2.c:
1192         * testsuite/plugin/testplugin.c:
1193         * testsuite/plugin/testplugin2.c:
1194         * testsuite/plugin/testplugin2_s.c:
1195         * testsuite/plugin/testplugin_s.c:
1196         * testsuite/refcounting/.cvsignore:
1197         * testsuite/refcounting/Makefile.am:
1198         * testsuite/refcounting/bin.c:
1199         * testsuite/refcounting/element.c:
1200         * testsuite/refcounting/element_pad.c:
1201         * testsuite/refcounting/mainloop.c:
1202         * testsuite/refcounting/mem.c:
1203         * testsuite/refcounting/mem.h:
1204         * testsuite/refcounting/object.c:
1205         * testsuite/refcounting/pad.c:
1206         * testsuite/refcounting/sched.c:
1207         * testsuite/refcounting/thread.c:
1208         * testsuite/states/.cvsignore:
1209         * testsuite/states/Makefile.am:
1210         * testsuite/states/bin.c:
1211         * testsuite/states/locked.c:
1212         * testsuite/states/parent.c:
1213         * testsuite/threads/.cvsignore:
1214         * testsuite/threads/159566.c:
1215         * testsuite/threads/159852.c:
1216         * testsuite/threads/Makefile.am:
1217         * testsuite/threads/queue.c:
1218         * testsuite/threads/signals.c:
1219         * testsuite/threads/staticrec.c:
1220         * testsuite/threads/thread.c:
1221         * testsuite/threads/threadb.c:
1222         * testsuite/threads/threadc.c:
1223         * testsuite/threads/threadd.c:
1224         * testsuite/threads/threade.c:
1225         * testsuite/threads/threadf.c:
1226         * testsuite/threads/threadg.c:
1227         * testsuite/threads/threadh.c:
1228         * testsuite/threads/threadi.c:
1229           move all of these under tests
1230
1231 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1232
1233         * configure.ac:
1234         * tests/Makefile.am:
1235           fix distcheck
1236
1237 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1238
1239         * docs/gst/gstreamer-sections.txt:
1240         * tests/sched/.cvsignore:
1241         * tests/sched/Makefile.am:
1242         * tests/sched/cases/(fs-fs).xml:
1243         * tests/sched/cases/(fs-i-fs).xml:
1244         * tests/sched/cases/(fs-i-i-fs).xml:
1245         * tests/sched/cases/(fs-i-q[i-fs]).xml:
1246         * tests/sched/dynamic-pipeline.c:
1247         * tests/sched/interrupt1.c:
1248         * tests/sched/interrupt2.c:
1249         * tests/sched/interrupt3.c:
1250         * tests/sched/runtestcases:
1251         * tests/sched/runxml.c:
1252         * tests/sched/sched-stress.c:
1253         * tests/sched/sort.c:
1254         * tests/sched/testcases:
1255         * tests/sched/testcases1.tc:
1256         * tests/seeking/.cvsignore:
1257         * tests/seeking/Makefile.am:
1258         * tests/seeking/seeking1.c:
1259         * tests/threadstate/.cvsignore:
1260         * tests/threadstate/Makefile.am:
1261         * tests/threadstate/test1.c:
1262         * tests/threadstate/test2.c:
1263         * tests/threadstate/threadstate1.c:
1264         * tests/threadstate/threadstate2.c:
1265         * tests/threadstate/threadstate3.c:
1266         * tests/threadstate/threadstate4.c:
1267         * tests/threadstate/threadstate5.c:
1268           remove obsolete tests
1269         * configure.ac:
1270         * tests/bench-complexity.scm:
1271         * tests/bench-mass_elements.scm:
1272         * tests/complexity.c:
1273         * tests/complexity.gnuplot:
1274         * tests/instantiate/.cvsignore:
1275         * tests/instantiate/Makefile.am:
1276         * tests/instantiate/caps.c:
1277         * tests/mass_elements.c:
1278         * tests/network-clock-utils.scm:
1279         * tests/network-clock.scm:
1280         * tests/plot-data:
1281         First pass at cleaning up tests/ dir before moving the rest
1282         Combined with CVS surgery
1283
1284 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1285
1286         * po/POTFILES.in:
1287           queue has moved, update
1288
1289 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1290
1291         * docs/gst/gstreamer-sections.txt:
1292           remove double entries from the docs
1293         * gst/gst_private.h:
1294         * gst/gstinfo.c: (_gst_debug_init):
1295           remove the THREAD debug category
1296         * gst/Makefile.am:
1297         * gst/gstqueue.c:
1298         * gst/gstqueue.h:
1299         * docs/gst/gstreamer.types:
1300         * plugins/elements/gstqueue.c: (gst_queue_get_type),
1301         (gst_queue_init), (gst_queue_finalize), (gst_queue_change_state):
1302           completely move queue and fix up debugging categories
1303
1304 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1305
1306         * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
1307           make initialization portable, using LL is not
1308
1309 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1310
1311         * win32/common/gstconfig.h:
1312           add large padding
1313
1314 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1315
1316         * win32/common/libgstreamer.def:
1317           rename symbols; sort base section
1318
1319 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1320
1321         * gst/gstclock.c: (do_linear_regression):
1322           remove crack non-portable handrolled DEBUG macro
1323
1324 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1325
1326         * docs/random/release:
1327           update notes
1328         * win32/common/gstenumtypes.c: (register_gst_object_flags),
1329         (gst_object_flags_get_type), (register_gst_bin_flags),
1330         (gst_bin_flags_get_type), (register_gst_buffer_flag),
1331         (gst_buffer_flag_get_type), (register_gst_bus_flags),
1332         (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
1333         (gst_bus_sync_reply_get_type), (register_gst_caps_flags),
1334         (gst_caps_flags_get_type), (register_gst_clock_return),
1335         (gst_clock_return_get_type), (register_gst_clock_entry_type),
1336         (gst_clock_entry_type_get_type), (register_gst_clock_flags),
1337         (gst_clock_flags_get_type), (register_gst_state),
1338         (gst_state_get_type), (register_gst_state_change_return),
1339         (gst_state_change_return_get_type), (register_gst_state_change),
1340         (gst_state_change_get_type), (register_gst_element_flags),
1341         (gst_element_flags_get_type), (register_gst_core_error),
1342         (gst_core_error_get_type), (register_gst_library_error),
1343         (gst_library_error_get_type), (register_gst_resource_error),
1344         (gst_resource_error_get_type), (register_gst_stream_error),
1345         (gst_stream_error_get_type), (register_gst_event_type_flags),
1346         (gst_event_type_flags_get_type), (register_gst_event_type),
1347         (gst_event_type_get_type), (register_gst_seek_type),
1348         (gst_seek_type_get_type), (register_gst_seek_flags),
1349         (gst_seek_flags_get_type), (register_gst_format),
1350         (gst_format_get_type), (register_gst_index_certainty),
1351         (gst_index_certainty_get_type), (register_gst_index_entry_type),
1352         (gst_index_entry_type_get_type),
1353         (register_gst_index_lookup_method),
1354         (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
1355         (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
1356         (gst_index_resolver_method_get_type), (register_gst_index_flags),
1357         (gst_index_flags_get_type), (register_gst_debug_level),
1358         (gst_debug_level_get_type), (register_gst_debug_color_flags),
1359         (gst_debug_color_flags_get_type), (register_gst_iterator_result),
1360         (gst_iterator_result_get_type), (register_gst_iterator_item),
1361         (gst_iterator_item_get_type), (register_gst_message_type),
1362         (gst_message_type_get_type), (register_gst_mini_object_flags),
1363         (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
1364         (gst_pad_link_return_get_type), (register_gst_flow_return),
1365         (gst_flow_return_get_type), (register_gst_activate_mode),
1366         (gst_activate_mode_get_type), (register_gst_pad_direction),
1367         (gst_pad_direction_get_type), (register_gst_pad_flags),
1368         (gst_pad_flags_get_type), (register_gst_pad_presence),
1369         (gst_pad_presence_get_type), (register_gst_pad_template_flags),
1370         (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
1371         (gst_pipeline_flags_get_type), (register_gst_plugin_error),
1372         (gst_plugin_error_get_type), (register_gst_plugin_flags),
1373         (gst_plugin_flags_get_type), (register_gst_rank),
1374         (gst_rank_get_type), (register_gst_query_type),
1375         (gst_query_type_get_type), (register_gst_tag_merge_mode),
1376         (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
1377         (gst_tag_flag_get_type), (register_gst_task_state),
1378         (gst_task_state_get_type), (register_gst_alloc_trace_flags),
1379         (gst_alloc_trace_flags_get_type),
1380         (register_gst_type_find_probability),
1381         (gst_type_find_probability_get_type), (register_gst_uri_type),
1382         (gst_uri_type_get_type), (register_gst_parse_error),
1383         (gst_parse_error_get_type):
1384         * win32/common/gstenumtypes.h:
1385         * win32/common/gstversion.h:
1386           update visual studio generated files
1387
1388 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1389
1390         * win32/vs6/libgstbase.dsp:
1391         * win32/vs6/libgstelements.dsp:
1392           update project files for new locations
1393
1394 2005-11-30  Thomas Vander Stichele  <thomas at apestaart dot org>
1395
1396         * Makefile.am:
1397           remove some files
1398         * README:
1399           reinstate and update
1400         * DEVEL:
1401         * REQUIREMENTS:
1402           removed
1403         * LICENSE:
1404         * docs/random/LICENSE:
1405           moved to random
1406
1407 2005-11-30  Edward Hervey  <edward@fluendo.com>
1408
1409         * gst/gsttypefind.c: (gst_type_find_register):
1410         * gst/gsttypefind.h:
1411         * gst/gsttypefindfactory.c: (gst_type_find_factory_init),
1412         (gst_type_find_factory_dispose):
1413         * gst/gsttypefindfactory.h:
1414         Fix memory leak in GstTypeFindFactory.
1415
1416 2005-11-29  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1417
1418         * gst/gst.c:
1419         * plugins/elements/Makefile.am:
1420         * plugins/elements/gstelements.c:
1421         * plugins/elements/gstqueue.c:
1422           move queue from core to the elements plugin
1423
1424 2005-11-29  Andy Wingo  <wingo@pobox.com>
1425
1426         * libs/gst/base/gstbasetransform.h: 
1427         * libs/gst/base/gstbasesrc.h: 
1428         * libs/gst/base/gstbasesink.h: en-LARGE the padding.
1429
1430         * gst/gstconfig.h.in (GST_PADDING_LARGE): New define, the number
1431         of pointers by which to pad very extensible base classes (like the
1432         ones in libs/gst/base).
1433
1434 2005-11-29  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1435
1436         * docs/gst/gstreamer-docs.sgml:
1437         * docs/gst/gstreamer-sections.txt:
1438         * docs/libs/gstreamer-libs-docs.sgml:
1439         * docs/libs/gstreamer-libs-sections.txt:
1440           moving documentation from core to lib
1441
1442 2005-11-29  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1443
1444         * check/Makefile.am:
1445         * configure.ac:
1446         * docs/gst/Makefile.am:
1447         * gst/Makefile.am:
1448         * gst/base/.cvsignore:
1449         * gst/base/Makefile.am:
1450         * gst/base/README:
1451         * gst/base/gstadapter.c:
1452         * gst/base/gstadapter.h:
1453         * gst/base/gstbasesink.c:
1454         * gst/base/gstbasesink.h:
1455         * gst/base/gstbasesrc.c:
1456         * gst/base/gstbasesrc.h:
1457         * gst/base/gstbasetransform.c:
1458         * gst/base/gstbasetransform.h:
1459         * gst/base/gstcollectpads.c:
1460         * gst/base/gstcollectpads.h:
1461         * gst/base/gstpushsrc.c:
1462         * gst/base/gstpushsrc.h:
1463         * gst/base/gsttypefindhelper.c:
1464         * gst/base/gsttypefindhelper.h:
1465         * gst/check/Makefile.am:
1466         * gst/check/gstcheck.c:
1467         * gst/check/gstcheck.h:
1468         * gst/net/Makefile.am:
1469         * gst/net/gstnet.h:
1470         * gst/net/gstnetclientclock.c:
1471         * gst/net/gstnetclientclock.h:
1472         * gst/net/gstnettimepacket.c:
1473         * gst/net/gstnettimepacket.h:
1474         * gst/net/gstnettimeprovider.c:
1475         * gst/net/gstnettimeprovider.h:
1476         * libs/gst/Makefile.am:
1477         * libs/gst/base/Makefile.am:
1478         * libs/gst/base/gstbasetransform.c:
1479         * libs/gst/check/Makefile.am:
1480         * plugins/elements/Makefile.am:
1481         * po/POTFILES.in:
1482           CVS surgery + support to move base, check, and net out of gst
1483           and into libs/gst
1484
1485 2005-11-29  Andy Wingo  <wingo@pobox.com>
1486
1487         * gst/gstevent.h (struct _GstEvent): Only one pointer of padding.
1488
1489         * gst/gststructure.h (struct _GstStructure): Only one pointer of
1490         padding.
1491
1492         * gst/gstquery.h (struct _GstQuery): Only one pointer of padding.
1493
1494         * gst/gstpluginfeature.h: Remove a comment in PluginFeature.
1495
1496         * gst/gstplugin.h (struct _GstPluginClass): Add some padding.
1497
1498         * gst/gstobject.h: (struct _GstObject): Only one pointer of
1499         padding; reduces object size by about 30%. We don't expect
1500         anything else to go into gstobject.
1501
1502         * gst/gstminiobject.h (struct _GstMiniObject)
1503         (struct _GstMiniObjectClass): Only one pointer of padding; the
1504         payload is only a pointer and two ints anyway. For the class there
1505         are only two methods as well.
1506         
1507         * gst/gstelement.h (struct _GstElementClass): Removed
1508         the state_changed signal callback, it is not used.
1509
1510 2005-11-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1511
1512         * docs/gst/gstreamer.types:
1513           fix includes, though they are a little dinky
1514
1515 2005-11-29  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1516
1517         * check/Makefile.am:
1518           look in the right place for elements, a lot more chance of
1519           success
1520         * gst/Makefile.am:
1521           remove indexers and elements subdirs
1522         * plugins/Makefile.am:
1523           make indexers conditional
1524
1525 2005-11-29  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1526
1527         * Makefile.am:
1528         * configure.ac:
1529         * plugins/elements/Makefile.am:
1530         * plugins/elements/gstcapsfilter.c:
1531         * plugins/elements/gstfilesink.c:
1532         * plugins/elements/gstfilesrc.c:
1533         * plugins/elements/gstidentity.c:
1534         * plugins/indexers/Makefile.am:
1535           do CVS surgery and related build fixery to move elements
1536           and indexers in a new gstreamer/plugins directory, out of the
1537           gst/ directory
1538
1539 2005-11-29  Andy Wingo  <wingo@pobox.com>
1540
1541         * check/Makefile.am:
1542         * pkgconfig/gstreamer-net-uninstalled.pc.in:
1543         * pkgconfig/gstreamer-net.pc.in:
1544         * gst/net/Makefile.am: Rename gstnet-tempname to gstnet. Fixes
1545         #322257.
1546
1547 2005-11-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1548
1549         * tools/Makefile.am:
1550         * tools/gst-complete.1.in:
1551         * tools/gst-complete.c:
1552         * tools/gst-compprep.1.in:
1553         * tools/gst-compprep.c:
1554           removing -compprep and -complete
1555
1556 2005-11-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1557
1558         * gst/gstevent.c: (gst_event_new_new_segment),
1559         (gst_event_parse_new_segment):
1560         * gst/gstevent.h:
1561           fix #320529 - clean up new_segment API and structure.
1562           Let's hope everyone was using the methods, and not the structure.
1563
1564 2005-11-29  Edward Hervey  <edward@fluendo.com>
1565
1566         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1567         (gst_base_sink_event), (gst_base_sink_do_sync),
1568         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
1569         Properly handle non GST_FORMAT_TIME segment
1570         * gst/elements/gstidentity.c: (gst_identity_transform_ip):
1571         Properly handle non GST_FORMAT_TIME segment
1572         * gst/gstsegment.c:
1573         This function is valid if the accumulator is 0 and the format
1574         is different from the requested format.
1575         
1576 2005-11-29  Jan Schmidt  <thaytan@mad.scientist.com>
1577
1578         * docs/gst/gstreamer-sections.txt:
1579         Add gst_query_new_seeking and gst_query_parse_seeking to the
1580         docs.
1581
1582 2005-11-29  Jan Schmidt  <thaytan@mad.scientist.com>
1583
1584         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
1585           Treat a pad alloc with new caps the same as if we were not
1586           negotiated, in order to allow a changing upstream output
1587           to produce a new format of data.
1588
1589 2005-11-29  Edward Hervey  <edward@fluendo.com>
1590
1591         * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
1592         (gst_base_transform_event), (gst_base_transform_eventfunc):
1593         The event virtual method is now properly implemented, with a default
1594         handler
1595         Sub classes should call the parent_class event method. They should
1596         return FALSE if they had a problem handling the given event, or don't
1597         want GstBaseTransform to send that even downstream
1598         * gst/elements/gstidentity.c: (gst_identity_class_init),
1599         (gst_identity_init), (gst_identity_event),
1600         (gst_identity_transform_ip), (gst_identity_set_property),
1601         (gst_identity_get_property):
1602         * gst/elements/gstidentity.h:
1603         Added the single-segment boolean property.
1604         If set to TRUE, it will output a single segment of data, starting from
1605         0, will eat up all incoming newsegment, and modify the timestamp of the
1606         buffers accordingly
1607
1608 2005-11-29  Tim-Philipp Müller  <tim at centricular dot net>
1609
1610         * gst/gstghostpad.c: (gst_proxy_pad_get_target):
1611           Don't ref NULL target pad (#322751). Improve docs.
1612
1613 2005-11-29  Michael Smith  <msmith@fluendo.com>
1614
1615         * gst/gstregistryxml.c: (load_plugin):
1616           Don't crash if we failed to load a feature from a plugin. 
1617
1618 2005-11-28  Thomas Vander Stichele  <thomas at apestaart dot org>
1619
1620         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
1621         (GST_START_TEST):
1622           use more check API and less GLib API
1623
1624 2005-11-28  Thomas Vander Stichele  <thomas at apestaart dot org>
1625
1626         * Makefile.am:
1627           don't run checks if we don't have check
1628         * common/check.mak:
1629           remove the registry when running make torture
1630         * docs/gst/gstreamer-sections.txt:
1631           remove second multiply
1632         * gst/gstqueue.c: (gst_queue_loop):
1633           fix a compile warning when disabling debug
1634
1635 2005-11-28  Jan Schmidt  <thaytan@mad.scientist.com>
1636
1637         * gst/gstinfo.h:
1638         Hey! Let's print the pad name if the pointer != NULL instead
1639         of when it == NULL :-)
1640
1641 2005-11-28  Wim Taymans  <wim@fluendo.com>
1642
1643         * check/gst/gstutils.c: (GST_START_TEST):
1644         Updated check, add some scaling accuracy checking code.
1645
1646         * gst/gstutils.c: (gst_util_div128_64),
1647         (gst_util_uint64_scale_int64), (gst_util_uint64_scale),
1648         (gst_util_uint64_scale_int):
1649         Fix 6 times faster division code. Optimize for common 
1650         1/1 and less common X/1 cases.
1651
1652 2005-11-28  Wim Taymans  <wim@fluendo.com>
1653
1654         * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
1655         More checks.
1656
1657         * gst/gstclock.c: (gst_clock_finalize), (gst_clock_set_master),
1658         (do_linear_regression), (gst_clock_add_observation):
1659         Cleanups.
1660         Release lock when the clock cannot be slaved.
1661         Catch the case where the regression returned an invalid denominator.
1662
1663         * gst/gstutils.c: (gst_util_div128_64_iterate),
1664         (gst_util_div128_64), (gst_util_uint64_scale_int64),
1665         (gst_util_uint64_scale), (gst_util_uint64_scale_int):
1666         Add protentially more performant non-iterative 128/64 divide function
1667         that unfortunatly does not work yet.
1668         Shortcut the trivial 0/X = 0 case.
1669         Remove the warnings on overflow.
1670
1671 2005-11-28  Thomas Vander Stichele  <thomas at apestaart dot org>
1672
1673         * gst/gstplugin.c: (gst_plugin_register_func):
1674           everything causing a plugin not to load should be at least a WARNING
1675
1676 2005-11-28  Stefan Kost  <ensonic@users.sf.net>
1677
1678         * docs/random/ensonic/dparams.txt:
1679           some TODOs for the next dev cycle
1680         * libs/gst/controller/gstcontroller.c:
1681         (gst_controlled_property_set_interpolation_mode),
1682         (gst_controlled_property_new):
1683         * libs/gst/controller/gstcontroller.h:
1684           use base type to assign acccessor functions
1685
1686 2005-11-28  Jan Schmidt  <thaytan@mad.scientist.com>
1687
1688         * check/Makefile.am:
1689         Oops, that should have been top_srcdir
1690
1691 2005-11-28  Jan Schmidt  <thaytan@mad.scientist.com>
1692
1693         * check/Makefile.am:
1694         * check/elements/fdsrc.c: (GST_START_TEST):
1695         Use a cmdline define to specify the location of a file to use for
1696         testing, to avoid breaking distcheck.
1697
1698 2005-11-28  Andy Wingo  <wingo@pobox.com>
1699
1700         * gst/gstpad.c (fixate_value): Use array functions for arrays.
1701
1702 2005-11-28  Edward Hervey  <edward@fluendo.com>
1703
1704         * tools/gst-launch.c: (main):
1705         Clarify the output strings, makes it easier to translate.
1706         Fixes #322626
1707
1708 2005-11-28  Thomas Vander Stichele  <thomas at apestaart dot org>
1709
1710         * gst/Makefile.am:
1711           don't try and build net if we don't even have <sys/socket.h>
1712
1713 2005-11-27  Jan Schmidt  <thaytan@mad.scientist.com>
1714
1715         * check/Makefile.am:
1716         * check/elements/fdsrc.c: (event_func), (setup_fdsrc),
1717         (cleanup_fdsrc), (GST_START_TEST), (fdsrc_suite), (main):
1718           Add tests for fdsrc seekability
1719
1720         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
1721         (gst_fdsrc_init), (gst_fdsrc_update_fd), (gst_fdsrc_start),
1722         (gst_fdsrc_set_property), (gst_fdsrc_is_seekable),
1723         (gst_fdsrc_get_size), (gst_fdsrc_uri_set_uri):
1724         * gst/elements/gstfdsrc.h:
1725           fdsrc should not be a 'live' source.
1726           Implement seeking on seekable fd's.
1727
1728         * gst/gstquery.c: (gst_query_new_seeking),
1729         (gst_query_parse_seeking):
1730         * gst/gstquery.h:
1731           Implement SEEKING query functions: 
1732             *_new_seeking and *_parse_seeking
1733
1734 2005-11-27  Stefan Kost  <ensonic@users.sf.net>
1735
1736         * gst/gstelement.c: (gst_element_dispose):
1737           don't loop forever
1738
1739         * gst/gstiterator.c:
1740         * gst/gststructure.c:
1741           doc fixes
1742
1743         * libs/gst/controller/gstcontroller.c:
1744         (gst_controlled_property_set_interpolation_mode):
1745         * libs/gst/controller/gstcontroller.h:
1746         * libs/gst/controller/gstinterpolation.c:
1747         (interpolate_none_get_enum_value_array):
1748           support controlling enums
1749
1750 2005-11-27  Tim-Philipp Müller  <tim at centricular dot net>
1751
1752         * gst/gstvalue.c:
1753           Improve documentation for gst_value_union().
1754
1755         * gst/gstvalue.h:
1756           Change return value for union, intersect and subtract functions
1757           from gint to gboolean.
1758
1759 2005-11-27  Tim-Philipp Müller  <tim at centricular dot net>
1760
1761         * gst/gstvalue.c: (gst_value_serialize_any_list),
1762         (gst_value_transform_any_list_string),
1763         (gst_value_deserialize_list), (gst_value_deserialize_array),
1764         (gst_value_set_int_range), (gst_value_deserialize_int_range),
1765         (gst_value_set_double_range), (gst_value_deserialize_double_range),
1766         (gst_value_set_fraction_range_full),
1767         (gst_value_deserialize_fraction_range),
1768         (gst_value_deserialize_caps), (gst_value_deserialize_buffer),
1769         (gst_value_deserialize_boolean),
1770         (gst_value_deserialize_int_helper), (gst_value_deserialize_double),
1771         (gst_value_serialize_float), (gst_value_deserialize_float),
1772         (gst_string_wrap), (gst_value_deserialize_string),
1773         (gst_value_deserialize_enum), (gst_value_deserialize_flags),
1774         (gst_value_union_int_range_int_range),
1775         (gst_value_intersect_int_range_int_range),
1776         (gst_value_intersect_double_range_double_range),
1777         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
1778         (gst_value_subtract_int_range_int_range),
1779         (gst_value_subtract_double_double_range),
1780         (gst_value_subtract_double_range_double_range),
1781         (gst_value_deserialize_fraction):
1782         * gst/gstvalue.h:
1783           Use gint, gdouble and gchar in our API instead of int, double and
1784           char (and make usage in gstvalue.c more consistent).
1785
1786 2005-11-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1787
1788         * check/Makefile.am:
1789         * libs/gst/controller/Makefile.am:
1790         * libs/gst/dataprotocol/Makefile.am:
1791           fix up Makefile.am and remove GST_ENABLE_NEW
1792
1793 2005-11-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1794
1795         * configure.ac:
1796         * gst/Makefile.am:
1797         * gst/base/Makefile.am:
1798         * gst/check/Makefile.am:
1799         * gst/elements/Makefile.am:
1800         * gst/net/Makefile.am:
1801           update LDFLAGS use some more
1802
1803 2005-11-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1804
1805         * common/m4/gst-doc.m4:
1806           Fixes #312589
1807
1808 2005-11-26  Edward Hervey  <edward@fluendo.com>
1809
1810         * gst/gstpluginfeature.c: (gst_plugin_feature_load):
1811         This shouldn't issue a g_warning since it returns NULL if it
1812         couldn't find the plugin, and all functions using this behave
1813         properly on a NULL return. Switching to a GST_WARNING.
1814
1815 2005-11-25  Jan Schmidt  <thaytan@mad.scientist.com>
1816
1817         * gst/gstbin.c: (gst_bin_handle_message_func):
1818         Don't leak clock messages.
1819
1820 2005-11-25  Wim Taymans  <wim@fluendo.com>
1821
1822         * gst/gstutils.c: (gst_util_uint64_scale_int64),
1823         (gst_util_uint64_scale_int):
1824         Optimisations, remove unneeded vars.
1825
1826 2005-11-25  Wim Taymans  <wim@fluendo.com>
1827
1828         * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
1829         Added more checks for the high precision uint64 cases.
1830
1831         * gst/gstutils.c: (gst_util_uint64_scale_int64),
1832         (gst_util_uint64_scale), (gst_util_uint64_scale_int):
1833         Implement high precision (guint64 * guint64) / guint64.
1834
1835 2005-11-24  Wim Taymans  <wim@fluendo.com>
1836
1837         * gst/base/gstbasesrc.c: (gst_base_src_query):
1838         Fix wrong percentage query.
1839
1840         * gst/gstutils.c: (gst_util_uint64_scale),
1841         (gst_util_uint64_scale_int):
1842         Add some more common cases that can be handled 
1843         efficiently to _scale.
1844
1845 2005-11-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1846
1847         * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST),
1848         (gst_mini_object_suite):
1849           don't use check calls from threads; check probably isn't
1850           threadsafe and using a lock to make it threadsafe would
1851           defeat the purpose of this check
1852         * gst/check/gstcheck.c:
1853         * gst/check/gstcheck.h:
1854           use GST_DEBUG some more
1855
1856 2005-11-24  Wim Taymans  <wim@fluendo.com>
1857
1858         * gst/gstutils.c: (gst_util_uint64_scale),
1859         (gst_util_uint64_scale_int):
1860         Chain trivial case to _scale_int.
1861
1862 2005-11-24  Wim Taymans  <wim@fluendo.com>
1863
1864         * check/gst/gstutils.c: (GST_START_TEST), (gst_utils_suite):
1865         Added test for scaling.
1866
1867         * gst/gstclock.h:
1868         Small doc fix.
1869
1870         * gst/gstutils.c: (gst_util_uint64_scale_int):
1871         Implemented high precision scaling code.
1872
1873 2005-11-24  Stefan Kost  <ensonic@users.sf.net>
1874
1875         * gst/gstinfo.h:
1876           do not crash on pad==NULL
1877
1878 2005-11-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1879
1880         Patch by: Stefan Kost
1881
1882         * common/gtk-doc.mak:
1883         * docs/gst/Makefile.am:
1884         * docs/libs/Makefile.am:
1885           Fix distcheck issues for the libraries docs build
1886           Closes #319599.
1887
1888 2005-11-24  Michael Smith <msmith@fluendo.com>
1889
1890         * docs/manual/basics-helloworld.xml:
1891           Fix bug #315027: memory leak in example code in docs.
1892
1893 2005-11-24  Michael Smith <msmith@fluendo.com>
1894
1895         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1896           Unlock the PREROLL_LOCK in a failure case.
1897
1898 2005-11-24  Wim Taymans  <wim@fluendo.com>
1899
1900         * docs/gst/gstreamer-sections.txt:
1901         * gst/base/gstadapter.h:
1902         * gst/base/gstbasesink.h:
1903         * gst/base/gstbasesrc.h:
1904         * gst/base/gstbasetransform.h:
1905         * gst/base/gstpushsrc.h:
1906         * gst/elements/gstfakesink.h:
1907         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type):
1908         * gst/elements/gstfakesrc.h:
1909         * gst/elements/gstfilesink.h:
1910         * gst/elements/gstfilesrc.h:
1911         * gst/gst.c:
1912         * gst/gstbin.c:
1913         * gst/gstbuffer.c: (_gst_buffer_copy):
1914         * gst/gstbus.h:
1915         * gst/gstcaps.c:
1916         * gst/gstchildproxy.c:
1917         * gst/gstclock.c:
1918         * gst/gstelement.c:
1919         * gst/gstelementfactory.c:
1920         * gst/gstelementfactory.h:
1921         * gst/gstevent.c:
1922         * gst/gstghostpad.h:
1923         * gst/gstindex.h:
1924         * gst/gstinterface.h:
1925         * gst/gstminiobject.c:
1926         * gst/gstminiobject.h:
1927         * gst/gstpad.c:
1928         * gst/gstpad.h:
1929         * gst/gstpadtemplate.h:
1930         * gst/gstpipeline.h:
1931         * gst/gstpluginfeature.h:
1932         * gst/gstquery.h:
1933         * gst/gstqueue.h:
1934         * gst/gsttaglist.c:
1935         * gst/gsttaglist.h:
1936         * gst/gsttagsetter.c:
1937         * gst/gsttagsetter.h:
1938         * gst/gsttrace.c:
1939         * gst/gsttrace.h:
1940         * gst/gsttypefind.h:
1941         * gst/gsturi.h:
1942         * gst/gstvalue.c:
1943         * gst/net/gstnetclientclock.c:
1944         * gst/net/gstnetclientclock.h:
1945         * gst/net/gstnettimepacket.c:
1946         * gst/net/gstnettimeprovider.c:
1947         * gst/net/gstnettimeprovider.h:
1948         Doc fixes.
1949
1950 2005-11-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1951
1952         * configure.ac: back to HEAD
1953
1954 === release 0.9.6 ===
1955
1956 2005-11-23  Thomas Vander Stichele <thomas at apestaart dot org>
1957
1958         * configure.ac:
1959           releasing 0.9.6, "Always On Time"
1960
1961 2005-11-23  Wim Taymans  <wim@fluendo.com>
1962
1963         * docs/gst/gstreamer-sections.txt:
1964         * gst/glib-compat.c:
1965         * gst/gsttagsetter.c:
1966         * gst/gstvalue.c:
1967         * gst/net/gstnetclientclock.c:
1968         * gst/net/gstnettimepacket.h:
1969         Doc updates.
1970
1971 2005-11-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1972
1973         * docs/faq/using.xml:
1974         * docs/libs/tmpl/gstcontrol.sgml:
1975         * docs/manual/advanced-dparams.xml:
1976         * docs/manual/appendix-checklist.xml:
1977         * docs/manual/basics-elements.xml:
1978         * docs/pwg/other-source.xml:
1979         * docs/random/moving-plugins:
1980         * gst/gstpad.c:
1981         * tools/gst-launch.1.in:
1982           remove mentions of sinesrc
1983
1984 2005-11-23  Michael Smith <msmith@fluendo.com>
1985
1986         * docs/gst/gstreamer-sections.txt:
1987           Update for new API and API changes.
1988         * gst/gstobject.h:
1989           Documentation fix: GST_TRYLOCK -> GST_OBJECT_TRYLOCK
1990         * gst/gstvalue.c:
1991           Documentation typo fix.
1992         * gst/net/gstnettimepacket.c:
1993           Documentation fixes for arguments.
1994
1995 2005-11-23  Jan Schmidt  <thaytan@mad.scientist.com>
1996
1997         * gst/gststructure.c: (gst_structure_get_fraction),
1998         (gst_structure_parse_value),
1999         (gst_structure_fixate_field_nearest_fraction):
2000         * gst/gststructure.h:
2001         * gst/gstutils.c: (gst_util_uint64_scale_int):
2002         * gst/gstutils.h:
2003         * scripts/update-funcnames:
2004         API Changes. 
2005         Rename gst_util_clock_time_scale to gst_util_uint64_scale_int
2006         Make gst_structure_fixate_field_nearest_fraction take a numerator
2007         and denominator argument instead of a GValue
2008         add gst_structure_get_fraction helper function.
2009
2010 2005-11-23  Wim Taymans  <wim@fluendo.com>
2011
2012         * docs/design/part-TODO.txt:
2013         Update TODO.
2014
2015         * gst/net/gstnetclientclock.c: (gst_net_client_clock_thread):
2016         * gst/net/gstnetclientclock.h:
2017         Use parent fields for timeout and window_size.
2018
2019 2005-11-23  Andy Wingo  <wingo@pobox.com>
2020
2021         * check/net/gstnetclientclock.c (test_functioning): Adjust to
2022         rate_num/rate_denom change.
2023
2024         * gst/net/gstnetclientclock.c
2025         (gst_net_client_clock_observe_times): Take the SLAVE_LOCK not the
2026         OBJECT_LOCK. Don't call add_observation with the lock.
2027
2028         * gst/gstclock.c (gst_clock_init): Initialize the rate as a
2029         fraction.
2030         (gst_clock_adjust_unlocked): Adjust using uint64_scale and the
2031         rate fraction.
2032         (gst_clock_set_calibration, gst_clock_get_calibration): Change to
2033         deal with rate as a fraction whose numerator and denominator are
2034         GstClockTime values.
2035         (gst_clock_set_master): Only use the OBJECT_LOCK to set the
2036         master; the other fields are protected by the SLAVE_LOCK.
2037         (do_linear_regression): Note that this must be called with the
2038         SLAVE_LOCK.
2039         (gst_clock_add_observation): Take the SLAVE_LOCK, not the
2040         OBJECT_LOCK. Call set_calibration instead of touching the
2041         variables directly.
2042         (gst_clock_set_property, gst_clock_get_property): Protect
2043         master/slave parameters with the SLAVE_LOCK.
2044
2045         * gst/gstclock.h (GstClock): Remove rate, add rate_numerator and
2046         rate_denominator. PR3C1S3. Add a new lock, the SLAVE_LOCK, and
2047         note that all of the instance variables that add_observation and
2048         the set_master functions use are protected by that lock and not
2049         the OBJECT_LOCK.
2050         (GST_CLOCK_SLAVE_LOCK, GST_CLOCK_SLAVE_UNLOCK): New macros.
2051
2052         * gst/gstclock.c (gst_clock_add_observation): No longer requires
2053         the caller to take the object lock.
2054
2055 2005-11-23  Wim Taymans  <wim@fluendo.com>
2056
2057         * gst/gsterror.c: (_gst_core_errors_init):
2058         * gst/gsterror.h:
2059         Add error for clock stuff.
2060
2061         * gst/gstpipeline.c: (gst_pipeline_change_state),
2062         (gst_pipeline_set_clock):
2063         Post clock error when clock cannot be used in a pipeline.
2064
2065 2005-11-23  Stefan Kost  <ensonic@users.sf.net>
2066
2067         * docs/gst/gstreamer-sections.txt:
2068           make two symbols from gstinfo private for the docs
2069         * gst/base/gstcollectpads.h:
2070         * gst/gstutils.c:
2071           fix doc typos, update docs
2072
2073 2005-11-22  Wim Taymans  <wim@fluendo.com>
2074
2075         * gst/base/gstbasesink.c: (gst_base_sink_class_init),
2076         (gst_base_sink_wait), (gst_base_sink_do_sync),
2077         (gst_base_sink_handle_event):
2078         * gst/base/gstbasesink.h:
2079         No need to store the clock, the parent element class already
2080         has it.
2081
2082         * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_add_func):
2083         Updates for clock_set returning a gboolean
2084
2085         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_wait),
2086         (gst_clock_id_wait_async), (gst_clock_class_init),
2087         (gst_clock_init), (gst_clock_finalize),
2088         (gst_clock_get_internal_time), (gst_clock_get_time),
2089         (gst_clock_slave_callback), (gst_clock_set_master),
2090         (gst_clock_get_master), (do_linear_regression),
2091         (gst_clock_add_observation), (gst_clock_set_property),
2092         (gst_clock_get_property):
2093         * gst/gstclock.h:
2094         Implement master/slave. When setting a clock as a slave, a
2095         periodic timeout is scheduled to sample master and slave times.
2096         Then the slave clock is recalibrated to match offset and rate
2097         of the master clock.
2098         Update logging a bit.
2099         Add flag so that a clock can state that is cannot be slaved to
2100         another clock.
2101
2102         * gst/gstelement.c: (gst_element_set_clock):
2103         * gst/gstelement.h:
2104         The set clock returns a gboolean for when an element cannot
2105         deal with the selected clock in the pipeline. 
2106
2107         * gst/gstpipeline.c: (gst_pipeline_change_state),
2108         (gst_pipeline_set_clock):
2109         * gst/gstpipeline.h:
2110         Handle the case where the selected clock cannot be set on
2111         the pipeline.
2112
2113         * gst/net/gstnetclientclock.c: (gst_net_client_clock_class_init),
2114         (gst_net_client_clock_init), (gst_net_client_clock_finalize),
2115         (gst_net_client_clock_set_property),
2116         (gst_net_client_clock_get_property),
2117         (gst_net_client_clock_observe_times):
2118         * gst/net/gstnetclientclock.h:
2119         Use regression code in GstClock parent, remove duplicated
2120         functionality.
2121
2122 2005-11-22  Michael Smith <msmith@fluendo.com>
2123
2124         * gst/gstutils.c: (gst_util_clock_time_scale):
2125         * gst/gstutils.h:
2126         * docs/gst/gstreamer-sections.txt:
2127           Rename method to have extra underscore.
2128
2129 2005-11-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2130
2131         * gst/elements/Makefile.am:
2132         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type):
2133         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
2134         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
2135         (gst_fake_src_init), (gst_fake_src_prepare_buffer),
2136         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size):
2137         * gst/elements/gstfakesrc.h:
2138         * gst/gstqueue.c: (queue_leaky_get_type):
2139           correctly fix GEnumValues so that nick is the short lowercase
2140           dashed tag
2141         * tools/gst-inspect.c: (print_element_properties_info):
2142           also show the nick, since it's useful to use from parse_launch
2143           syntax
2144           Fixes #322139
2145
2146 2005-11-22  Michael Smith <msmith@fluendo.com>
2147
2148         * gst/gstutils.c: (gst_util_clocktime_scale):
2149         * gst/gstutils.h:
2150         * docs/gst/gstreamer-sections.txt:
2151           Add util method for scaling a clocktime by a fraction. Useful 
2152           implementation is left as an exercise for the reader.
2153
2154 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
2155
2156         * gst/gstvalue.c: (gst_value_collect_fraction_range):
2157         If needed, allocate storage in the destination value during
2158         collection.
2159
2160 2005-11-22  Edward Hervey  <edward@fluendo.com>
2161
2162         * docs/gst/gstreamer-sections.txt:
2163         * gst/Makefile.am:
2164         * gst/gst.h:
2165         * gst/gsturitype.c:
2166         * gst/gsturitype.h:
2167         * gst/gstutils.c: (gst_util_set_object_arg):
2168         * tools/gst-compprep.c: (main):
2169         * tools/gst-inspect.c: (print_element_properties_info):
2170         Removed GstURI, closes bug #321061
2171
2172 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
2173
2174         * check/gst/gststructure.c: (GST_START_TEST):
2175         * gst/gststructure.c: (gst_structure_parse_value):
2176           Oops, broke automatic string type parsing.
2177           Add a test to catch it in future.
2178
2179 2005-11-22  Andy Wingo  <wingo@pobox.com>
2180
2181         * gst/gsttagsetter.c (gst_tag_setter_get_tag_merge_mode) 
2182         (gst_tag_setter_set_tag_merge_mode, gst_tag_setter_get_tag_list):
2183         Actually rename the function implementations. Grr.
2184
2185 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
2186
2187         * check/gst/capslist.h:
2188           Comment test cases
2189         * check/gst/gststructure.c: (GST_START_TEST),
2190         (gst_structure_suite):
2191           Test automatic value type detection in gst_structure_from_string.
2192         * gst/gststructure.c: (gst_structure_parse_value):
2193           Add fraction as a type we try and guess automatically in
2194           caps/structure strings.
2195
2196 2005-11-22  Andy Wingo  <wingo@pobox.com>
2197
2198         patch by: Torsten Schoenfeld <kaffeetisch gmx de>
2199
2200         * gst/gsttagsetter.h:
2201         * gst/gsttagsetter.c: (gst_tag_setter_merge_tags)
2202         (gst_tag_setter_add_tags, gst_tag_setter_add_tag_values)
2203         (gst_tag_setter_add_tag_valist)
2204         (gst_tag_setter_add_tag_valist_values): Renamed from _merge, _add,
2205         _add_values, _add_valist, and _add_valist_values. Since this is an
2206         interface the function suffixes should be more explicit so
2207         language binding don't end up with element.add_valist ->
2208         gst_tag_setter_add_valist, for example. Fixes #322069.
2209
2210 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
2211
2212         * check/gst/gstcaps.c: (GST_START_TEST):
2213           Extend caps string tests to check that a caps to string
2214           conversion is reversible and produces the same caps.
2215
2216         * gst/gststructure.c: (gst_structure_value_get_generic_type):
2217           Output "fraction" as the generic type fraction range, so caps
2218           serialisation and deserialisation works.
2219         * check/gst/capslist.h:
2220         * gst/gstvalue.c: (gst_value_deserialize_fraction):
2221           Support 'MIN' and 'MAX' for deserialising fractions.
2222
2223 2005-11-22  Andy Wingo  <wingo@pobox.com>
2224
2225         * gst/gstevent.h (gst_event_new_new_segment)
2226         (gst_event_parse_new_segment, gst_event_new_buffer_size)
2227         (gst_event_parse_buffer_size, gst_ghost_pad_new_no_target):
2228         Renamed from *_newsegment, *_buffersize, *_notarget.
2229
2230         * scripts/update-funcnames: New script, performs the changes
2231         listed above.
2232
2233 2005-11-22  Wim Taymans  <wim@fluendo.com>
2234
2235         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2236         Make sure the GstFlowReturn is returned.
2237
2238         * gst/gstbus.c: (gst_bus_add_signal_watch_full),
2239         (gst_bus_add_signal_watch):
2240         * gst/gstbus.h:
2241         add gst_bus_add_signal_watch_full.
2242
2243         * gst/gstplugin.c: (gst_plugin_load_file):
2244         Small style cleanup.
2245
2246 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
2247
2248         * check/gst/gstevent.c: (test_event), (GST_START_TEST):
2249           Block the fakesrc srcpad when we send an event, to avoid
2250           contention on the stream_lock causing random test failures.
2251
2252 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
2253
2254         * check/gst/gstvalue.c: (GST_START_TEST):
2255         * gst/gstvalue.c: (gst_value_fraction_subtract):
2256           Fix subtraction.
2257
2258 2005-11-22  Stefan Kost  <ensonic@users.sf.net>
2259
2260         * gst/gst.h:
2261           include "gstchildproxy.h"
2262         * gst/gstchildproxy.h:
2263         * libs/gst/controller/gstcontroller.h:
2264           use G_GNUC_NULL_TERMINATED
2265
2266 2005-11-22  Jan Schmidt  <thaytan@mad.scientist.com>
2267
2268         * check/gst/capslist.h:
2269         * check/gst/gstcaps.c: (GST_START_TEST):
2270         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
2271         * gst/gststructure.c: (gst_structure_parse_range),
2272         (gst_structure_fixate_field_nearest_fraction):
2273         * gst/gststructure.h:
2274         * gst/gstvalue.c: (gst_value_init_fraction_range),
2275         (gst_value_free_fraction_range), (gst_value_copy_fraction_range),
2276         (gst_value_collect_fraction_range),
2277         (gst_value_lcopy_fraction_range), (gst_value_set_fraction_range),
2278         (gst_value_set_fraction_range_full),
2279         (gst_value_get_fraction_range_min),
2280         (gst_value_get_fraction_range_max),
2281         (gst_value_serialize_fraction_range),
2282         (gst_value_transform_fraction_range_string),
2283         (gst_value_compare_fraction_range),
2284         (gst_value_deserialize_fraction_range),
2285         (gst_value_intersect_fraction_fraction_range),
2286         (gst_value_intersect_fraction_range_fraction_range),
2287         (gst_value_subtract_fraction_fraction_range),
2288         (gst_value_subtract_fraction_range_fraction),
2289         (gst_value_subtract_fraction_range_fraction_range),
2290         (gst_value_collect_fraction), (gst_value_fraction_multiply),
2291         (gst_value_fraction_subtract), (gst_value_deserialize_fraction),
2292         (gst_value_transform_string_fraction), (_gst_value_initialize):
2293         * gst/gstvalue.h:
2294           Implement fraction ranges and extend GstFraction to support
2295           arithmetic subtraction, as well as deserialization from integer
2296           strings such as "100"
2297           Add a testsuite as for int and double range set operations
2298
2299 2005-11-21  Andy Wingo  <wingo@pobox.com>
2300
2301         * gst/gsttaglist.h: 
2302         * gst/gstcaps.h: 
2303         * gst/gststructure.h: Add glib-compat.h.
2304
2305 2005-11-21  Wim Taymans  <wim@fluendo.com>
2306
2307         * gst/gstbin.c: (gst_bin_change_state_func):
2308         Fix for #321595
2309
2310 2005-11-21  Wim Taymans  <wim@fluendo.com>
2311
2312         * gst/gstsegment.h:
2313         And add a nice define too.
2314
2315 2005-11-21  Wim Taymans  <wim@fluendo.com>
2316
2317         * gst/gstsegment.c: (gst_segment_copy), (gst_segment_get_type),
2318         (gst_segment_new), (gst_segment_free), (gst_segment_init),
2319         (gst_segment_set_duration), (gst_segment_set_last_stop),
2320         (gst_segment_set_seek), (gst_segment_set_newsegment),
2321         (gst_segment_to_stream_time), (gst_segment_to_running_time),
2322         (gst_segment_clip):
2323         * gst/gstsegment.h:
2324         Make binding friendly.
2325
2326 2005-11-21  Andy Wingo  <wingo@pobox.com>
2327
2328         * gst/gsttagsetter.h: 
2329         * gst/gsttaglist.h: 
2330         * gst/gststructure.h: 
2331         * gst/gstcaps.h: 
2332         * gst/gstutils.h: Sprinkle NULL_TERMINATED to taste. Fixes
2333         #319940.
2334
2335         * gst/gsterror.c (_gst_core_errors_init):
2336         * gst/gsterror.h (GST_CORE_ERROR_MISSING_PLUGIN): New error
2337         category.
2338
2339         * gst/Makefile.am (gst_headers): Add glib-compat.h.
2340         (noinst_HEADERS): noinst the -private.
2341
2342 2005-11-21  Michael Smith <msmith@fluendo.com>
2343
2344         * gst/gstplugin.h:
2345         * gst/gstregistry.h:
2346           Remove unimplemented declarations for which we can see no sensible
2347           use.
2348
2349 2005-11-21  Andy Wingo  <wingo@pobox.com>
2350
2351         * gst/gst.h: Include glib-compat.h.
2352
2353         * gst/glib-compat.h: Add G_GNUC_NULL_TERMINATED.
2354
2355         * gst/glib-compat.c: Include the public and the private header.
2356
2357         * gst/glib-compat-private.h: Copied here from glib-compat.h.
2358
2359         * gst/gstvalue.c: 
2360         * gst/gstpad.c: 
2361         * gst/gstregistryxml.c: s/glib-compat/glib-compat-private/.
2362
2363         * check/gst/gstevent.c (create_custom_events): Check that
2364         FLUSH_STOP is serialized.
2365
2366         * check/elements/identity.c (event_func): 
2367         * check/elements/fakesrc.c (event_func): No stream lock, the core
2368         takes it.
2369
2370         * gst/base/gstbasetransform.c (gst_base_transform_event): No more
2371         stream lock taking, yay.
2372
2373         * gst/gstevent.h (GST_EVENT_FLUSH_STOP): Marked as serialized to
2374         ensure that core takes the stream lock.
2375
2376         * gst/base/gstbasesrc.c (gst_base_src_do_seek): Update for stream
2377         lock name change.
2378
2379         * gst/base/gstbasesink.c (gst_base_sink_event): No need to take
2380         the stream lock for EOS, NEWSEGMENT, or FLUSH_STOP, the core does
2381         it already. For the flush start we do take it though so we get the
2382         right preroll state change messages.
2383
2384         * gst/gstqueue.c (gst_queue_sink_activate_push): No need to take
2385         the stream lock here, the core does it for us.
2386
2387         * gst/gstpad.h (GST_PAD_GET_STREAM_LOCK): Renamed from
2388         GST_STREAM_GET_LOCK.
2389         (GST_PAD_STREAM_LOCK, GST_PAD_STREAM_TRYLOCK) 
2390         (GST_PAD_STREAM_UNLOCK, GST_PAD_STREAM_UNLOCK_FULL) 
2391         (GST_PAD_STREAM_LOCK_FULL): Renamed from GST_STREAM_*.
2392         (GST_PAD_GET_PREROLL_LOCK): Renamed from GST_PREROLL_GET_LOCK.
2393         (GST_PAD_PREROLL_LOCK, GST_PAD_PREROLL_TRYLOCK) 
2394         (GST_PAD_PREROLL_UNLOCK): Renamed from GST_PREROLL_*.
2395
2396         * gst/gstpad.c: Update for stream lock name change.
2397
2398         * gst/base/gstbasesink.c: Update for preroll lock name change.
2399
2400 2005-11-21  Wim Taymans  <wim@fluendo.com>
2401
2402         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_master),
2403         (gst_clock_get_master):
2404         * gst/gstclock.h:
2405         * gst/gstsystemclock.c: (gst_system_clock_init):
2406         Convert Clock flags to object flags.
2407         Added methods to manage master/slave clocks.
2408
2409 2005-11-21  Wim Taymans  <wim@fluendo.com>
2410
2411         * check/gst/gstsegment.c: (GST_START_TEST):
2412         * docs/design/part-TODO.txt:
2413         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2414         (gst_base_sink_event), (gst_base_sink_do_sync),
2415         (gst_base_sink_activate_pull), (gst_base_sink_get_position),
2416         (gst_base_sink_query), (gst_base_sink_change_state):
2417         * gst/base/gstbasesink.h:
2418         * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
2419         (gst_base_src_default_newsegment),
2420         (gst_base_src_configure_segment), (gst_base_src_do_seek),
2421         (gst_base_src_get_range), (gst_base_src_loop),
2422         (gst_base_src_change_state):
2423         * gst/base/gstbasesrc.h:
2424         * gst/base/gstbasetransform.c:
2425         (gst_base_transform_prepare_output_buf),
2426         (gst_base_transform_event), (gst_base_transform_change_state):
2427         * gst/base/gstbasetransform.h:
2428         * gst/base/gstcollectpads.c: (gst_collect_pads_add_pad),
2429         (gst_collect_pads_event):
2430         * gst/base/gstcollectpads.h:
2431         * gst/elements/gstfakesrc.c: (gst_fake_src_init),
2432         (gst_fake_src_create):
2433         * gst/elements/gstfakesrc.h:
2434         * gst/elements/gstidentity.c: (gst_identity_transform_ip):
2435         * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
2436         (gst_segment_set_last_stop), (gst_segment_set_seek),
2437         (gst_segment_set_newsegment), (gst_segment_to_stream_time),
2438         (gst_segment_to_running_time), (gst_segment_clip):
2439         * gst/gstsegment.h:
2440         More segment updates, replace code in plugins with segment
2441         helper functions.
2442
2443 2005-11-21  Jan Schmidt  <thaytan@mad.scientist.com>
2444
2445         * gst/elements/gstfdsrc.c: (gst_fdsrc_uri_set_uri):
2446         Don't ignore sscanf results
2447
2448 2005-11-21  Andy Wingo  <wingo@pobox.com>
2449
2450         * gst/gstpad.h (GST_IS_PAD_FAST): Removed.
2451
2452         * *.h:
2453         * *.c: Ran scripts/update-macros. Oh yes.
2454
2455         * gst/gstobject.h (GST_OBJECT_GET_LOCK, GST_OBJECT_LOCK)
2456         (GST_OBJECT_TRYLOCK, GST_OBJECT_UNLOCK): Renamed from
2457         GST_GET_LOCK, etc.
2458
2459         * scripts/update-macros: New script. Run it on your files to
2460         change GST_LOCK to GST_OBJECT_LOCK, and the same for UNLOCK as
2461         well.
2462
2463 2005-11-21  Stefan Kost  <ensonic@users.sf.net>
2464
2465         * docs/gst/Makefile.am:
2466         * docs/gst/gstreamer-docs.sgml:
2467         * docs/gst/gstreamer-sections.txt:
2468         * docs/gst/gstreamer.types:
2469         * gst/gstinfo.h:
2470           more docs fixes, add new api to the docs
2471
2472 2005-11-21  Andy Wingo  <wingo@pobox.com>
2473
2474         * gst/gstbin.c (gst_bin_remove_func): Wim claims I can remove this
2475         state_broadcast call.
2476
2477         * gst/gstsegment.c (gst_segment_init): Initialize abs_rate.
2478
2479 2005-11-21  Julien MOUTTE  <julien@moutte.net>
2480
2481         * gst/gstvalue.c: (gst_value_intersect_array): Fix wrong
2482         function calls for arrays.
2483
2484 2005-11-21  Stefan Kost  <ensonic@users.sf.net>
2485
2486         * docs/random/ensonic/media-device-daemon.txt:
2487           wild idea, can this be done?
2488         * docs/gst/gstreamer-sections.txt:
2489         * gst/gsterror.h:
2490         * gst/gstfilter.c:
2491         * gst/gstfilter.h:
2492         * gst/gstplugin.h:
2493         * gst/gstpluginfeature.c:
2494         * gst/gsttrace.c:
2495         * gst/gstvalue.c:
2496         * gst/gstvalue.h:
2497           doc fixes and additions
2498
2499 2005-11-21  Andy Wingo  <wingo@pobox.com>
2500
2501         * gst/base/gstbasesrc.c (GST_LIVE_BROADCAST, GST_LIVE_SIGNAL) 
2502         (GST_LIVE_TIMED_WAIT, GST_LIVE_WAIT, GST_LIVE_GET_COND) 
2503         (GST_LIVE_UNLOCK, GST_LIVE_TRYLOCK, GST_LIVE_LOCK) 
2504         (GST_LIVE_GET_LOCK): Moved here from gstbasesrc.h. They are
2505         private to the basesrc implementation.
2506
2507         * gst/gstpad.c (gst_pad_send_event): Doc more. Take stream lock on
2508         behalf of event function if necessary. It should no longer be
2509         necessary to take the stream lock in pad's event functions. Fixes
2510         #320299.
2511
2512 2005-11-21  Jan Schmidt  <thaytan@mad.scientist.com>
2513         * docs/gst/gstreamer-sections.txt:
2514         * gst/gststructure.c: (gst_structure_fixate_field_nearest_int),
2515         (gst_structure_fixate_field_nearest_double),
2516         (gst_structure_fixate_field_boolean):
2517         * gst/gststructure.h:
2518         * win32/common/libgstreamer.def:
2519         * win32/gstreamer.def:
2520
2521         Rename gst_caps_structure_fixate_* to gst_structure_fixate_*
2522         (#322027)
2523
2524 2005-11-21  Jan Schmidt  <thaytan@mad.scientist.com>
2525
2526         * gst/elements/gstfdsrc.c: (_do_init), (gst_fdsrc_class_init),
2527         (gst_fdsrc_init), (gst_fdsrc_dispose), (gst_fdsrc_set_property),
2528         (gst_fdsrc_uri_get_type), (gst_fdsrc_uri_get_protocols),
2529         (gst_fdsrc_uri_get_uri), (gst_fdsrc_uri_set_uri),
2530         (gst_fdsrc_uri_handler_init):
2531         * gst/elements/gstfdsrc.h:
2532           Port fd:// URI handler from 0.8 to fdsrc
2533
2534 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
2535
2536         * gst/gstvalue.c: (gst_value_transform_fourcc_string),
2537         (gst_value_serialize_fourcc):
2538         * gst/gstvalue.h:
2539           Drop leading '%' from GST_FOURCC_FORMAT, thus making it
2540           consistent with our other format defines (#320324).
2541
2542 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
2543
2544         * gst/gstvalue.c: (gst_value_is_fixed):
2545           Revert previous commit. Value lists are by definition
2546           not fixed, as they are a list of possible values.
2547
2548 2005-11-21  Andy Wingo  <wingo@pobox.com>
2549
2550         * gst/gstevent.h (GST_EVENT_FILLER): Removed. Can be added back
2551         during the stable series if we need it. Fixes #319178.
2552
2553         * gst/gstevent.c (gst_event_new_filler): Removed.
2554
2555         * check/gst/gstevent.c: Update comment about filler events.
2556
2557 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
2558
2559         * gst/gstvalue.c: (gst_value_is_fixed):
2560           Should handle both value arrays and value lists.
2561
2562 2005-11-21  Andy Wingo  <wingo@pobox.com>
2563
2564         patch by: Alessandro Dessina <alessandro nnva org>
2565
2566         * gst/gstvalue.c (gst_value_is_fixed): Use gst_value_array
2567         functions to access arrays. Fixes #321962.
2568
2569 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
2570
2571         * docs/gst/gstreamer.types:
2572           gst_collectpads_get_type => gst_collect_pads_get_type.
2573           
2574         * gst/base/gstbasetransform.c:
2575           Remove unused SIGNAL_HANDOFF enum.
2576
2577 2005-11-21  Andy Wingo  <wingo@pobox.com>
2578
2579         * gst/gstevent.h (GstEventTypeFlags): New data type, the flags of
2580         the event type (upstream, downstream, serialized). Renamed
2581         GST_EVDIR_* and GST_EVSER to GST_EVENT_TYPE_*.
2582         (GstEventType): Use GstEventTypeFlags. Rename CUSTOM_UP to
2583         CUSTOM_UPSTREAM, CUSTOM_DS to CUSTOM_DOWNSTREAM, etc.
2584
2585         * gst/gstevent.c: Update for new CUSTOM event names.
2586
2587         * check/gst/gstevent.c: Update check for new CUSTOM event names.
2588
2589         * gst/gstevent.h:
2590         * gst/gstevent.c (gst_event_type_get_flags): New function. Fixes
2591         bug #319392.
2592
2593 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
2594
2595         * docs/gst/gstreamer-sections.txt:
2596         * win32/common/libgstbase.def:
2597         * win32/libgstbase.def:
2598         * gst/base/gstcollectpads.c: (gst_collect_pads_base_init),
2599         (gst_collect_pads_class_init), (gst_collect_pads_init),
2600         (gst_collect_pads_finalize), (gst_collect_pads_new),
2601         (gst_collect_pads_set_function), (gst_collect_pads_add_pad),
2602         (gst_collect_pads_remove_pad), (gst_collect_pads_is_active),
2603         (gst_collect_pads_collect), (gst_collect_pads_collect_range),
2604         (gst_collect_pads_start), (gst_collect_pads_stop),
2605         (gst_collect_pads_peek), (gst_collect_pads_pop),
2606         (gst_collect_pads_available), (gst_collect_pads_read),
2607         (gst_collect_pads_flush), (gst_collect_pads_event),
2608         (gst_collect_pads_chain):
2609         * gst/base/gstcollectpads.h:
2610           Rename gst_collecpads_foo() => gst_collect_pads_foo(). Document
2611           unimplemented functions as unimplemented. Add padding to
2612           GstCollectData. (#320766, #320423)
2613
2614 2005-11-21  Tim-Philipp Müller  <tim at centricular dot net>
2615
2616         * gst/gstmessage.c:
2617           Improve docs for DURATION message (usage of duration parameter)
2618           (#320113)
2619
2620 2005-11-20  Wim Taymans  <wim@fluendo.com>
2621
2622         * check/Makefile.am:
2623         * check/gst/gstsegment.c: (GST_START_TEST), (gstevents_suite),
2624         (main):
2625         * gst/Makefile.am:
2626         * gst/gst.h:
2627         * gst/gstsegment.c: (gst_segment_init), (gst_segment_set_duration),
2628         (gst_segment_set_seek), (gst_segment_set_newsegment),
2629         (gst_segment_to_stream_time), (gst_segment_to_running_time),
2630         (gst_segment_clip):
2631         * gst/gstsegment.h:
2632         Added segment helper structure and methods. Not fully implemented
2633         yet.
2634         Added segment check.
2635
2636 2005-11-20  Jan Schmidt  <thaytan@mad.scientist.com>
2637
2638         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
2639           Add a deserialisation test for fractions
2640         * examples/metadata/read-metadata.c: (message_loop),
2641         (make_pipeline), (main):
2642           Fix up metadata reading sample.
2643         * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
2644           Debug format fix
2645         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
2646           Don't try and fixate empty caps
2647         * gst/gst_private.h:
2648           Wrap in G_BEGIN_DECLS/G_END_DECLS
2649         * gst/gstvalue.c: (gst_value_collect_fraction),
2650         (gst_value_set_fraction), (gst_value_get_fraction_denominator),
2651         (gst_value_transform_string_fraction),
2652         (gst_value_compare_fraction):
2653           Add some extra guards to ensure that we don't end up 
2654           with an invalid denominator of 0 in a gstfraction and
2655           that fractions always get reduced.
2656
2657 2005-11-20  Wim Taymans  <wim@fluendo.com>
2658
2659         * docs/gst/gstreamer-sections.txt:
2660         * gst/gstbuffer.h:
2661         * gst/gstelement.c:
2662         * gst/gstformat.c:
2663         * gst/gstformat.h:
2664         * gst/gstindex.h:
2665         * gst/gstquery.c:
2666         * gst/gstquery.h:
2667         * gst/gstvalue.c:
2668         Doc fixes.
2669
2670 2005-11-20  Wim Taymans  <wim@fluendo.com>
2671
2672         * docs/design/part-TODO.txt:
2673         * gst/gstcaps.h:
2674         Make a proper enum of the flag.
2675
2676 2005-11-19  Wim Taymans  <wim@fluendo.com>
2677
2678         * docs/design/part-TODO.txt:
2679         * gst/gstformat.c: (_gst_format_initialize), (gst_format_get_name),
2680         (gst_format_to_quark), (gst_format_register):
2681         * gst/gstformat.h:
2682         * gst/gstquery.c: (_gst_query_initialize),
2683         (gst_query_type_get_name), (gst_query_type_to_quark),
2684         (gst_query_type_register):
2685         * gst/gstquery.h:
2686         Add type to quark and type to string conversions.
2687
2688 2005-11-19  Andy Wingo  <wingo@pobox.com>
2689
2690         * gst/gstbuffer.h (GST_BUFFER_FLAG_ORIGINAL): Removed. Fixes
2691         #320097.
2692
2693 2005-11-19  Wim Taymans  <wim@fluendo.com>
2694
2695         * docs/design/part-TODO.txt:
2696         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
2697         (gst_bin_add_func), (gst_bin_remove_func), (bin_bus_handler),
2698         (gst_bin_handle_message_func):
2699         * gst/gstbin.h:
2700         Make message handling overridable.
2701
2702 2005-11-19  Andy Wingo  <wingo@pobox.com>
2703
2704         * gst/gstpad.h (GST_PAD_IS_USABLE): Removed. Fixes #321235.
2705
2706         * gst/gstclock.h:
2707         * gst/gstclock.c (GstClock, GstClockClass): Change resolution to
2708         be a GstClockTime.
2709         (gst_clock_set_resolution, gst_clock_get_resolution): Resolution
2710         is a GstClockTime. Fixes #321710.
2711
2712         * gst/gstclock.h (GstClock): Remove offset property. Add
2713         internal_calibration and external_calibration. Fix padding. Pad
2714         also by GstClockTime so we don't run into problems.
2715
2716         * gst/gstclock.c (gst_clock_set_rate_offset): Remove.
2717         (gst_clock_get_rate_offset): Remove.
2718         (gst_clock_set_time_adjust): Remove. Fixes #321712.
2719
2720         * gst/gstutils.h:
2721         * gst/gstutils.c (g_static_rec_cond_wait)
2722         (g_static_rec_cond_timed_wait): Removed, no longer needed.
2723
2724         * gst/gstbin.c: Remove terrible continue_state prototype.
2725
2726         * gst/gstelement.h (gst_element_continue_state): Make public.
2727
2728         * gst/gstelement.h:
2729         * gst/gstelement.c (gst_element_commit_state): Removed, replaced
2730         by continue_state. Fixes #319389.
2731
2732         * gst/gstindex.h (GstIndexFilter): Actually pass on the user_data.
2733         Really fixes #168438. However I don't see anywhere where the
2734         filter function is called... stupid GStreamer...
2735         
2736         * gst/gstindex.h (GstIndex): Add field for user_data_destroy. We
2737         don't have a dispose function, so it won't get called when the
2738         object is unreffed, but oh well!
2739
2740         * gst/gstindex.c (gst_index_set_filter_full): New API function,
2741         allows a destroy function to be set so user_data can be freed.
2742         Fixes #168438.
2743         (gst_index_set_filter): Call gst_index_set_filter_full.
2744
2745         * check/gst/gstvalue.c (test_string): Add test for bug #165650.
2746
2747         * gst/gstvalue.c (gst_string_wrap): Trying to serialize a NULL
2748         string should produce an error, given the lack of a way to
2749         represent NULL strings. Fixes #165650.
2750         
2751         * gst/gstvalue.h: 
2752         * gst/gstvalue.c (gst_value_array_append_value) 
2753         (gst_value_array_prepend_value, gst_value_array_get_size) 
2754         (gst_value_array_get_value): New API, copied from
2755         gst_value_list_*, only operates on arrays.
2756         (gst_value_list_append_value, gst_value_list_prepend_value) 
2757         (gst_value_list_concat, gst_value_list_get_size) 
2758         (gst_value_list_get_value): Only operate on lists. Fixes #156633.
2759
2760         * gst/gstvalue.c (gst_value_init_list_or_array): Renamed from
2761         init_list, because it works on both.
2762         (copy_garray_of_gstvalue): Renamed from gst_value_list_copy_array.
2763         (gst_value_copy_list_or_array): Renamed from copy_list.
2764         (gst_value_free_list_or_array): Renamed from free_list.
2765         (gst_value_collect_list_or_array): Renamed from collect_list.
2766         (gst_value_lcopy_list_or_array): Renamed from lcopy_list.
2767         (gst_value_list_or_array_peek_pointer): Renamed from
2768         list_peek_pointer.
2769         (_gst_value_array_value_table, _gst_value_list_value_table):
2770         Update value table functions.
2771         (gst_value_compare_list_or_array): Renamed from compare_list.
2772
2773         * gsttaglist.h: Whoops, foreach function returns void. Also fix
2774         some constness.
2775
2776         * gst/gsttaglist.c:
2777         * gst/gsttaglist.h (gst_tag_list_foreach): Operates on a const
2778         GstTagList*. Fixes #143472.
2779
2780         * gst/gststructure.h: Clarify what the foreach/map functions can
2781         or can't do to their arguments.
2782
2783 2005-11-18  Wim Taymans  <wim@fluendo.com>
2784
2785         * gst/gstclock.c: (gst_clock_set_calibration),
2786         (gst_clock_get_calibration):
2787         Doc and API fixes.
2788         Calibration can be set with internal time equal to current
2789         internal time too.
2790
2791 2005-11-18  Thomas Vander Stichele  <thomas at apestaart dot org>
2792
2793         * gst/gsterror.c:
2794         * gst/gsterror.h:
2795           document
2796
2797 2005-11-18  Andy Wingo  <wingo@pobox.com>
2798
2799         * configure.ac: 
2800         * pkgconfig/gstreamer-net.pc.in:
2801         * pkgconfig/gstreamer-net-uninstalled.pc.in:
2802         * pkgconfig/Makefile.am: Add net pkgconfig files.
2803
2804 2005-11-18  Stefan Kost  <ensonic@users.sf.net>
2805
2806         * gst/gstcaps.c:
2807         * gst/gstghostpad.c:
2808         * gst/gsttrace.c:
2809         * gst/gstvalue.c:
2810         * gst/gstvalue.h:
2811           docs fixes
2812
2813 2005-11-18  Andy Wingo  <wingo@pobox.com>
2814
2815         * gst/net/gstnetclientclock.c: Turn off debugging.
2816
2817         * check/net/gstnetclientclock.c (test_functioning): Assert that the
2818         times connverge somewhat. Can't make a real test.
2819
2820         * gst/net/gstnetclientclock.c (do_linear_regression): Use all
2821         integer arithmetic. Return the minimum of the domain, which can be
2822         set as "internal" for gst_clock_set_calibration.
2823         (gst_net_client_clock_observe_times): Call _set_calibration.
2824         (gst_net_client_clock_new): Call _set_calibration instead of
2825         rate_offset.
2826
2827         * check/net/gstnetclientclock.c (test_functioning): Use the right
2828         adjustment api.
2829
2830         * gst/gstclock.h:
2831         * gst/gstclock.c (gst_clock_get_calibration) 
2832         (gst_clock_set_calibration): New functions, obsolete the ones I
2833         added yesterday. Doh. Precision issues mean we have to extrapolate
2834         from a point in the more recent past than 1970.
2835         (gst_clock_get_rate_offset, gst_clock_set_rate_offset): Mark as
2836         obsolete.
2837         (gst_clock_adjust_unlocked): Use the right calibration data.
2838
2839 2005-11-18  Edward Hervey  <edward@fluendo.com>
2840
2841         * gst/base/gstbasesink.c: (gst_base_sink_change_state): 
2842         Also reset the ->current_* values in READY->PAUSED
2843
2844 2005-11-18  Andy Wingo  <wingo@pobox.com>
2845
2846         * gst/net/gstnetclientclock.c (gst_net_client_clock_thread):
2847         Whoops, check the right fd. Also add some debugging.
2848         (gst_net_client_clock_observe_times): Adjust for int64 offset.
2849         (do_linear_regression): Add a crapload of debugging. Subtract off
2850         the minimum values from the input series to discard unneeded bits.
2851         Use only int arithmetic. There is still double arithmetic when
2852         calculating the intercept that needs fixing. Return boolean to
2853         indicate success; FALSE would mean the domain or range is too
2854         great. Still needs fixes.
2855
2856 2005-11-18  Wim Taymans  <wim@fluendo.com>
2857
2858         * gst/base/gstbasesink.c: (gst_base_sink_get_position):
2859         For the current position in stream time, we need to subtract
2860         accumulated time.
2861         
2862         * gst/gstsystemclock.c: (gst_system_clock_async_thread):
2863         Release lock before calling the callback function of async
2864         entries.
2865
2866 2005-11-18  Andy Wingo  <wingo@pobox.com>
2867
2868         * gst/net/gstnetclientclock.c (gst_net_client_clock_class_init):
2869         Port goes all the way to MAXUINT16.
2870
2871         * gst/net/gstnettimeprovider.c: Make the port range the same as
2872         for the kernel: 0 assigns, otherwise ports are less than
2873         MAXUINT16.
2874
2875         * check/net/gstnettimeprovider.c: Adapt for 0 == kernel assigns
2876         port change.
2877
2878         * check/net/gstnetclientclock.c (test_functioning): Add the start
2879         of another test. 
2880
2881 2005-11-18  Wim Taymans  <wim@fluendo.com>
2882
2883         * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
2884         (gst_bin_remove_func), (bin_bus_handler):
2885         * gst/gstbin.h:
2886         Removing a clock provider from a bin, triggers a clock lost message
2887         so that a new clock will be selected.
2888         Adding a clock to a bin triggers a clock provider message.
2889         Make sure we reselect a clock when we received a clock lost message.
2890         Keep a reference to the element that provided the clock.
2891
2892 2005-11-18  Andy Wingo  <wingo@pobox.com>
2893
2894         * gst/net/gstnetclientclock.c (gst_net_client_clock_new): Adjust
2895         the clock initially so it produces values around the base time.
2896         (gst_net_client_clock_class_init): Typo fix.
2897         (gst_net_client_clock_thread): Add note on when the socket gets
2898         closed.
2899
2900 2005-11-17  Wim Taymans  <wim@fluendo.com>
2901
2902         * gst/net/gstnetclientclock.c: (gst_net_client_clock_finalize):
2903         Free remote and local time arrays.
2904
2905 2005-11-17  Wim Taymans  <wim@fluendo.com>
2906
2907         * gst/net/gstnetclientclock.c: (do_linear_regression),
2908         (gst_net_client_clock_do_select), (gst_net_client_clock_thread):
2909         Fix compilation, uninitialized vars and a forgotten continue.
2910
2911 2005-11-17  Andy Wingo  <wingo@pobox.com>
2912
2913         * check/Makefile.am (check_PROGRAMS): 
2914         * check/net/gstnetclientclock.c: Add a most minimal test for the
2915         net client clock. More to come later.
2916
2917         * gst/net/gstnet.h: 
2918         * gst/net/Makefile.am: Add netclientclock.
2919
2920         * gst/net/gstnetclientclock.h:
2921         * gst/net/gstnetclientclock.c: New files, implement an untested
2922         GstClock that takes its time from a network time provider.
2923         Implements the algorithm in network-clock.scm.
2924
2925         * tests/network-clock.scm (*window-size*): Rename from
2926         *queue-length*.
2927         * tests/network-clock.scm (network-time): 
2928         * tests/network-clock-utils.scm (q-push): Update callers.
2929
2930 2005-11-17  Wim Taymans  <wim@fluendo.com>
2931
2932         * gst/gstbin.c: (gst_bin_provide_clock_func),
2933         (gst_bin_sort_iterator_new):
2934         And unref the child too..
2935
2936 2005-11-17  Wim Taymans  <wim@fluendo.com>
2937
2938         * gst/gstbin.c: (gst_bin_dispose), (gst_bin_provide_clock_func),
2939         (gst_bin_sort_iterator_new), (gst_bin_iterate_sorted):
2940         Refactor the sort iterator so it can be used while holding the
2941         LOCK too.
2942         Make clock selection select a clock closest to the source.
2943
2944 2005-11-17  Michael Smith <msmith@fluendo.com>
2945
2946         * gst/gstclock.c: (gst_clock_init), (gst_clock_adjust_unlocked),
2947         (gst_clock_set_rate_offset), (gst_clock_get_rate_offset):
2948         * gst/gstclock.h:
2949           Anonymous structs are a gcc (and some other compilers) extension, so
2950           don't use them. Since this is only for ABI-compatibility, and our
2951           API/ABI freeze is over in a few days, this whole thing will only
2952           last a few days, so don't bother trying to think up a meaningful
2953           name for the struct.
2954
2955 2005-11-17  Andy Wingo  <wingo@pobox.com>
2956
2957         * gst/gstclock.h (GstClock): Add rate and offset properties,
2958         preserving ABI stability. Add rate/offset accessors. Will file bug
2959         for the freeze break.
2960
2961         * gst/gstclock.c (gst_clock_adjust_unlocked): Implement using rate
2962         and offset, trying to keep precision and avoiding
2963         underflow/overflow.
2964         (gst_clock_set_rate_offset, gst_clock_get_rate_offset): New
2965         functions. Make gst_clock_set_time_adjust obsolete.
2966         (gst_clock_set_time_adjust): Note that this function is obsolete.
2967         Will file bug soon.
2968
2969         * gst/base/gstbasetransform.h: Make the ABI-stability hack
2970         greppable by using GST_PADDING-1+1.
2971
2972 2005-11-17  Torsten Schoenfeld  <kaffeetisch at gmx dot net>
2973
2974         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
2975
2976         * gst/gstmessage.c: (gst_message_parse_clock_lost):
2977           Assertion should check for CLOCK_LOST, not NEW_CLOCK (#321648).
2978
2979         * gst/gstpadtemplate.h:
2980         * gst/gstpluginfeature.h:
2981           Don't use c++ style comments in headers (#321638).
2982
2983 2005-11-16  Andy Wingo  <wingo@pobox.com>
2984
2985         * gst/net/gstnettimepacket.c (gst_net_time_packet_send): Free
2986         buffer.
2987
2988         * check/net/gstnettimeprovider.c: Check to see that the time
2989         provider actually provides times. Works, yo!
2990
2991 2005-11-16  Wim Taymans  <wim@fluendo.com>
2992
2993         * check/Makefile.am:
2994         Enable more tests.
2995
2996         * check/elements/fakesrc.c: (GST_START_TEST):
2997         Set element to NULL before disposing it.
2998
2999 2005-11-16  Andy Wingo  <wingo@pobox.com>
3000
3001         * gst/net/Makefile.am:
3002         * gst/net/gstnet.h:
3003         * gst/net/gstnettimeprovider.c: 
3004         * gst/net/gstnettimeprovider.h: Use the timepacket stuff in the
3005         provider, include it from gstnet.h, and add it to the build.
3006
3007         * gst/net/gstnettimepacket.h: 
3008         * gst/net/gstnettimepacket.c: New files, abstracts out the packet
3009         sending and receiving.
3010
3011 2005-11-16  Wim Taymans  <wim@fluendo.com>
3012
3013         * check/Makefile.am:
3014         Enable valgrind check.
3015
3016         * gst/elements/gstfakesrc.c: (gst_fake_src_alloc_parent),
3017         (gst_fake_src_alloc_buffer):
3018         Fix memleak.
3019
3020 2005-11-16  Wim Taymans  <wim@fluendo.com>
3021
3022         * gst/net/gstnettimeprovider.c: (gst_net_time_provider_finalize):
3023         Call parent finalize too.
3024
3025 2005-11-16  Wim Taymans  <wim@fluendo.com>
3026
3027         * check/Makefile.am:
3028         Enable valgrind check that should work fine now.
3029
3030         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
3031         * gst/gstqueue.c: (gst_queue_init):
3032         Fix memleaks in pad allocation.
3033
3034 2005-11-16  Andy Wingo  <wingo@pobox.com>
3035
3036         * gst/net/Makefile.am:
3037         * gst/net/gstnet.h: New part of core to hold network elements and
3038         objects. Put in core because it exposes API that applications want
3039         to use. The library is named libgstnet-tempname right now because
3040         of the existing libgstnet in gst-plugins-base. Solution is
3041         probably to rename the one in plugins-base; will file a bug for
3042         the freeze break.
3043
3044         * gst/net/gstnettimeprovider.c: 
3045         * gst/net/gstnettimeprovider.h: New object to export a GstClock's
3046         get_time call over the network.
3047
3048         * configure.ac: 
3049         * gst/Makefile.am (lib_LTLIBRARIES): Add gstnet to the build.
3050
3051         * check/Makefile.am:
3052         * check/net/gstnettimeprovider.c: A most minimal test suite. Will
3053         get additions shortly.
3054
3055 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
3056
3057         * gst/gstpad.c: (gst_pad_new_from_static_template):
3058         * gst/gstpad.h:
3059           add gst_pad_new_from_static_template functions
3060         * gst/check/gstcheck.c: (gst_check_setup_src_pad),
3061         (gst_check_setup_sink_pad):
3062         * gst/elements/gsttee.c: (gst_tee_init):
3063           and use them
3064
3065 2005-11-16  Wim Taymans  <wim@fluendo.com>
3066
3067         * gst/gstpad.c: (gst_pad_pause_task):
3068         Removed warning, it's not really an error either.
3069
3070 2005-11-16  Wim Taymans  <wim@fluendo.com>
3071
3072         * gst/base/gstbasetransform.c:
3073         (gst_base_transform_prepare_output_buf),
3074         (gst_base_transform_event):
3075         Check if the caps are NULL, this can happen if the element
3076         is shutting down and the pad caps are set to NULL.
3077
3078 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
3079
3080         * gst/elements/gsttee.c: (gst_tee_init):
3081           fix pad template leak in tee
3082
3083 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
3084
3085         * gst/glib-compat.c: (g_value_dup_gst_object):
3086         * gst/glib-compat.h:
3087         * gst/gstpad.c: (gst_pad_set_property):
3088           use gst_object_ref when setting the pad template; this will
3089           trigger the pad template leaks on GLib 2.6 and the slaves
3090
3091 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
3092
3093         * gst/glib-compat.c: (gst_flags_get_first_value):
3094         * gst/glib-compat.h:
3095         * gst/gstregistryxml.c:
3096           remove functions copied from GLib 2.6
3097
3098 2005-11-16  Michael Smith <msmith@fluendo.com>
3099
3100         * gst/Makefile.am:
3101           Don't link against VALGRIND_LIBS. That was always the wrong thing to
3102           do, but only breaks with newer valgrind versions. We're not a
3103           valgrind tool, we have no link-time dependencies on libcoregrind.
3104
3105 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
3106
3107         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
3108           some debug changes
3109         * gst/gstmessage.h:
3110           typo fixes
3111
3112 2005-11-16  Thomas Vander Stichele  <thomas at apestaart dot org>
3113
3114         * gst/base/gstbasesrc.c: (gst_base_src_init):
3115         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
3116         * gst/gstqueue.c: (gst_queue_init):
3117         * gst/gstregistryxml.c: (load_feature):
3118           Revert all these unrefs, they don't even pass make check !
3119
3120 2005-11-15  Johan Dahlin  <johan@gnome.org>
3121
3122         * gst/base/gstbasesrc.c: (gst_base_src_init):
3123         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
3124         * gst/gstqueue.c: (gst_queue_init): 
3125         Free pad templates, fixes a couple of leaks.
3126
3127 2005-11-15  Daniel Fischer  <dan at f3c dot com>
3128
3129         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
3130
3131         * gst/gstpad.c: (gst_pad_get_property):
3132           GST_PAD_PAD_TEMPLATE(pad) gets the pad template, while
3133           GST_PAD_TEMPLATE(pad) does a cast. We want the former here.
3134           (#321452)
3135
3136 2005-11-15  Wim Taymans  <wim@fluendo.com>
3137
3138         * gst/gstevent.c:
3139         Small doc update.
3140
3141 2005-11-15  Andy Wingo  <wingo@pobox.com>
3142
3143         * gst/gstelement.c (gst_element_set_base_time): Add debugging.
3144
3145         * gst/gstpipeline.c (gst_pipeline_set_new_stream_time): Document
3146         using GST_CLOCK_TIME_NONE to disable base time management.
3147         (do_pipeline_seek, gst_pipeline_change_state): Don't reset stream
3148         time if it was NONE before.
3149         (gst_pipeline_change_state): Only munge the base time if
3150         stream_time != GST_CLOCK_TIME_NONE.
3151
3152         * check/gst/gstpipeline.c (test_base_time): Punt around the
3153         problem of the probe not being called, because that's not the
3154         issue I'm looking at. Add a check that setting stream_time to NONE
3155         disables base time management.
3156         
3157 2005-11-15  Wim Taymans  <wim@fluendo.com>
3158
3159         * gst/base/gstbasesink.c: (gst_base_sink_change_state):
3160         segment_stop == -1 at startup.
3161
3162         * gst/base/gstbasetransform.c: (gst_base_transform_event),
3163         (gst_base_transform_change_state):
3164         Init segment values at start.
3165
3166 2005-11-15  Wim Taymans  <wim@fluendo.com>
3167
3168         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
3169         0 segment values are 0 in any format.
3170
3171         * gst/base/gstbasetransform.c: (gst_base_transform_event):
3172         * gst/base/gstbasetransform.h:
3173         Parse newsegment correctly in basetransform
3174
3175         * gst/elements/gstidentity.c: (gst_identity_transform_ip):
3176         Sync to clock using updated segment values.
3177
3178 2005-11-15  Andy Wingo  <wingo@pobox.com>
3179
3180         * check/gst/gstpipeline.c (test_base_time): Add check that the
3181         base time and stream time are reset correctly.
3182
3183 2005-11-15  Wim Taymans  <wim@fluendo.com>
3184
3185         * docs/design/part-TODO.txt:
3186         Some more TODO items.
3187
3188 2005-11-15  Andy Wingo  <wingo@pobox.com>
3189
3190         * gst/elements/gstfakesrc.c (gst_fake_src_create): It's not an
3191         error if the user selected "no clock" as the clocking method.
3192
3193         * check/gst/gstpipeline.c (test_base_time): New test for buffer
3194         timestamps with live capture.
3195
3196         * gst/elements/gstfakesrc.c (gst_fake_src_create): If the datarate
3197         is 0 but we are a live source, timestamp the buffers using the
3198         element's clock.
3199
3200 2005-11-14  Stefan Kost  <ensonic@users.sf.net>
3201
3202         * docs/gst/gstreamer-sections.txt:
3203         * gst/gsterror.c:
3204         * gst/gstghostpad.c:
3205         * gst/gstobject.h:
3206         * gst/gstxml.c:
3207           more section docs
3208
3209 2005-11-14  Wim Taymans  <wim@fluendo.com>
3210
3211         * common/gst.supp:
3212           add suppressions from Wim's Debian machine
3213
3214 2005-11-14  Thomas Vander Stichele  <thomas at apestaart dot org>
3215
3216         * common/gst.supp:
3217           add suppressions from Andy's AMD64 Ubuntu machine
3218
3219 2005-11-14  Andy Wingo  <wingo@pobox.com>
3220
3221         * gst/gstpad.c (gst_pad_set_active): Change docs; parent's
3222         STATE_LOCK not necessary. Fixes #311489.
3223
3224         * gst/gsterror.c (FILE_A_BUG): Be polite *and* helpful. Fixes
3225         #305291.
3226
3227         * gst/gstindex.c (gst_index_add_object): Note in the docs that
3228         this function is not implemented.
3229
3230 2005-11-14  Julien MOUTTE  <julien@moutte.net>
3231
3232         * gst/base/gstbasetransform.c:
3233         (gst_base_transform_prepare_output_buf):
3234         Ref the source pad caps while we need them.
3235         Fixes (#321386)
3236
3237 2005-11-11  Wim Taymans  <wim@fluendo.com>
3238
3239         * docs/gst/gstreamer-sections.txt:
3240         Added some docs for GstCollectData.
3241
3242         * gst/base/gstadapter.c:
3243         Some small code example fix.
3244
3245         * gst/base/gstcollectpads.c:
3246         * gst/base/gstcollectpads.h:
3247         Document some more.
3248
3249 2005-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3250
3251         * configure.ac: back to HEAD
3252
3253 === release 0.9.5 ===
3254
3255 2005-11-11  Thomas Vander Stichele <thomas at apestaart dot org>
3256
3257         * configure.ac:
3258           releasing 0.9.5, "Bike Lunch Day"
3259
3260 2005-11-11  Wim Taymans  <wim@fluendo.com>
3261
3262         * gst/gstbuffer.c: (_gst_buffer_copy):
3263         Copy more flags.
3264
3265         * gst/gstcaps.c: (gst_caps_is_equal):
3266         Fix some docs.
3267         Make _is_equal fast in the trivial cases.
3268
3269         * gst/gstminiobject.c:
3270         * gst/gstminiobject.h:
3271         More docs. Spifify .h file.
3272
3273         * gst/gstutils.c:
3274         Small doc update.
3275
3276 2005-11-11  Wim Taymans  <wim@fluendo.com>
3277
3278         * gst/base/gstbasetransform.c:
3279         (gst_base_transform_prepare_output_buf),
3280         (gst_base_transform_handle_buffer):
3281         Small cleanups.
3282         If we're processing a buffer and need to allocate an output
3283         buffer, we cannot accept a format change. If we did get a 
3284         format change, we have to alloc a buffer ourselves of the 
3285         right size.
3286
3287 2005-11-11  Wim Taymans  <wim@fluendo.com>
3288
3289         * gst/gstpad.c: (gst_pad_get_caps), (gst_pad_peer_get_caps):
3290         While checking the flag for reentrancy in the gstcaps function
3291         is nice to detect recursive invocations, it also makes it 
3292         impossible to call getcaps from multiple threads, which must be
3293         possible. So, checking for recursive calls has to go.
3294
3295 2005-11-11  Michael Smith <msmith@fluendo.com>
3296
3297         * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
3298           Don't sync on buffers that fall partially outside our current
3299           segment. Prevents an assertion failure/abort playing some files.
3300
3301 2005-11-10  Andy Wingo  <wingo@pobox.com>
3302
3303         * check/gst/gstbin.c (test_message_state_changed_children): Style
3304         fix..
3305
3306         * gst/gstbus.c (poll_destroy, poll_func, gst_bus_poll): Implement
3307         gst_bus_poll with the signal watch. Ensures that poll and a signal
3308         watch see the same messages.
3309
3310         * check/gst/gstbus.c (test_watch_with_poll): New test, checks that
3311         a poll and a watch at the same time get the same messages.
3312
3313 2005-11-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3314
3315         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps):
3316         * gst/gstcaps.c: (gst_caps_intersect):
3317           Don't call gst_caps_do_simplify - it doesn't respect order of caps
3318           and it's not needed.
3319
3320 2005-11-10  Wim Taymans  <wim@fluendo.com>
3321
3322         * docs/design/part-TODO.txt:
3323         Updated todo.
3324
3325 2005-11-10  Wim Taymans  <wim@fluendo.com>
3326
3327         * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
3328         * gst/base/gstbasesrc.c: (gst_base_src_wait),
3329         (gst_base_src_do_sync), (gst_base_src_get_range):
3330         Implement clock sync in base class.
3331
3332 2005-11-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3333
3334         patch by: Tim-Philipp Müller <tim at centricular dot net>
3335
3336         * gst/gststructure.c: (gst_structure_parse_field),
3337         (gst_structure_from_string):
3338           Forward-port a 0.8 patch to handle escaped spaces in structure string,
3339           so that gst_parse_launch() can deal with spaces in filtered link
3340           caps (fixes #164479)
3341         * check/gst/capslist.h:
3342         * check/gst/gststructure.c: (GST_START_TEST):
3343           add unit tests for this change
3344
3345 2005-11-10  Wim Taymans  <wim@fluendo.com>
3346
3347         * docs/gst/gstreamer-sections.txt:
3348         * gst/gstelement.c:
3349         * gst/gstelement.h:
3350         Fix docs, move some STATE macros to private.
3351
3352 2005-11-10  Wim Taymans  <wim@fluendo.com>
3353
3354         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
3355         Added check for bug #317341
3356
3357         * gst/gstbuffer.c:
3358         * gst/gstbuffer.h:
3359         Some more spiffifying.
3360
3361         * gst/gstghostpad.c: (gst_ghost_pad_do_link):
3362         Call peer linkfunction if we are a source pad. Totally fixes
3363         #317341
3364
3365         * gst/gstpad.c:
3366         Update docs, source pads should call the peer linkfunction
3367         so they can atomically perform the pad link.
3368
3369 2005-11-09  Wim Taymans  <wim@fluendo.com>
3370
3371         * gst/gstbuffer.c:
3372         * gst/gstbuffer.h:
3373         Uber-spiffy-spiffify some more.
3374
3375 2005-11-09  Tim-Philipp Müller  <tim at centricular dot net>
3376
3377         * gst/base/gstcollectpads.c: (gst_collectpads_add_pad):
3378         * gst/elements/gstfilesink.c: (gst_file_sink_init):
3379         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init):
3380         * gst/gstghostpad.c: (gst_ghost_pad_set_internal),
3381         (gst_ghost_pad_init), (gst_ghost_pad_new_notarget):
3382         * gst/gstpad.c: (gst_pad_init):
3383           Use GST_DEBUG_FUNCPTR() more extensively.
3384
3385 2005-11-09  Wim Taymans  <wim@fluendo.com>
3386
3387         * gst/gstobject.c: (gst_object_class_init):
3388         * gst/gstobject.h:
3389         Documentation fixes.
3390
3391 2005-11-09  Edward Hervey  <edward@fluendo.com>
3392
3393         * gst/gsttypefindfactory.c:
3394         Fix docs.
3395         
3396 2005-11-09  Edward Hervey  <edward@fluendo.com>
3397
3398         * gst/base/gsttypefindhelper.c:
3399         * gst/gsttypefind.c:
3400         * gst/gsttypefind.h:
3401         Fix docs.
3402
3403 2005-11-09  Wim Taymans  <wim@fluendo.com>
3404
3405         * gst/gstiterator.c:
3406         Fix revision data.
3407
3408         * gst/gsttask.c:
3409         * gst/gsttask.h:
3410         Fix docs.
3411
3412 2005-11-09  Wim Taymans  <wim@fluendo.com>
3413
3414         * gst/gstevent.h:
3415         * gst/gsturi.h:
3416         Fix docs.
3417
3418 2005-11-09  Wim Taymans  <wim@fluendo.com>
3419
3420         * docs/gst/gstreamer-sections.txt:
3421         Moved the message async delivery private lock and cond
3422         to the private section.
3423
3424         * gst/gstmessage.c:
3425         * gst/gstmessage.h:
3426         Fixed docs.
3427
3428 2005-11-09  Edward Hervey  <edward@fluendo.com>
3429
3430         * docs/gst/gstreamer-sections.txt:
3431         * gst/gsturi.c:
3432         * gst/gsturi.h:
3433         Document GstURIHandler
3434
3435 2005-11-09  Wim Taymans  <wim@fluendo.com>
3436
3437         * gst/gstiterator.c: (gst_iterator_fold), (gst_iterator_foreach),
3438         (gst_iterator_find_custom):
3439         * gst/gstiterator.h:
3440         Fix iterator docs.
3441
3442 2005-11-09  Wim Taymans  <wim@fluendo.com>
3443
3444         * gst/gstbin.h:
3445         Document another field.
3446
3447         * gst/gststructure.c:
3448         * gst/gststructure.h:
3449         Document.
3450
3451 2005-11-09  Wim Taymans  <wim@fluendo.com>
3452
3453         * gst/gstbin.h:
3454         Documented structs.
3455
3456 2005-11-09  Wim Taymans  <wim@fluendo.com>
3457
3458         * docs/gst/gstreamer-sections.txt:
3459         Added some new macros.
3460
3461         * gst/gstclock.c:
3462         * gst/gstclock.h:
3463         * gst/gstobject.h:
3464         Docs updates.
3465
3466 2005-11-09  Wim Taymans  <wim@fluendo.com>
3467
3468         * docs/design/part-TODO.txt:
3469         Some more items for the TODO
3470
3471         * gst/gstcaps.c:
3472         * gst/gstcaps.h:
3473         Document GstCaps.
3474
3475 2005-11-09  Andy Wingo  <wingo@pobox.com>
3476
3477         * gst/base/gstbasesink.c: Add the beginning of docs here -- have
3478         to work on something else now tho...
3479
3480         * gst/base/gstadapter.c: More adapter docs.
3481
3482         * gst/elements/gstfilesink.c (gst_file_sink_start) 
3483         (gst_file_sink_stop): New functions, replace the state change
3484         handler.
3485         (gst_file_sink_class_init): Hook up the start and stop functions.
3486         (gst_file_sink_base_init): Don't set the state change handler any
3487         more. It was a bit ugly too, being set from here...
3488         (gst_file_sink_get_property, gst_file_sink_set_property):
3489         Cleanups...
3490         (gst_file_sink_set_location): More robust check that doesn't call
3491         GST_STATE. Ugggggg.
3492
3493 2005-11-08  Tim-Philipp Müller  <tim at centricular dot net>
3494
3495         * gst/base/gstbasetransform.c: (gst_base_transform_event):
3496           Hold STREAM_LOCK while pushing newsegment or tag events as well.
3497
3498 2005-11-08  Wim Taymans  <wim@fluendo.com>
3499
3500         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
3501         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
3502         (gst_base_sink_chain), (gst_base_sink_change_state):
3503         * gst/base/gstbasesink.h:
3504         * gst/base/gstbasesrc.h:
3505         * gst/gstelement.h:
3506         * gst/gstevent.h:
3507         Avoid excessive typechecking in macros.
3508
3509         * gst/gstminiobject.c: (gst_mini_object_get_type),
3510         (gst_mini_object_init), (gst_mini_object_new),
3511         (gst_mini_object_free):
3512         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
3513         (gst_object_finalize):
3514         Remove cruft code, optimize alloc_trace.
3515
3516 2005-11-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3517
3518         * docs/faq/gst-uninstalled:
3519           fix up PS1 for systems that try to reset it
3520
3521 2005-11-07  Wim Taymans  <wim@fluendo.com>
3522
3523         * gst/base/gstbasesrc.c: (gst_base_src_init),
3524         (gst_base_src_get_range):
3525         Set the segment_end to -1 initially. Fixed typefind.
3526
3527 2005-11-07  Tim-Philipp Müller  <tim at centricular dot net>
3528
3529         * gst/base/gstadapter.c:
3530           Debug category should be 'adapter', not 'GstAdapter'.
3531           
3532         * gst/base/gstcollectpads.c: (gst_collectpads_base_init),
3533         (gst_collectpads_class_init), (gst_collectpads_init),
3534         (gst_collectpads_peek), (gst_collectpads_pop),
3535         (gst_collectpads_event), (gst_collectpads_chain):
3536           Add debug category and some debugging output. Use boilerplate
3537           macros. Remove some extraneous words from docs.
3538
3539 2005-11-05  Andy Wingo  <wingo@pobox.com>
3540
3541         * gst/base/gstpushsrc.c: Shorten by 30% via use of boilerplate
3542         macro.
3543
3544 2005-11-04  Stefan Kost  <ensonic@users.sf.net>
3545
3546         * docs/gst/gstreamer-sections.txt:
3547         * gst/gstcaps.h:
3548         * gst/gstinfo.c:
3549         * gst/gstminiobject.h:
3550         * gst/gstobject.h:
3551         * gst/gstutils.h:
3552           more docs added
3553
3554 2005-11-04  Wim Taymans  <wim@fluendo.com>
3555
3556         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
3557         Small update to stop at the configured segment_end
3558         position.
3559
3560 2005-11-04  Stefan Kost  <ensonic@users.sf.net>
3561
3562         * gst/gstregistry.c:
3563         * gst/gstregistry.h:
3564           added missing docs
3565
3566 2005-11-04  Edward Hervey  <edward@fluendo.com>
3567
3568         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
3569         Check if we are doing a segment seek and have arrived at the
3570         end of that segment.
3571
3572 2005-11-04  Wim Taymans  <wim@fluendo.com>
3573
3574         * gst/gstbus.c: (gst_bus_post), (gst_bus_set_sync_handler):
3575         Don't leak a mutex unlock in case of an error.
3576
3577         * gst/gstbus.h:
3578         Doc fixes.
3579
3580 2005-11-04  Wim Taymans  <wim@fluendo.com>
3581
3582         * gst/gstbus.c: (gst_bus_class_init), (gst_bus_init),
3583         (gst_bus_post):
3584         Get the context to wake up only once.
3585
3586 2005-11-03  Wim Taymans  <wim@fluendo.com>
3587
3588         * check/states/sinks.c: (GST_START_TEST):
3589         Uncomment fixed check.
3590
3591         * docs/design/part-TODO.txt:
3592         Updated TODO.
3593
3594         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
3595         (gst_base_sink_handle_object), (gst_base_sink_do_sync),
3596         (gst_base_sink_get_position):
3597         If we are going to PLAYING, post the right pending state
3598         when we post the intermediate paused message.
3599
3600         * gst/gstelement.c: (gst_element_continue_state),
3601         (gst_element_set_state_func), (gst_element_change_state):
3602         Don't post state changes that were between the same state
3603         and were not ASYNC.
3604
3605 2005-11-03  Stefan Kost  <ensonic@users.sf.net>
3606
3607         * docs/gst/gstreamer-sections.txt:
3608         * gst/gstcaps.h:
3609         * gst/gstinfo.c:
3610         * gst/gstminiobject.h:
3611         * gst/gstobject.h:
3612         * gst/gstutils.h:
3613           more docs and doc style fixes
3614
3615 2005-11-03  Stefan Kost  <ensonic@users.sf.net>
3616
3617         * docs/gst/gstreamer-sections.txt:
3618         * gst/gstelement.c:
3619         * gst/gstminiobject.c:
3620         doc fixes
3621
3622 2005-11-03  Andy Wingo  <wingo@pobox.com>
3623
3624         * check/states/sinks.c (test_livesrc_sink): Add checks that the
3625         state-changed messages actually have the right order and the right
3626         values.
3627
3628 2005-11-03  Wim Taymans  <wim@fluendo.com>
3629
3630         * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
3631         Added some more checks. Specifically the case where NO_PREROLL
3632         elements are in the pipeline.
3633
3634         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
3635         (gst_base_sink_handle_object), (gst_base_sink_do_sync),
3636         (gst_base_sink_get_position):
3637         Post READY->PAUSED state change messages too.
3638         Fix bug where VOID was posted as pending state...
3639
3640         * gst/gstbin.c: (gst_bin_recalc_state):
3641         use _element_continue_state() to continue the state change.
3642
3643         * gst/gstelement.c: (gst_element_continue_state),
3644         (gst_element_commit_state), (gst_element_set_state_func),
3645         (gst_element_change_state), (gst_element_change_state_func):
3646         Lots of state change cleanups, assign the STATE_RETURN in
3647         a new continue_state() function that also propagates the
3648         last return value from a state change to the app.
3649         Update some debug statements with proper category.
3650
3651 2005-11-03  Wim Taymans  <wim@fluendo.com>
3652
3653         * docs/design/part-events.txt:
3654         * docs/design/part-gstpipeline.txt:
3655         * docs/design/part-messages.txt:
3656         * docs/design/part-overview.txt:
3657         * docs/design/part-seeking.txt:
3658         * docs/design/part-states.txt:
3659         * docs/design/part-trickmodes.txt:
3660         * docs/manual/advanced-position.xml:
3661         Small docs updates.
3662
3663         * gst/gstobject.h:
3664         People think !! is ugly, this looks better.
3665
3666         * gst/gstpad.c: (gst_pad_set_blocked_async):
3667         Remove !! since it's fixed elsewhere now.
3668
3669 2005-11-03  Tim-Philipp Müller  <tim at centricular dot net>
3670
3671         * gst/gstminiobject.h:
3672         * gst/gstobject.h:
3673           Add !! to _FLAG_IS_SET macros to make the result boolean.
3674
3675 2005-11-03  Edward Hervey  <edward@fluendo.com>
3676
3677         * gst/gstpad.c: (gst_pad_set_blocked_async):
3678         comparing a flag and a gboolean rarely returns coherent results...
3679         Added two characters (!!) to make that work correctly.
3680         
3681 2005-11-03  Tim-Philipp Müller  <tim at centricular dot net>
3682
3683         * gst/gstbus.c: (gst_bus_class_init):
3684           Fix some typos.
3685           
3686         * gst/gstqueue.c: (gst_queue_loop):
3687           Don't assume a miniobject that isn't a buffer is an
3688           event (it could be that there is a refcounting
3689           problem somewhere and the pointer is stale and
3690           refers to an already destroyed miniobject).
3691
3692 2005-11-03  Julien MOUTTE  <julien@moutte.net>
3693
3694         * gst/gstpad.c: (gst_pad_alloc_buffer): Fix some typos.
3695
3696 2005-11-03  Tim-Philipp Müller  <tim at centricular dot net>
3697
3698         * docs/manual/advanced-position.xml:
3699           Update seek example and explanations to current 0.9 API.
3700
3701         * gst/elements/gsttypefindelement.c:
3702         (gst_type_find_element_activate):
3703           Remove FIXME comment now that the found caps
3704           are unreffed.
3705
3706 2005-11-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3707
3708         * gst/gstregistryxml.c: (load_feature):
3709           Add another GST_STR_NULL instance
3710
3711 2005-11-02  Edward Hervey  <edward@fluendo.com>
3712
3713         * gst/gstpad.c: (handle_pad_block):
3714         Follow-up to Wim's patch, solves deadlock for blocked and flushing pads
3715         
3716 2005-11-02  Wim Taymans  <wim@fluendo.com>
3717
3718         * gst/gstbin.c:
3719         Fix typo in docs.
3720
3721         * gst/gstelement.c: (gst_element_commit_state):
3722         Remove unused value.
3723
3724         * gst/gstiterator.c:
3725         Mention that the returned element is reffed in the docs.
3726
3727 2005-11-02  Wim Taymans  <wim@fluendo.com>
3728
3729         * gst/gstpad.c: (gst_pad_alloc_buffer), (handle_pad_block),
3730         (gst_pad_push), (gst_pad_push_event):
3731         Unlock blocked pads when they are flushed.
3732
3733 2005-11-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3734
3735         * docs/README:
3736         * docs/gst/gstreamer-sections.txt:
3737         * gst/gstbin.c:
3738           doc updates
3739         * gst/gstregistry.c: (gst_registry_scan_path_level):
3740           fix for a nasty little missed situation where an installed plug-in
3741           which was in the cache did not get overridden by an uninstalled one
3742           which was earlier in the plugin path because the newly created plugin
3743           for the uninstalled one (not in the registry) didn't get its
3744           ->registered set to TRUE
3745
3746 2005-11-02  Tim-Philipp Müller  <tim at centricular dot net>
3747
3748         * gst/base/gstcollectpads.c: (gst_collectpads_set_function),
3749         (gst_collectpads_add_pad), (gst_collectpads_remove_pad),
3750         (gst_collectpads_is_active), (gst_collectpads_collect),
3751         (gst_collectpads_collect_range), (gst_collectpads_start),
3752         (gst_collectpads_stop), (gst_collectpads_peek),
3753         (gst_collectpads_pop), (gst_collectpads_available),
3754         (gst_collectpads_read), (gst_collectpads_flush):
3755           Guard public API with assertions.
3756         
3757         * gst/gstpad.c:
3758           Fix docs for gst_pad_set_link_function().
3759
3760 2005-11-02  Johan Dahlin  <johan@gnome.org>
3761
3762         * gst/elements/gsttypefindelement.c (gst_type_find_element_activate): 
3763         Unref found_caps after we used it.
3764
3765 2005-11-02  Tim-Philipp Müller  <tim at centricular dot net>
3766
3767         * gst/base/gstcollectpads.c: (gst_collectpads_peek):
3768           Don't try to ref NULL.
3769
3770 2005-11-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3771
3772         * win32/common/config.h.in:
3773           provide a GST_FUNCTION that just gives a string for now
3774
3775 2005-11-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3776
3777         * win32/common/gstenumtypes.c: (register_gst_object_flags),
3778         (gst_object_flags_get_type), (register_gst_bin_flags),
3779         (gst_bin_flags_get_type), (register_gst_buffer_flag),
3780         (gst_buffer_flag_get_type), (register_gst_bus_flags),
3781         (gst_bus_flags_get_type), (register_gst_bus_sync_reply),
3782         (gst_bus_sync_reply_get_type), (register_gst_clock_return),
3783         (gst_clock_return_get_type), (register_gst_clock_entry_type),
3784         (gst_clock_entry_type_get_type), (register_gst_clock_flags),
3785         (gst_clock_flags_get_type), (register_gst_state),
3786         (gst_state_get_type), (register_gst_state_change_return),
3787         (gst_state_change_return_get_type), (register_gst_state_change),
3788         (gst_state_change_get_type), (register_gst_element_flags),
3789         (gst_element_flags_get_type), (register_gst_core_error),
3790         (gst_core_error_get_type), (register_gst_library_error),
3791         (gst_library_error_get_type), (register_gst_resource_error),
3792         (gst_resource_error_get_type), (register_gst_stream_error),
3793         (gst_stream_error_get_type), (register_gst_event_type),
3794         (gst_event_type_get_type), (register_gst_seek_type),
3795         (gst_seek_type_get_type), (register_gst_seek_flags),
3796         (gst_seek_flags_get_type), (register_gst_format),
3797         (gst_format_get_type), (register_gst_index_certainty),
3798         (gst_index_certainty_get_type), (register_gst_index_entry_type),
3799         (gst_index_entry_type_get_type),
3800         (register_gst_index_lookup_method),
3801         (gst_index_lookup_method_get_type), (register_gst_assoc_flags),
3802         (gst_assoc_flags_get_type), (register_gst_index_resolver_method),
3803         (gst_index_resolver_method_get_type), (register_gst_index_flags),
3804         (gst_index_flags_get_type), (register_gst_debug_level),
3805         (gst_debug_level_get_type), (register_gst_debug_color_flags),
3806         (gst_debug_color_flags_get_type), (register_gst_iterator_result),
3807         (gst_iterator_result_get_type), (register_gst_iterator_item),
3808         (gst_iterator_item_get_type), (register_gst_message_type),
3809         (gst_message_type_get_type), (register_gst_mini_object_flags),
3810         (gst_mini_object_flags_get_type), (register_gst_pad_link_return),
3811         (gst_pad_link_return_get_type), (register_gst_flow_return),
3812         (gst_flow_return_get_type), (register_gst_activate_mode),
3813         (gst_activate_mode_get_type), (register_gst_pad_direction),
3814         (gst_pad_direction_get_type), (register_gst_pad_flags),
3815         (gst_pad_flags_get_type), (register_gst_pad_presence),
3816         (gst_pad_presence_get_type), (register_gst_pad_template_flags),
3817         (gst_pad_template_flags_get_type), (register_gst_pipeline_flags),
3818         (gst_pipeline_flags_get_type), (register_gst_plugin_error),
3819         (gst_plugin_error_get_type), (register_gst_plugin_flags),
3820         (gst_plugin_flags_get_type), (register_gst_rank),
3821         (gst_rank_get_type), (register_gst_query_type),
3822         (gst_query_type_get_type), (register_gst_tag_merge_mode),
3823         (gst_tag_merge_mode_get_type), (register_gst_tag_flag),
3824         (gst_tag_flag_get_type), (register_gst_task_state),
3825         (gst_task_state_get_type), (register_gst_alloc_trace_flags),
3826         (gst_alloc_trace_flags_get_type),
3827         (register_gst_type_find_probability),
3828         (gst_type_find_probability_get_type), (register_gst_uri_type),
3829         (gst_uri_type_get_type), (register_gst_parse_error),
3830         (gst_parse_error_get_type):
3831         * win32/common/gstversion.h:
3832           update win32 copies
3833
3834 2005-11-01  Luca Ognibene  <luogni@tin.it>
3835
3836         * gst/gst.c:
3837           fix docs. popt is dead, long live GOption.
3838
3839 2005-10-31  Wim Taymans  <wim@fluendo.com>
3840
3841         * gst/gstbuffer.h:
3842         Small doc fix.
3843
3844 2005-10-31  Andy Wingo  <wingo@pobox.com>
3845
3846         * Boo!
3847
3848         * gst/gstqueue.c (gst_queue_chain): Fix downstream leaky mode.
3849
3850         * gst/gstobject.c (gst_object_dispatch_properties_changed): No
3851         need to serialize property notifications on GLib 2.8. GLib 2.6 has
3852         the possibility of deadlocks here if code calling notify() or
3853         set() has a lock that can be taken in another notify handler (ABBA
3854         with class lock and e.g. python GIL state lock).
3855
3856 2005-10-28  Julien MOUTTE  <julien@moutte.net>
3857
3858         * gst/gstbus.c: Doc updates.
3859
3860 2005-10-28  Wim Taymans  <wim@fluendo.com>
3861
3862         * docs/design/part-TODO.txt:
3863         * gst/gstiterator.c:
3864         * gst/gstsystemclock.c:
3865         * gst/gstsystemclock.h:
3866         Doc updates.
3867
3868 2005-10-28  Edward Hervey  <edward@fluendo.com>
3869
3870         * docs/gst/gstreamer-docs.sgml:
3871         * docs/gst/gstreamer-sections.txt:
3872         the GstURIType documentation page is private, it only defines GstURIType
3873         which should be defined in the GstURIHandler page
3874         
3875 2005-10-28  Thomas Vander Stichele  <thomas at apestaart dot org>
3876
3877         * gst/gstbin.c: (gst_bin_class_init):
3878         * gst/gstbin.h:
3879         * gst/gstutils.c:
3880         Documentation updates.
3881
3882 2005-10-28  Wim Taymans  <wim@fluendo.com>
3883
3884         * docs/gst/gstreamer-sections.txt:
3885         * gst/gstclock.c:
3886         * gst/gstclock.h:
3887         Documented the clocks.
3888
3889 2005-10-28  Stefan Kost  <ensonic@users.sf.net>
3890
3891         * docs/gst/gstreamer-sections.txt:
3892           move some macros to private sections
3893         * gst/gstminiobject.c:
3894         * gst/gstminiobject.h:
3895           add descriptions provided by ds and some more
3896         * gst/gstpad.h:
3897           mark macro as to be removed
3898
3899 2005-10-28  Wim Taymans  <wim@fluendo.com>
3900
3901         * docs/design/part-TODO.txt:
3902         Add an item to TODO.
3903
3904         * gst/gstiterator.c: (gst_iterator_fold),
3905         (gst_iterator_find_custom):
3906         * gst/gstiterator.h:
3907         Add iterator docs.
3908
3909 2005-10-28  Wim Taymans  <wim@fluendo.com>
3910
3911         * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
3912         (gst_base_transform_init):
3913         Don't leak class.
3914
3915         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_loop):
3916         An EOS event marks the queue as completely filled.
3917
3918 2005-10-27  Wim Taymans  <wim@fluendo.com>
3919
3920         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3921         (gst_base_sink_do_sync), (gst_base_sink_get_position):
3922         Some more debugging.
3923
3924         * gst/base/gstbasetransform.c: (gst_base_transform_finalize),
3925         (gst_base_transform_init), (gst_base_transform_buffer_alloc),
3926         (gst_base_transform_event), (gst_base_transform_getrange),
3927         (gst_base_transform_chain):
3928         * gst/base/gstbasetransform.h:
3929         Fix debugging,
3930         Protect transform and concurrent buffer alloc with a new lock.
3931         Try not to break ABI/API.
3932
3933 2005-10-27  Wim Taymans  <wim@fluendo.com>
3934
3935         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
3936         (gst_base_src_init), (gst_base_src_query),
3937         (gst_base_src_default_newsegment),
3938         (gst_base_src_configure_segment), (gst_base_src_do_seek),
3939         (gst_base_src_send_event), (gst_base_src_event_handler),
3940         (gst_base_src_pad_get_range), (gst_base_src_loop),
3941         (gst_base_src_unlock), (gst_base_src_default_negotiate),
3942         (gst_base_src_start), (gst_base_src_deactivate),
3943         (gst_base_src_activate_push), (gst_base_src_change_state):
3944         Move some stuff around and cleanup things.
3945
3946 2005-10-27  Tim-Philipp Müller  <tim at centricular dot net>
3947
3948         * gst/base/gstbasesrc.c: (gst_base_src_query):
3949           Add missing break statements.
3950
3951 2005-10-27  Wim Taymans  <wim@fluendo.com>
3952
3953         * check/gst/gstbin.c: (GST_START_TEST):
3954         An extra refcount is taken in basesrc.
3955
3956         * gst/base/gstbasesrc.c: (gst_base_src_init), (gst_base_src_query),
3957         (gst_base_src_get_range), (gst_base_src_pad_get_range),
3958         (gst_base_src_loop):
3959         Small cleanups, check for flushing after being unlocked from the 
3960         LIVE_LOCK. take refcounts correctly (not yet everywhere).
3961         Don't send out EOS when going to READY.
3962
3963 2005-10-27  Wim Taymans  <wim@fluendo.com>
3964
3965         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
3966         (gst_base_sink_get_position):
3967         Some more debug.
3968
3969         * gst/gstbin.c: (message_check), (bin_replace_message),
3970         (bin_remove_messages), (is_eos), (gst_bin_add_func),
3971         (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
3972         (bin_query_duration_init), (bin_query_duration_fold),
3973         (bin_query_duration_done), (bin_query_generic_fold),
3974         (gst_bin_query):
3975         * tools/gst-launch.c: (main):
3976         Remove old option.
3977
3978 2005-10-26  Stefan Kost  <ensonic@users.sf.net>
3979
3980         * examples/controller/audio-example.c: (main):
3981         * examples/queue/queue.c: (event_loop):
3982         * gst/base/gstbasetransform.h:
3983         * gst/gstelement.c: (gst_element_send_event):
3984         * gst/gstevent.h:
3985         * gst/gstpad.c: (gst_pad_send_event):
3986           fixing examples
3987           fixing docs typos
3988           changing log priority in error situations
3989
3990 2005-10-25  Wim Taymans  <wim@fluendo.com>
3991
3992         * gst/gstbin.c: (message_check), (bin_replace_message),
3993         (bin_remove_messages), (is_eos), (gst_bin_add_func),
3994         (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
3995         (bin_query_duration_init), (bin_query_duration_fold),
3996         (bin_query_duration_done), (bin_query_generic_fold),
3997         (gst_bin_query):
3998         Some doc and debug updates.
3999         Cache previously requested query DURATION for speed. invalidate
4000         cached duration if element posts a DURATION message.
4001
4002 2005-10-25  Wim Taymans  <wim@fluendo.com>
4003
4004         * docs/design/part-TODO.txt:
4005         Update TODO.
4006
4007         * gst/gstbin.c: (message_check), (bin_replace_message),
4008         (bin_remove_messages), (is_eos), (gst_bin_add_func),
4009         (update_degree), (gst_bin_sort_iterator_next), (bin_bus_handler),
4010         (bin_query_duration_init), (bin_query_duration_fold),
4011         (bin_query_duration_done), (bin_query_generic_fold),
4012         (gst_bin_query):
4013         Handle SEGMENT_START/DONE messages correctly.
4014         More evolved query algorithm that handles duration queries
4015         correctly.
4016
4017         * gst/gstelement.c: (gst_element_send_event), (gst_element_query),
4018         (gst_element_get_state_func), (gst_element_abort_state),
4019         (gst_element_commit_state), (gst_element_lost_state):
4020         Some more debugging.
4021
4022         * gst/gstmessage.h:
4023         Added doc.
4024
4025 2005-10-25  Wim Taymans  <wim@fluendo.com>
4026
4027         * gst/base/gstbasesink.c: (gst_base_sink_get_position):
4028         Don't use invalid stream_time.
4029
4030         * gst/gstevent.c: (gst_event_new_newsegment):
4031         stream_time in newsegment cannot be undefined.
4032
4033 2005-10-24  Wim Taymans  <wim@fluendo.com>
4034
4035         * gst/gstbus.c:
4036         Doc fix.
4037
4038         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
4039         (gst_queue_loop):
4040         Fix potential deadlock when QUEUE_LOCK is taken before STREAM_LOCK.
4041
4042 2005-10-24  Stefan Kost  <ensonic@users.sf.net>
4043
4044         * docs/libs/tmpl/gstdparam.sgml:
4045         * docs/libs/tmpl/gstdplinint.sgml:
4046         * docs/libs/tmpl/gstdpman.sgml:
4047         * docs/libs/tmpl/gstdpsmooth.sgml:
4048         * docs/libs/tmpl/gstunitconvert.sgml:
4049           these are obsolete
4050
4051 2005-10-24  Thomas Vander Stichele  <thomas at apestaart dot org>
4052
4053         * configure.ac:
4054           back to HEAD
4055
4056 === release 0.9.4 ===
4057
4058 2005-10-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4059
4060         * configure.ac:
4061           releasing 0.9.4, "Tyrannosaurus Rex"
4062
4063 2005-10-23  Tim-Philipp Müller  <tim at centricular dot net>
4064
4065         * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
4066         (gst_file_sink_get_current_offset):
4067           Use fseeko() and ftello() if available. When falling back on
4068           lseek() to get the current offset, fflush() first to make sure
4069           everything is up-to-date and we get the right offset.
4070
4071 2005-10-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4072
4073         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
4074         * gst/base/gstbasesrc.c: (gst_base_src_loop):
4075         * gst/gsterror.c: (_gst_stream_errors_init):
4076         * gst/gsterror.h:
4077         * gst/gstqueue.c: (gst_queue_loop):
4078         * po/POTFILES.in:
4079           remove prematurely added error category and clean up the instances
4080
4081 2005-10-21  Wim Taymans  <wim@fluendo.com>
4082
4083         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
4084         (gst_base_sink_get_position), (gst_base_sink_query),
4085         (gst_base_sink_change_state):
4086         Simply set the right flag when going to playing, that's all
4087         we need to do instead of calling a function inside the object
4088         lock (that could take the lock as well and deadlock)
4089
4090 2005-10-21  Wim Taymans  <wim@fluendo.com>
4091
4092         * gst/base/gstbasesrc.c: (gst_base_src_do_seek),
4093         (gst_base_src_loop):
4094         Don't warn, the peer element knows what to do best when
4095         the seek failed, it might try something else.
4096
4097 2005-10-21  Wim Taymans  <wim@fluendo.com>
4098
4099         * gst/base/gstbasesrc.c: (gst_base_src_init),
4100         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
4101         Fix seeking.
4102
4103 2005-10-21  Wim Taymans  <wim@fluendo.com>
4104
4105         * docs/design/part-segments.txt:
4106         More docs.
4107
4108         * gst/elements/gstcapsfilter.c: (gst_capsfilter_prepare_buf):
4109         Correctly set caps, even on the subbufer.
4110
4111 2005-10-21  Wim Taymans  <wim@fluendo.com>
4112
4113         * docs/gst/gstreamer-docs.sgml:
4114         * docs/gst/gstreamer-sections.txt:
4115         * gst/gstelement.h:
4116         * gst/gstevent.c:
4117         * gst/gstevent.h:
4118         * gst/gstmessage.h:
4119         * gst/gstpad.h:
4120         * gst/gstparse.h:
4121         * gst/gsttask.c: (gst_task_finalize), (gst_task_func):
4122         * gst/gsttask.h:
4123         * gst/gstutils.c:
4124         * gst/gstutils.h:
4125         And 2% more doc coverage.
4126
4127 2005-10-21  Andy Wingo  <wingo@pobox.com>
4128
4129         * gst/base/gstbasesrc.c (gst_base_src_query): Clean up percent
4130         position reporting.
4131
4132 2005-10-20  Wim Taymans  <wim@fluendo.com>
4133
4134         * gst/gsterror.c: (gst_error_get_message):
4135         * gst/gstparse.h:
4136         * gst/gstquery.h:
4137         * gst/gststructure.c:
4138         * gst/gsttrace.c:
4139         * gst/gstutils.c:
4140         More docs.
4141
4142 2005-10-20  Wim Taymans  <wim@fluendo.com>
4143
4144         * gst/gstbuffer.h:
4145         * gst/gstpad.c:
4146         * gst/gstparse.c:
4147         Another 1% more coverage.
4148
4149 2005-10-20  Wim Taymans  <wim@fluendo.com>
4150
4151         * docs/gst/gstreamer-sections.txt:
4152         * gst/gstelement.c: (gst_element_get_state_func),
4153         (gst_element_abort_state), (gst_element_commit_state),
4154         (gst_element_lost_state):
4155         * gst/gstevent.h:
4156         * gst/gstquery.c: (gst_query_set_position),
4157         (gst_query_parse_position), (gst_query_set_duration),
4158         (gst_query_parse_duration), (gst_query_new_convert):
4159         * gst/gstutils.c:
4160         Yay! 1% more docs coverage.
4161
4162 2005-10-20  Wim Taymans  <wim@fluendo.com>
4163
4164         * gst/gstpad.h:
4165         * gst/gstquery.c: (gst_query_set_position),
4166         (gst_query_parse_position), (gst_query_set_duration),
4167         (gst_query_parse_duration), (gst_query_new_convert):
4168         * gst/gstquery.h:
4169         * gst/gstutils.c: (gst_element_query_convert):
4170         * gst/gstutils.h:
4171         Docs and consistency fixes.
4172
4173 2005-10-20  Wim Taymans  <wim@fluendo.com>
4174
4175         * gst/gsttask.c:
4176         * gst/gsttask.h:
4177         More docs.
4178
4179 2005-10-20  Wim Taymans  <wim@fluendo.com>
4180
4181         * gst/gstbin.c: (message_check), (bin_replace_message),
4182         (bin_remove_messages), (is_eos), (gst_bin_add_func),
4183         (update_degree), (gst_bin_sort_iterator_next),
4184         (gst_bin_change_state_func), (gst_bin_dispose), (bin_bus_handler):
4185         Reworked the message handling a bit, cache the messages instead of
4186         only the senders. alows us to do more in the future.
4187
4188 2005-10-20  Wim Taymans  <wim@fluendo.com>
4189
4190         * docs/design/part-TODO.txt:
4191         Update TODO
4192
4193         * gst/base/gstbasesink.c: (gst_base_sink_get_position),
4194         (gst_base_sink_query):
4195         Don't use clock time to report position when in EOS.
4196
4197 2005-10-20  Tim-Philipp Müller  <tim at centricular dot net>
4198
4199         * tools/gst-inspect.c: (print_interfaces),
4200         (print_element_properties_info), (print_element_info):
4201           Fix interface output with gst-inspect -a; don't print
4202           newlines after double/float properties.
4203
4204 2005-10-20  Wim Taymans  <wim@fluendo.com>
4205
4206         * gst/base/gstbasesink.c: (gst_base_sink_get_position),
4207         (gst_base_sink_query):
4208         Speed up current position calculation.
4209
4210         * gst/base/gstbasesrc.c: (gst_base_src_query),
4211         (gst_base_src_default_newsegment):
4212         Correctly set stream position in newsegment.
4213
4214         * gst/gstbin.c: (gst_bin_add_func), (add_to_queue),
4215         (update_degree), (gst_bin_sort_iterator_next),
4216         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free):
4217         * gst/gstmessage.c: (gst_message_new_custom):
4218         Clean up debugging info
4219
4220         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
4221         (gst_queue_loop), (gst_queue_handle_src_query):
4222         Pause task faster.
4223
4224 2005-10-19  Wim Taymans  <wim@fluendo.com>
4225
4226         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
4227         (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
4228         Fix query handling again.
4229
4230 2005-10-19  Wim Taymans  <wim@fluendo.com>
4231
4232         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
4233         (gst_base_sink_handle_object), (gst_base_sink_query), (do_playing):
4234         * gst/base/gstbasesrc.c: (gst_base_src_query):
4235         * gst/elements/gstfilesink.c: (gst_file_sink_query):
4236         * gst/elements/gsttypefindelement.c:
4237         (gst_type_find_handle_src_query), (find_element_get_length),
4238         (gst_type_find_element_activate):
4239         API change fix.
4240
4241         * gst/gstquery.c: (gst_query_new_position),
4242         (gst_query_set_position), (gst_query_parse_position),
4243         (gst_query_new_duration), (gst_query_set_duration),
4244         (gst_query_parse_duration), (gst_query_set_segment),
4245         (gst_query_parse_segment):
4246         * gst/gstquery.h:
4247         Bundling query position/duration is not a good idea since duration
4248         does not change much and we don't want to recalculate it for every
4249         position query, so they are separated again..
4250         Base value in segment query is not needed.
4251
4252         * gst/gstqueue.c: (gst_queue_handle_src_query):
4253         * gst/gstutils.c: (gst_element_query_position),
4254         (gst_element_query_duration), (gst_pad_query_position),
4255         (gst_pad_query_duration):
4256         * gst/gstutils.h:
4257         Updates for query API change.
4258         Added some docs here and there.
4259
4260 2005-10-19  Thomas Vander Stichele  <thomas at apestaart dot org>
4261
4262         * check/gst/gstbin.c: (GST_START_TEST):
4263         * check/gst/gstghostpad.c: (GST_START_TEST):
4264         * check/pipelines/cleanup.c: (GST_START_TEST):
4265           wait on thread to die so we can check refcount correctly
4266
4267 2005-10-18  Wim Taymans  <wim@fluendo.com>
4268
4269         * check/pipelines/stress.c: (GST_START_TEST):
4270         Make check a little more time consuming.
4271
4272 2005-10-18  Wim Taymans  <wim@fluendo.com>
4273
4274         * check/Makefile.am:
4275         * check/pipelines/stress.c: (GST_START_TEST),
4276         (simple_launch_lines_suite), (main):
4277         Small state change torture test.
4278
4279         * docs/design/part-states.txt:
4280         * gst/base/gstbasesink.c: (gst_base_sink_commit_state),
4281         (gst_base_sink_handle_object), (gst_base_sink_event), (do_playing),
4282         (gst_base_sink_change_state):
4283         Never take state lock from streaming thread, clean up ugly
4284         hacks. Unfortunatly core does not yet support nice ways to
4285         async commit state.
4286         
4287         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_recalc_state),
4288         (bin_bus_handler):
4289         Start state recalc if a STATE_DIRTY message is posted, but only
4290         on the toplevel bin.
4291
4292         * gst/gstelement.c: (gst_element_sync_state_with_parent),
4293         (gst_element_get_state_func), (gst_element_abort_state),
4294         (gst_element_commit_state), (gst_element_lost_state),
4295         (gst_element_set_state_func), (gst_element_change_state):
4296         * gst/gstelement.h:
4297         State variables are now protected with the LOCK, the state
4298         lock is only used to serialize _set_state().
4299
4300 2005-10-18  Wim Taymans  <wim@fluendo.com>
4301
4302         * check/gst/gstbin.c: (GST_START_TEST):
4303         * check/gst/gstmessage.c: (GST_START_TEST):
4304         * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
4305         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_recalc_func),
4306         (bin_bus_handler):
4307         * gst/gstelement.c: (gst_element_abort_state),
4308         (gst_element_commit_state), (gst_element_lost_state):
4309         * gst/gstmessage.c: (gst_message_new_state_changed),
4310         (gst_message_new_state_dirty), (gst_message_new_segment_start),
4311         (gst_message_new_segment_done), (gst_message_new_duration),
4312         (gst_message_parse_state_changed),
4313         (gst_message_parse_segment_start),
4314         (gst_message_parse_segment_done), (gst_message_parse_duration):
4315         * gst/gstmessage.h:
4316         * tools/gst-launch.c: (event_loop):
4317         Seriously, this is better than a previous commit as we only need
4318         to notify the fact that an element changed state in a streaming
4319         thread, marking the state of the parents dirty, hence the 
4320         STATE_DIRTY message instead of abusing a boolean in a STATE_CHANGE
4321         message.
4322
4323 2005-10-18  Wim Taymans  <wim@fluendo.com>
4324
4325         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_get_state_func),
4326         (gst_bin_recalc_func):
4327         * gst/gstelement.c: (gst_element_set_clock),
4328         (gst_element_abort_state), (gst_element_lost_state):
4329         Cleanups, prepare for state change fixes.
4330
4331 2005-10-18  Wim Taymans  <wim@fluendo.com>
4332
4333         * gst/gstbin.h:
4334         * gst/gstelement.c: (gst_element_class_init),
4335         (gst_element_set_state), (gst_element_set_state_func):
4336         * gst/gstelement.h:
4337         Pending ABI changes.
4338         GThreadPool in GstBinClass to monitor async state changes.
4339         state_cookie in GstElement to detect concurrent gst/set state.
4340         set_state is now virtual too in case a very complicated element
4341         has to be constructed.
4342
4343 2005-10-18  Wim Taymans  <wim@fluendo.com>
4344
4345         * check/gst/gstbin.c: (GST_START_TEST):
4346         * check/gst/gstmessage.c: (GST_START_TEST):
4347         * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
4348         * gst/gstbin.c: (bin_bus_handler):
4349         * gst/gstelement.c: (gst_element_commit_state),
4350         (gst_element_lost_state):
4351         * gst/gstmessage.c: (gst_message_new_state_changed),
4352         (gst_message_new_segment_start), (gst_message_new_segment_done),
4353         (gst_message_new_duration), (gst_message_parse_state_changed),
4354         (gst_message_parse_segment_start),
4355         (gst_message_parse_segment_done), (gst_message_parse_duration):
4356         * gst/gstmessage.h:
4357         * tools/gst-launch.c: (event_loop):
4358         Make messages future proof.
4359         state-change gets a flag if it was a message comming from the
4360         streaming thread.
4361         segment-start/stop can also be specified in other formats.
4362         A message to notify an app that a pipeline changed playback 
4363         duration.
4364         Also fix a GstMessage leak in -launch
4365
4366 2005-10-18  Andy Wingo  <wingo@pobox.com>
4367
4368         * gst/gstelement.c (gst_element_dispose): More helpful message.
4369
4370 2005-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>
4371
4372         reviewed by: <delete if not using a buddy>
4373
4374         * common/gtk-doc.mak:
4375
4376 2005-10-18  Thomas Vander Stichele  <thomas at apestaart dot org>
4377
4378         * gst/gstregistry.c: (gst_registry_scan_path_level):
4379           unref a plug-in we get that was already initialized
4380
4381 2005-10-18  Stefan Kost  <ensonic@users.sf.net>
4382
4383         * docs/gst/gstreamer-sections.txt:
4384         * docs/libs/gstreamer-libs-sections.txt:
4385         * gst/gstelement.h:
4386           add new api entries
4387           hide internal macro
4388
4389 2005-10-17  Andy Wingo  <wingo@pobox.com>
4390
4391         * gst/base/gstcollectpads.c (gst_collectpads_chain): Slight
4392         cleanup.
4393
4394         * gst/Makefile.am (gstenumtypes.c): Threadsafe now.
4395
4396         * gst/gstevent.c (gst_event_new, gst_event_finalize): LOG.
4397
4398         * gst/gstelement.c (gst_element_get_state_func): s/INFO/DEBUG/.
4399         (gst_element_get_state_func): Better debug message.
4400         (gst_element_commit_state): s/INFO/DEBUG/.
4401         (gst_element_lost_state, gst_element_change_state): 
4402
4403         * gst/gstmessage.c (gst_message_init): s/INFO/LOG/.
4404         (gst_message_new_custom): s/INFO/LOG/.
4405
4406 2005-10-17  Michael Smith <msmith@fluendo.com>
4407
4408         * gst/base/gstbasesink.c: (gst_base_sink_do_sync):
4409           Check if end time is valid using end time, not start time.
4410
4411 2005-10-17  Stefan Kost  <ensonic@users.sf.net>
4412
4413         * check/gst-libs/controller.c: (GST_START_TEST),
4414         (gst_controller_suite):
4415         * libs/gst/controller/gstcontroller.c:
4416         (gst_controlled_property_set_interpolation_mode):
4417         * libs/gst/controller/gstcontroller.h:
4418         * libs/gst/controller/gstinterpolation.c:
4419         * testsuite/controller/.cvsignore:
4420         * testsuite/controller/Makefile.am:
4421         * testsuite/controller/interpolator.c:
4422           merge controller testsuites
4423           fix broken tests
4424           remove mem-chunk from docs
4425
4426 2005-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4427
4428         * gst/gstmemchunk.c:
4429         * gst/gstmemchunk.h:
4430         * gst/gsttrashstack.c:
4431         * gst/gsttrashstack.h:
4432           out.  get out.  you're fired.  to the Attic !
4433
4434 2005-10-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4435
4436         * gst/gstcaps.c: (gst_caps_intersect):
4437           fix signedness issues in a (hopefully) correct way
4438         * gst/gstelement.c: (gst_element_pads_activate):
4439           some debugging
4440         * gst/gstobject.c: (gst_object_set_parent):
4441           some debugging
4442
4443 2005-10-17  Julien MOUTTE  <julien@moutte.net>
4444
4445         * gst/gstvalue.h: Fix prototypes.
4446
4447 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4448
4449         * docs/gst/gstreamer-sections.txt:
4450         * gst/gst.c: (gst_version_string):
4451         * gst/gst.h:
4452         * gst/gstversion.h.in:
4453         * win32/common/libgstreamer.def:
4454           add gst_version_string ()
4455
4456 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4457
4458         * configure.ac:
4459           clean up further
4460         * gst/gst.c: (init_post):
4461         * win32/common/config.h.in:
4462           it's PLUGINDIR now
4463         * gst/gstcaps.c: (gst_caps_intersect):
4464           use gint64, the range could be bigger than a guint
4465
4466 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4467
4468         * gst/gstclock.h:
4469           document potential problem in 2038
4470
4471 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4472
4473         * gst/gstcaps.c: (gst_caps_intersect):
4474           Fix guint j diving under 0
4475
4476 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4477
4478         * configure.ac:
4479         * win32/common/config.h:
4480         * win32/common/config.h.in:
4481           check for process.h, declares getpid() on Windows
4482         * gst/gstinfo.c:
4483           include process.h if we have it
4484         * gst/gstmemchunk.c: (populate), (gst_mem_chunk_new):
4485         * gst/gstmemchunk.h:
4486           fix signedness issues
4487         * win32/common/libgstreamer.def:
4488           fix get_type's
4489
4490 2005-10-16  Julien MOUTTE  <julien@moutte.net>
4491
4492         * gst/gstcaps.c: (gst_caps_intersect): Fix a bad bug with a simple
4493         fix. Because of unsigned ints, caps intersection was going nuts and
4494         trying to access structures with G_MAXUINT index. That fixes
4495         videotestsrc ! ffmpegcolorspace ! fakesink
4496         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked): logs
4497         consistency.
4498
4499 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4500
4501         * configure.ac:
4502           use the gettext macro
4503         * gst/elements/gstelements.c:
4504         * gst/gst.c:
4505         * gst/indexers/gstindexers.c:
4506           update for GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN
4507         * win32/common/config.h:
4508           updated config.h
4509         * win32/common/config.h.in:
4510           add the template to generate config.h
4511         * win32/common/gstenumtypes.c:
4512         * win32/common/gstversion.h:
4513           updated copies
4514
4515 2005-10-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4516
4517         * gst/gst.c: (gst_version):
4518         * gst/gstversion.h.in:
4519           add the nano
4520
4521 2005-10-15  Tim-Philipp Müller  <tim at centricular dot net>
4522
4523         * gst/gstevent.h:
4524           Oops, add missing closing bracket.
4525
4526 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4527
4528         * configure.ac:
4529           use common m4's for argument checking
4530
4531 2005-10-15  Tim-Philipp Müller  <tim at centricular dot net>
4532
4533         * docs/gst/gstreamer-sections.txt:
4534         * gst/gstevent.h:
4535           Add GST_EVENT_TYPE_NAME() macro.
4536
4537 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4538
4539         * gst/gstinfo.c:
4540         * gst/gstpluginfeature.c:
4541         * gst/gsttask.c:
4542           privatize more symbols
4543
4544 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4545
4546         * configure.ac:
4547           add srcdir, builddir includes to GST_ALL_CFLAGS, since
4548           everything that uses GStreamer API should have the includes
4549
4550 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4551
4552         * docs/gst/gstreamer-sections.txt:
4553         * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
4554         * gst/gstvalue.h:
4555           give each value a _get_type, removes the DATA exports
4556
4557 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4558
4559         * gst/gst.c:
4560         * gst/gst.h:
4561           remove _gst_registry_auto_load, not used anymore
4562         * gst/gstbin.c: (gst_bin_get_type):
4563         * gst/gstbin.h:
4564         * gst/gstelement.c: (gst_element_get_type):
4565         * gst/gstelement.h:
4566         * gst/gstobject.c: (gst_object_get_type):
4567         * gst/gstobject.h:
4568         * gst/gstpad.c: (gst_pad_get_type):
4569         * gst/gstpad.h:
4570           make _get_type functions similar, fixes data export from library
4571
4572 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4573
4574         * configure.ac:
4575           correctly make conditionals
4576         * gst/elements/Makefile.am:
4577         * gst/elements/gstelements.c:
4578           fix typo causing fdsrc not to build
4579
4580 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4581
4582         * testsuite/Makefile.am:
4583         * testsuite/bytestream/.cvsignore:
4584         * testsuite/bytestream/Makefile.am:
4585         * testsuite/bytestream/filepadsink.c:
4586         * testsuite/bytestream/gstbstest.c:
4587         * testsuite/bytestream/test1.c:
4588         * testsuite/bytestream/testfile1:
4589         * testsuite/caps/normalisation.c:
4590         * testsuite/caps/random.c: (main):
4591         * testsuite/cleanup/.cvsignore:
4592         * testsuite/cleanup/Makefile.am:
4593         * testsuite/cleanup/cleanup1.c:
4594         * testsuite/cleanup/cleanup2.c:
4595         * testsuite/cleanup/cleanup3.c:
4596         * testsuite/cleanup/cleanup4.c:
4597         * testsuite/cleanup/cleanup5.c:
4598         * testsuite/controller/interpolator.c:
4599         * testsuite/debug/printf_extension.c: (main):
4600         * testsuite/elements/tee.c:
4601         * testsuite/negotiation/.cvsignore:
4602         * testsuite/negotiation/Makefile.am:
4603         * testsuite/negotiation/pad_link.c:
4604         * testsuite/pad/Makefile.am:
4605         * testsuite/pad/chainnopull.c:
4606         * testsuite/pad/getnopush.c:
4607         * testsuite/pad/link.c:
4608         * testsuite/refcounting/sched.c: (create_pipeline):
4609         * testsuite/registry/Makefile.am:
4610         * testsuite/registry/gst-print-formats.c:
4611         * testsuite/schedulers/.cvsignore:
4612         * testsuite/schedulers/142183-2.c:
4613         * testsuite/schedulers/142183.c:
4614         * testsuite/schedulers/143777-2.c:
4615         * testsuite/schedulers/143777.c:
4616         * testsuite/schedulers/147713.c:
4617         * testsuite/schedulers/147819.c:
4618         * testsuite/schedulers/147894-2.c:
4619         * testsuite/schedulers/147894.c:
4620         * testsuite/schedulers/Makefile.am:
4621         * testsuite/schedulers/group_link.c:
4622         * testsuite/schedulers/queue_link.c:
4623         * testsuite/schedulers/relink.c:
4624         * testsuite/schedulers/unlink.c:
4625         * testsuite/schedulers/unref.c:
4626         * testsuite/schedulers/useless_iteration.c:
4627         * testsuite/states/bin.c:
4628           clean out/remove some stuff from the testsuite directories
4629
4630 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4631
4632         * configure.ac:
4633           check for some headers
4634         * gst/elements/Makefile.am:
4635         * gst/elements/gstelements.c:
4636           don't compile fdsrc without sys/socket.h
4637         * gst/indexers/Makefile.am:
4638         * gst/indexers/gstindexers.c: (plugin_init):
4639           don't compile fileindex without mmap
4640
4641 2005-10-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4642
4643         * configure.ac:
4644           reorganize
4645           clean up
4646           document more
4647           remove cruft
4648         * check/Makefile.am:
4649         * docs/gst/Makefile.am:
4650         * examples/helloworld/Makefile.am:
4651         * gst/Makefile.am:
4652         * gst/base/Makefile.am:
4653         * gst/check/Makefile.am:
4654         * gst/elements/Makefile.am:
4655         * gst/indexers/Makefile.am:
4656         * gst/parse/Makefile.am:
4657         * libs/gst/controller/Makefile.am:
4658         * libs/gst/dataprotocol/Makefile.am:
4659         * examples/helloworld/helloworld.c: (event_loop):
4660           compile fixes, though it's not being compiled currently
4661
4662 2005-10-14  Tim-Philipp Müller  <tim at centricular dot net>
4663
4664         * check/gst/gsttag.c: (test_date_tags), (gst_tag_suite):
4665           Add some simple tests for the new taglist date API.
4666
4667 2005-10-14  Tim-Philipp Müller  <tim at centricular dot net>
4668
4669         * gst/elements/gstfakesink.c: (gst_fake_sink_render):
4670         * gst/elements/gstfakesrc.c: (gst_fake_src_create):
4671           Beautify 'last-message' output: print 'none' for buffer timestamps
4672           and durations if none is set; improve alignment with next messages.
4673
4674 2005-10-14  Tim-Philipp Müller  <tim at centricular dot net>
4675
4676         * gst/gstpluginfeature.c: (gst_plugin_feature_check_version):
4677         * gst/gstpluginfeature.h:
4678         * gst/gstregistry.c: (gst_default_registry_check_feature_version):
4679         * gst/gstregistry.h:
4680         * docs/gst/gstreamer-sections.txt:
4681           Add new API to check plugin feature version requirements.
4682
4683         * check/gst/gstplugin.c: (test_version_checks), (gst_plugin_suite):
4684           Some basic tests for the above.         
4685
4686 2005-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4687
4688         * gst/gststructure.c: (gst_structure_to_string):
4689           guard against NULL printf - happens when for example
4690           a message structure with GstClock gets serialized
4691
4692 2005-10-13  Tim-Philipp Müller  <tim at centricular dot net>
4693
4694         * gst/base/gstcollectpads.c: (gst_collectpads_event):
4695           Fix presumable copy'n'pasto.
4696
4697 2005-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4698
4699         * gst/elements/gstfakesrc.h:
4700         * gst/elements/gstfilesrc.c: (gst_file_src_create_read):
4701         * gst/elements/gsttypefindelement.c:
4702           fix some signedness
4703         * gst/elements/gstfilesink.c: (gst_file_sink_render):
4704           I wonder if this could actually write +2GB files before
4705
4706 2005-10-13  Andy Wingo  <wingo@pobox.com>
4707
4708         * libs/gst/dataprotocol/dataprotocol.c (gst_dp_packet_from_caps):
4709         Fix Timmeke Waymans bug.
4710         (gst_dp_caps_from_packet): Make sure we pass a NUL-terminated
4711         string of the proper length to gst_caps_from_string. There's a
4712         potential for, before this fix, that this could cause someone
4713         connecting over the network to cause a segfault if the payload is
4714         not NUL-terminated.
4715
4716 2005-10-13  Stefan Kost  <ensonic@users.sf.net>
4717
4718         * docs/design/draft-push-pull.txt:
4719         * docs/design/part-overview.txt:
4720         * docs/random/TODO-pre-0.9:
4721         * docs/random/old/ChangeLog.gstreamer:
4722         * gst/base/gstpushsrc.c:
4723         * gst/gstclock.c:
4724           fixed typos
4725
4726 2005-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4727
4728         * gst/glib-compat.c: (gst_flags_get_first_value):
4729         * gst/glib-compat.h:
4730         * gst/gstvalue.c: (gst_value_deserialize_int_helper),
4731         (gst_value_compare_double), (gst_value_serialize_flags):
4732           GLib 2.6 g_flags_get_first_value has a bug that triggers an
4733           infinite loop
4734
4735 2005-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4736
4737         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
4738         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
4739           fix up debugging
4740         * tools/gst-launch.c: (event_loop):
4741           print out clock nicely
4742
4743 2005-10-13  Tim-Philipp Müller  <tim at centricular dot net>
4744
4745         * docs/gst/gstreamer-sections.txt:
4746         * gst/gsttaglist.h:
4747         * gst/gsttaglist.c: (_gst_tag_initialize), (gst_tag_list_get_date),
4748         (gst_tag_list_get_date_index):
4749           Added gst_tag_list_get_date() and gst_tag_list_get_date_index().
4750           GST_TAG_DATE now has a tag type of GST_TYPE_DATE (#170777).
4751
4752 2005-10-13  Julien MOUTTE  <julien@moutte.net>
4753
4754         * gst/base/gstcollectpads.c: (gst_collectpads_event),
4755         (gst_collectpads_chain):
4756         * gst/base/gstcollectpads.h: Handle newsegment and store informations
4757         in CollectData.
4758
4759 2005-10-13  Stefan Kost  <ensonic@users.sf.net>
4760
4761         * docs/gst/gstreamer-sections.txt:
4762         * gst/gst.c:
4763         * gst/gsterror.h:
4764         * tools/gst-inspect.c: (main):
4765         * tools/gst-launch.c: (main):
4766         * tools/gst-run.c: (main):
4767         * tools/gst-xmlinspect.c: (main):
4768           fix GOption context leaks
4769           doc fixes
4770
4771 2005-10-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4772
4773         * gst/gstbus.c:
4774           use HAVE_UNISTD_H
4775         * win32/common/config.h:
4776           update config
4777         * win32/vs6/grammar.dsp:
4778         * win32/vs6/libgstelements.dsp:
4779         * win32/vs6/libgstreamer.dsp:
4780           update vs6 files
4781
4782 2005-10-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4783
4784         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
4785         * gst/base/gstbasesrc.c: (gst_base_src_query):
4786           fix more guint64<->gdouble conversions
4787
4788 2005-10-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4789
4790         * Makefile.am:
4791           add win32-update target
4792         * win32/common/gstconfig.h:
4793         * win32/common/gstenumtypes.c:
4794         * win32/common/gstenumtypes.h:
4795         * win32/common/gstversion.h:
4796           add files that visual studio can't generate
4797
4798 2005-10-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4799
4800         * Makefile.am:
4801           add a win32-update target
4802         * configure.ac:
4803
4804 2005-10-12  Wim Taymans  <wim@fluendo.com>
4805
4806         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4807         (reset_degree), (gst_bin_dispose), (bin_bus_handler):
4808         * gst/gstelement.c: (gst_element_commit_state),
4809         (gst_element_set_state):
4810         Protect flags with proper lock.
4811         unref provided cached clock in dispose.
4812
4813 2005-10-12  Stefan Kost  <ensonic@users.sf.net>
4814
4815         * gst/gst.c:
4816         * gst/gstminiobject.h:
4817         * gst/gstpad.h:
4818         * win32/gstenumtypes.c: (gst_mini_object_flags_get_type):
4819           removed unused flags from miniobject
4820           doc fixes
4821
4822 2005-10-12  Wim Taymans  <wim@fluendo.com>
4823
4824         * gst/elements/gstfilesink.c: (gst_file_sink_do_seek),
4825         (gst_file_sink_event), (gst_file_sink_render):
4826         Flush before seeking.
4827
4828 2005-10-12  Andy Wingo  <wingo@pobox.com>
4829
4830         * gst/gst.c (gst_init_check): Ignore unknown options, as has
4831         always been the case.
4832
4833 2005-10-12  Stefan Kost  <ensonic@users.sf.net>
4834
4835         * check/gst/gstbin.c: (GST_START_TEST):
4836         * docs/gst/gstreamer-sections.txt:
4837         * gst/base/gstbasesink.c: (gst_base_sink_init):
4838         * gst/base/gstbasesrc.c: (gst_base_src_init),
4839         (gst_base_src_get_range), (gst_base_src_check_get_range),
4840         (gst_base_src_start), (gst_base_src_stop):
4841         * gst/base/gstbasesrc.h:
4842         * gst/elements/gstfakesrc.c: (gst_fake_src_set_property):
4843         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4844         (bin_element_is_sink), (reset_degree), (gst_bin_element_set_state),
4845         (bin_bus_handler):
4846         * gst/gstbin.h:
4847         * gst/gstbuffer.h:
4848         * gst/gstbus.c: (gst_bus_post), (gst_bus_set_flushing):
4849         * gst/gstbus.h:
4850         * gst/gstelement.c: (gst_element_is_locked_state),
4851         (gst_element_set_locked_state), (gst_element_commit_state),
4852         (gst_element_set_state):
4853         * gst/gstelement.h:
4854         * gst/gstindex.c: (gst_index_init):
4855         * gst/gstindex.h:
4856         * gst/gstminiobject.h:
4857         * gst/gstobject.c: (gst_object_init), (gst_object_sink),
4858         (gst_object_set_parent):
4859         * gst/gstobject.h:
4860         * gst/gstpad.c: (gst_pad_set_blocked_async), (gst_pad_is_blocked),
4861         (gst_pad_get_caps_unlocked), (gst_pad_set_caps):
4862         * gst/gstpad.h:
4863         * gst/gstpadtemplate.h:
4864         * gst/gstpipeline.c: (gst_pipeline_provide_clock_func),
4865         (gst_pipeline_use_clock), (gst_pipeline_auto_clock):
4866         * gst/gstpipeline.h:
4867         * gst/indexers/gstfileindex.c: (gst_file_index_load),
4868         (gst_file_index_commit):
4869         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4870         * testsuite/pad/link.c: (gst_test_src_init),
4871         (gst_test_filter_init), (gst_test_sink_init):
4872         * testsuite/states/locked.c: (main):
4873           renamed GST_FLAGS macros to GST_OBJECT_FLAGS
4874           moved bitshift from macro to enum definition
4875
4876 2005-10-12  Wim Taymans  <wim@fluendo.com>
4877
4878         * gst/base/gstbasesink.c: (gst_base_sink_handle_buffer):
4879         * gst/elements/gstfilesink.c: (gst_file_sink_event),
4880         (gst_file_sink_render):
4881         Some more debugging info.
4882
4883 2005-10-12  Wim Taymans  <wim@fluendo.com>
4884
4885         * docs/design/part-states.txt:
4886         * tools/gst-launch.c: (main):
4887         Some doc updates.
4888         Revert non-intentional change.
4889
4890 2005-10-12  Wim Taymans  <wim@fluendo.com>
4891
4892         * check/gst/gstbin.c: (GST_START_TEST):
4893         * check/gst/gstelement.c: (GST_START_TEST):
4894         * check/gst/gstevent.c: (GST_START_TEST), (test_event):
4895         * check/gst/gstghostpad.c: (GST_START_TEST):
4896         * check/gst/gstpipeline.c: (GST_START_TEST):
4897         * check/pipelines/simple_launch_lines.c: (run_pipeline):
4898         * check/states/sinks.c: (GST_START_TEST):
4899         * gst/elements/gsttypefindelement.c: (stop_typefinding):
4900         * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
4901         (gst_bin_remove_func), (gst_bin_get_state_func),
4902         (gst_bin_recalc_state), (gst_bin_change_state_func),
4903         (bin_bus_handler):
4904         * gst/gstelement.c: (gst_element_get_state_func),
4905         (gst_element_get_state), (gst_element_abort_state),
4906         (gst_element_commit_state), (gst_element_set_state),
4907         (gst_element_change_state), (gst_element_change_state_func):
4908         * gst/gstelement.h:
4909         * gst/gstpipeline.c: (gst_pipeline_class_init), (do_pipeline_seek),
4910         (gst_pipeline_provide_clock_func):
4911         * gst/gstutils.c: (gst_element_link_pads_filtered):
4912         * tools/gst-launch.c: (main):
4913         * tools/gst-typefind.c: (main):
4914         Use GstClockTime in _get_state() instead of GTimeVal.
4915         Remove old code in gstutils.c
4916
4917 2005-10-12  Andy Wingo  <wingo@pobox.com>
4918
4919         * gst/gstregistry.h (gst_registry_scan_paths): Not implemented, so
4920         removed.
4921
4922         * gst/gstpad.c (gst_pad_pause_task): Actually return FALSE if
4923         there is no task. Shouldn't affect any code, as nothing in our
4924         plugins checks this return value.
4925         (gst_pad_stop_task): Also take the stream lock if the pad has no
4926         task. Docs updated.
4927
4928 2005-10-12  Wim Taymans  <wim@fluendo.com>
4929
4930         * gst/gstpad.c: (pre_activate), (post_activate),
4931         (gst_pad_activate_pull), (gst_pad_activate_push):
4932         Cleanup activation code. Reset old state if
4933         activation failed.
4934
4935 2005-10-12  Wim Taymans  <wim@fluendo.com>
4936
4937         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4938         (gst_base_sink_change_state):
4939         No need to prerol after receiving EOS.
4940
4941         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
4942         * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler):
4943         * gst/elements/gstidentity.c: (gst_identity_event):
4944         Print events more verbosely.
4945
4946 2005-10-12  Wim Taymans  <wim@fluendo.com>
4947
4948         * check/Makefile.am:
4949         * check/states/sinks.c: (GST_START_TEST), (gst_object_suite):
4950         * check/states/sinks2.c:
4951         Moved sinks2 testcode in sinks check.
4952
4953         * gst/gstbin.c: (gst_bin_provide_clock_func), (gst_bin_add_func),
4954         (gst_bin_remove_func), (gst_bin_recalc_state),
4955         (gst_bin_change_state_func), (bin_bus_handler):
4956         Fix potential race condition when _get_state() iterated over an
4957         ASYNC element right before it posted a state completion.
4958
4959         * gst/gstclock.h:
4960         Do proper cast here.
4961
4962         * gst/gstevent.c: (gst_event_new_newsegment),
4963         (gst_event_parse_newsegment):
4964         A playback rate of 0.0 is not allowed.
4965
4966 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4967
4968         * win32/common/config.h:
4969         * win32/common/dirent.c: (_topendir), (_treaddir), (_tclosedir),
4970         (_trewinddir), (_ttelldir), (_tseekdir):
4971         * win32/common/dirent.h:
4972         * win32/common/gtchar.h:
4973         * win32/common/libgstbase.def:
4974         * win32/common/libgstreamer.def:
4975         * win32/vs6/grammar.dsp:
4976         * win32/vs6/gst_inspect.dsp:
4977         * win32/vs6/gst_launch.dsp:
4978         * win32/vs6/gstreamer.dsw:
4979         * win32/vs6/libgstbase.dsp:
4980         * win32/vs6/libgstelements.dsp:
4981         * win32/vs6/libgstreamer.dsp:
4982           Visual Studio 6 project files, and a new common directory.
4983           Phear.
4984
4985 2005-10-11  Wim Taymans  <wim@fluendo.com>
4986
4987         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
4988         (gst_base_sink_do_sync), (gst_base_sink_query),
4989         (gst_base_sink_change_state):
4990         * gst/base/gstbasesink.h:
4991         Correctly parse newsegment info.
4992
4993 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4994
4995         * gst/gst.c: (init_post):
4996           split plugin paths correctly
4997
4998 2005-10-11  Wim Taymans  <wim@fluendo.com>
4999
5000         * check/gst/gstevent.c: (GST_START_TEST):
5001         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
5002         (gst_base_sink_change_state):
5003         * gst/base/gstbasesrc.c: (gst_base_src_default_newsegment):
5004         * gst/base/gstbasetransform.c: (gst_base_transform_event):
5005         * gst/elements/gstfilesink.c: (gst_file_sink_event):
5006         * gst/gstevent.c: (gst_event_new_newsegment),
5007         (gst_event_parse_newsegment):
5008         * gst/gstevent.h:
5009         Added extra flag to newsegment for future API freeze.
5010         Updated check and base elements.
5011
5012 2005-10-11  Julien MOUTTE  <julien@moutte.net>
5013
5014         * gst/base/gstcollectpads.c: (gst_collectpads_init),
5015         (gst_collectpads_add_pad), (gst_collectpads_pop),
5016         (gst_collectpads_event), (gst_collectpads_chain):
5017         * gst/base/gstcollectpads.h: Handle EOS correctly.
5018
5019 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5020
5021         * tools/gst-launch.c: (main):
5022           more null protecting
5023
5024 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5025
5026         * gst/gst-i18n-lib.h:
5027           check for ENABLE_NLS, not GETTEXT_PACKAGE
5028         * gst/gstregistry.c: (gst_registry_add_plugin),
5029         (gst_registry_scan_path_level),
5030         (_gst_registry_remove_cache_plugins):
5031           protect possibly NULL strings
5032         * gst/parse/types.h:
5033           config.h already included before
5034         * tools/gst-inspect.c: (main):
5035           sys/wait.h also doesn�t exist on mingw, so change the ifdef check
5036           check for ENABLE_NLS, not GETTEXT_PACKAGE
5037         * tools/gst-launch.c: (main):
5038           check for ENABLE_NLS, not GETTEXT_PACKAGE
5039
5040 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5041
5042         * configure.ac:
5043           if we don't have glib, fail before testing 2.8
5044         * gst/base/gstbasetransform.c: (gst_base_transform_change_state):
5045           fix a leak, should fix plugins-base testsuite
5046
5047 2005-10-11  Andy Wingo  <wingo@pobox.com>
5048
5049         * gst/gstpad.c (pre_activate): Renamed from pre_activate_switch,
5050         take the mode we're going to as an arg. Go head and set the mode
5051         and flushing flags now, so that if the activate function starts a
5052         thread all the flags will be in the right state.
5053         (post_activate): Renamed also. Just handle making sure streaming
5054         finishes for the deactivation case, and setting the deactivated
5055         mode.
5056         (gst_pad_set_active): Complain loudly if deactivation fails.
5057         (gst_pad_activate_pull): Adapt to pre/post_activate changes.
5058         (gst_pad_activate_push): Adapt to pre/post_activate changes,
5059         remove the terrible hack.
5060
5061 2005-10-11  Wim Taymans  <wim@fluendo.com>
5062
5063         * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
5064         (is_eos), (gst_bin_add_func), (gst_bin_remove_func),
5065         (gst_bin_recalc_state), (gst_bin_change_state_func),
5066         (gst_bin_dispose), (bin_bus_handler):
5067         * gst/gstbin.h:
5068         Prepare to make current EOS message queue more generic.
5069         Fix some typos.
5070
5071         * gst/gstevent.c: (gst_event_new_newsegment),
5072         (gst_event_parse_newsegment):
5073         * gst/gstevent.h:
5074         Rename base to stream_time.
5075
5076         * gst/gstmessage.h:
5077         Fix typo in docs.
5078
5079 2005-10-11  Wim Taymans  <wim@fluendo.com>
5080
5081         * gst/gstbin.c: (gst_bin_init), (gst_bin_provide_clock_func),
5082         (gst_bin_add_func), (gst_bin_remove_func), (gst_bin_recalc_state),
5083         (gst_bin_change_state_func), (bin_bus_handler):
5084         * gst/gstbin.h:
5085         Work on proper clock selection.
5086
5087 2005-10-11  Edward Hervey  <edward@fluendo.com>
5088
5089         * libs/gst/controller/gstcontroller.c: (gst_controller_remove_properties_list): 
5090         * libs/gst/controller/gstcontroller.h:
5091         Added GList* version of _remove_properties() in order to be able to wrap
5092         it in bindings.
5093
5094 2005-10-11  Wim Taymans  <wim@fluendo.com>
5095
5096         * docs/design/part-states.txt:
5097         Some more docs.
5098
5099         * gst/gstbin.c: (gst_bin_set_clock_func), (gst_bin_recalc_state),
5100         (gst_bin_change_state_func), (bin_bus_handler):
5101         Doc updates. Don't distribute the same clock over and over again.
5102
5103         * gst/gstclock.c:
5104         * gst/gstclock.h:
5105         Doc updates.
5106
5107         * gst/gstpad.c: (gst_flow_get_name), (gst_flow_to_quark),
5108         (gst_pad_get_type), (gst_pad_push), (gst_pad_push_event),
5109         (gst_pad_send_event):
5110         * gst/gstpad.h:
5111         Make probe emission threadsafe again.
5112         Register quarks and move _get_name() from utils.
5113         Doc updates.
5114
5115         * gst/gstpipeline.c: (gst_pipeline_class_init),
5116         (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
5117         Only redistribute the clock of it changed.
5118
5119         * gst/gstsystemclock.h:
5120         Doc updates. 
5121
5122         * gst/gstutils.c:
5123         * gst/gstutils.h:
5124         Moved the _flow_get_name() to GstPad.
5125
5126 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5127
5128         * check/gst-libs/gdp.c: (GST_START_TEST):
5129         * check/gst/gstcaps.c: (GST_START_TEST):
5130         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
5131         (gst_dp_dump_byte_array), (gst_dp_header_from_buffer),
5132         (gst_dp_packet_from_caps):
5133           fix more valgrind warnings before turning up the heat
5134
5135 2005-10-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5136
5137         * gst/parse/grammar.y:
5138           some cleanup before the hacking
5139
5140 2005-10-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5141
5142         * gst/base/gstbasesrc.c: (gst_base_src_query):
5143           use conversions
5144         * gst/gstutils.c: (gst_guint64_to_gdouble),
5145         (gst_gdouble_to_guint64), (gst_util_uint64_scale):
5146         * gst/gstutils.h:
5147           externalize, basesrc uses it
5148           obviously the implementation needs testing
5149
5150 2005-10-10  Wim Taymans  <wim@fluendo.com>
5151
5152         * tests/sched/Makefile.am:
5153         * tests/sched/sort.c: (make_pipeline1), (make_pipeline2),
5154         (make_pipeline3), (make_pipeline4), (print_elem), (main):
5155
5156 2005-10-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5157
5158         * gst/gstutils.c: (guint64_to_gdouble), (gst_util_uint64_scale):
5159           apparently converting from guint64 to double is not implemented
5160           on MSVC
5161
5162 2005-10-10  Wim Taymans  <wim@fluendo.com>
5163
5164         * check/Makefile.am:
5165         * check/generic/states.c: (GST_START_TEST):
5166         * check/gst/gstbin.c: (GST_START_TEST):
5167         * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
5168         * check/states/sinks.c: (GST_START_TEST):
5169         * check/states/sinks2.c: (GST_START_TEST), (gst_object_suite),
5170         (main):
5171         Check fixes, use API as stated in design docs, remove hacks.
5172
5173         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
5174         (gst_base_sink_change_state):
5175         Catch stopping our task while we're shutting down.
5176
5177         * gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
5178         (gst_bin_remove_func), (gst_bin_get_state_func),
5179         (gst_bin_recalc_state), (gst_bin_change_state_func),
5180         (bin_bus_handler):
5181         * gst/gstbin.h:
5182         * gst/gstelement.c: (gst_element_init),
5183         (gst_element_get_state_func), (gst_element_abort_state),
5184         (gst_element_commit_state), (gst_element_lost_state),
5185         (gst_element_set_state), (gst_element_change_state),
5186         (gst_element_change_state_func):
5187         * gst/gstelement.h:
5188         New state change algorithm (see #318116)
5189
5190         * gst/gstpipeline.c: (gst_pipeline_class_init),
5191         (gst_pipeline_init), (gst_pipeline_set_property),
5192         (gst_pipeline_get_property), (do_pipeline_seek),
5193         (gst_pipeline_change_state), (gst_pipeline_provide_clock_func):
5194         * gst/gstpipeline.h:
5195         Remove crude state change hacks.
5196
5197         * gst/gstutils.h:
5198         Remove crude hacks.
5199
5200         * tools/gst-launch.c: (main):
5201         Fixes for state change. Needs some more work to fully use the
5202         new stuff.
5203
5204 2005-10-10  Andy Wingo  <wingo@pobox.com>
5205
5206         * tests/Makefile.am (noinst_PROGRAMS): No more init.c.
5207
5208         * gst/gst.c (G_OPTION_FLAG_NO_ARG): Apparently GLib 2.8 requires
5209         this flag, but it's not even in GLib 2.6. Odd. Hack around the
5210         issue.
5211
5212 2005-10-10  Tim-Philipp Müller  <tim at centricular dot net>
5213
5214         * gst/gstiterator.c: (gst_iterator_new):
5215           Fix my previous commit: GTypes passed to gst_iterator_new()
5216           can be fundamental types.
5217
5218 2005-10-10  Wim Taymans  <wim@fluendo.com>
5219
5220         * gst/gstelement.c: (gst_element_iterate_pad_list),
5221         (gst_element_iterate_pads), (gst_element_iterate_src_pads),
5222         (gst_element_iterate_sink_pads):
5223         Use src/sink pads lists for the respective iterators instead
5224         of filtering.
5225
5226 2005-10-10  Andy Wingo  <wingo@pobox.com>
5227
5228         Merged in popt removal + GOption addition patch from Ronald, bug
5229         #169772.
5230
5231         * docs/gst/gstreamer-sections.txt: Add STATE_(UN)LOCK_FULL, move
5232         GstElement macros around, remove popt-related symbols, add goption
5233         stuff.
5234
5235         * configure.ac: Remove popt checks, require GLib 2.6 for GOption.
5236         
5237         * docs/gst/Makefile.am:
5238         * docs/libs/Makefile.am: No POPT_CFLAGS.
5239         
5240         * examples/manual/Makefile.am:
5241         * docs/manual/basics-init.xml: Doc updates with an example.
5242         
5243         * gst/gst.c: (gst_init_get_option_group), (gst_init_check),
5244         (gst_init), (parse_one_option), (parse_goption_arg):
5245         * gst/gst.h: Removed gst_init_with_popt_table and friends. Took a
5246         bit of hand merging and debugging to get the GOption stuff working
5247         tho.
5248         
5249         * tests/Makefile.am:
5250         * tools/Makefile.am:
5251         * tools/gst-inspect.c: (main):
5252         * tools/gst-launch.c: (main):
5253         * tools/gst-run.c: (main):
5254         * tools/gst-xmlinspect.c: (main): Thanks Ronald!
5255
5256 2005-10-10  Tim-Philipp Müller  <tim at centricular dot net>
5257
5258         * gst/gstiterator.c: (gst_iterator_new):
5259           Add assertions to make sure passed GType is likely to really
5260           be a GType (as the compiler won't catch it if the size and
5261           GType arguments get mixed up, see #318447).
5262
5263 2005-10-10  Josef Zlomek  <josef dot zlomek at xeris dot cz>
5264
5265         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
5266
5267         * gst/gstbin.c: (gst_bin_iterate_sorted):
5268           Pass GType and size arguments to gst_iterator_new() in the right
5269           order (maybe we should make _new() take the GType as first argument
5270           just like _new_list()?) (#318447).
5271           
5272
5273 2005-10-10  Wim Taymans  <wim@fluendo.com>
5274
5275         * gst/gstelement.c: (gst_element_finalize):
5276         And free the GStaticRecMutex too
5277
5278 2005-10-10  Andy Wingo  <wingo@pobox.com>
5279
5280         * gst/gstelement.c (gst_element_init, gst_element_finalize):
5281         Allocate and free the mutex properly.
5282
5283         * gst/gstelement.h (GST_STATE_UNLOCK_FULL, GST_STATE_LOCK_FULL):
5284         New macros.
5285         (GstElement): The state_lock is now recursive. Rebuild your
5286         plugins, suckers. Old macros adapted.
5287
5288         * docs/gst/gstreamer-sections.txt: Doc updates.
5289
5290         * gst/gstutils.h:
5291         * gst/gstutils.c (g_static_rec_cond_timed_wait) 
5292         (g_static_rec_cond_wait): Ported from state changes patch, while
5293         we wait on bug #317802 to be solved in a well-distributed GLib.
5294
5295         * gst/gstelement.c (gst_element_change_state_func): Renamed from
5296         gst_element_change_state, variable name changes.
5297         (gst_element_change_state): Split out of gst_element_set_state in
5298         preparation for the state change merge. Doesn't pay attention to
5299         the 'transition' argument.
5300         (gst_element_set_state): Updates, hopefully purely cosmetic.
5301         (gst_element_sync_state_with_parent): MT-safety. Ported from the
5302         state change patch.
5303         (gst_element_get_state_func): Renamed from get_state, cosmetic
5304         changes.
5305
5306 2005-10-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5307
5308         * gst/elements/gstelements.c:
5309         * win32/GStreamer.vcproj:
5310         * win32/config.h:
5311         * win32/dirent.c: (_tseekdir):
5312         * win32/gst-inspect.vcproj:
5313         * win32/gst-launch.vcproj:
5314         * win32/gstconfig.h:
5315         * win32/gstelements.vcproj:
5316         * win32/gstenumtypes.c: (gst_object_flags_get_type):
5317         * win32/gstreamer.def:
5318         * win32/msvc71.sln:
5319           updates for the win32 build (patch from Sebastien Moutte)
5320
5321 2005-10-10  Andy Wingo  <wingo@pobox.com>
5322
5323         * gst/gstbin.c (gst_bin_get_state_func): Renamed from
5324         gst_bin_get_state, cleaned up (but no logic changes).
5325         (bin_element_is_sink): Comment updates.
5326         (sink_iterator_filter): Remove needless cast.
5327         (gst_bin_iterate_sinks): Doc update.
5328         (gst_bin_change_state_func): Renamed from gst_bin_change_state,
5329         cleaned up (but no logic changes).
5330
5331         * check/states/sinks.c (test_src_sink): Cleanups from the state
5332         change patch.
5333         (test_livesrc_sink): Sync on the state.
5334
5335         * check/pipelines/simple_launch_lines.c (run_pipeline): Merge from
5336         the state change patch.
5337
5338         * check/gst/gstghostpad.c (test_ghost_pads): Merge from the state
5339         change patch.
5340
5341         * check/gst/gstbin.c: Merge in some style fixes and additional
5342         checks from Wim's state change patch.
5343
5344 2005-10-10  Tim-Philipp Müller  <tim at centricular dot net>
5345
5346         * gst/base/gsttypefindhelper.c: (helper_find_peek),
5347         (gst_type_find_helper):
5348           Check whether we have the requested data already in our list of
5349           cached buffers before pulling a new buffer; also make the buffer
5350           list a GSList. Speeds up typefinding by ca. 5-10% altogether.
5351
5352 2005-10-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5353
5354         * gst/gstcaps.c:
5355         * gst/gstevent.c:
5356           doc updates
5357         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
5358           don't use long long, it's not portable.  Replacing with
5359           gint64 seems to work; let's hope no skeletons fall out of the closet.
5360
5361 2005-10-10  Andy Wingo  <wingo@pobox.com>
5362
5363         * autogen.sh (CONFIGURE_DEF_OPT): No more --plugin-buiddir, yay
5364
5365 2005-10-09  Stefan Kost  <ensonic@users.sf.net>
5366
5367         * docs/gst/gstreamer-sections.txt:
5368         * gst/gstevent.c:
5369         * gst/gstevent.h:
5370         * gst/gstinfo.c:
5371         * gst/gstinfo.h:
5372         * gst/gstmessage.c: (gst_message_parse_state_changed):
5373         * gst/gstpad.c:
5374         * gst/gstpad.h:
5375           more docs, fix compilation
5376
5377 2005-10-09  Philippe Khalaf <burger@speedy.org>
5378         * gst/gstmessage.c:
5379           Fixed a few forgotten variables on previous commit
5380
5381 2005-10-09  Tim-Philipp Müller  <tim at centricular dot net>
5382
5383         * gst/base/gsttypefindhelper.c: (helper_find_peek):
5384           Fix evil typefind crasher: getrange() might return a short
5385           buffer at the end of a file, but gst_type_find_peek() must
5386           either return the full data as requested or NULL, but
5387           never a short buffer.
5388
5389 2005-10-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5390
5391         * gst/gstmessage.c: (gst_message_new_state_changed),
5392         (gst_message_parse_state_changed):
5393         * gst/gstmessage.h:
5394           don't use "new", it's a C++ keyword
5395
5396 2005-10-08  Wim Taymans  <wim@fluendo.com>
5397
5398         * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_query):
5399         * gst/gstelement.c: (gst_element_post_message):
5400         * gst/gstpipeline.c: (gst_pipeline_change_state):
5401         Small docs and debug updates.
5402
5403 2005-10-08  Stefan Kost  <ensonic@users.sf.net>
5404
5405         * docs/gst/gstreamer-sections.txt:
5406         * gst/gstelementfactory.c:
5407         * gst/gstevent.c:
5408         * gst/gsttaglist.c:
5409           more docs
5410
5411 2005-10-08  Wim Taymans  <wim@fluendo.com>
5412
5413         * gst/gstbin.c: (is_eos), (update_degree), (gst_bin_change_state),
5414         (gst_bin_dispose), (bin_bus_handler):
5415         Fix typos, add comments.
5416         Clear EOS list when going to PAUSED from any direction and do it
5417         in a threadsafe way.
5418         Get base time in a threadsafe way too.
5419         Fix confusing debug in the change_state function.
5420         Various other small cleanups.
5421         
5422         * gst/gstelement.c: (gst_element_post_message):
5423         Fix very verbose bus posting code.
5424
5425         * gst/gstpipeline.c: (gst_pipeline_class_init),
5426         (gst_pipeline_set_property), (gst_pipeline_get_property),
5427         (gst_pipeline_change_state):
5428         Small ARG_ -> PROP_ cleanup
5429
5430 2005-10-08  Wim Taymans  <wim@fluendo.com>
5431
5432         * gst/gstbin.c: (is_eos), (bin_bus_handler):
5433         Do a less CPU demanding EOS check because we can.
5434
5435 2005-10-08  Wim Taymans  <wim@fluendo.com>
5436
5437         * libs/gst/dataprotocol/dataprotocol.c:
5438         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
5439         (gst_dp_packet_from_event):
5440         * libs/gst/dataprotocol/dataprotocol.h:
5441         * libs/gst/dataprotocol/dp-private.h:
5442         It's about time we bump the version number.
5443         Since event types don't fit in the guint8 anymore describing
5444         the payload type, make payload type 16 bits wide.
5445
5446 2005-10-08  Wim Taymans  <wim@fluendo.com>
5447
5448         * docs/design/part-TODO.txt:
5449         * docs/design/part-clocks.txt:
5450         * docs/design/part-events.txt:
5451         * docs/design/part-gstbin.txt:
5452         * docs/design/part-gstelement.txt:
5453         * docs/design/part-gstpipeline.txt:
5454         * docs/design/part-live-source.txt:
5455         * docs/design/part-messages.txt:
5456         * docs/design/part-overview.txt:
5457         * docs/design/part-states.txt:
5458         Many doc updates.
5459
5460 2005-10-08  Wim Taymans  <wim@fluendo.com>
5461
5462         * gst/gstevent.c:
5463         * gst/gstevent.h:
5464         Fix event quark registration.
5465         Add some space between events so we can insert them in the
5466         right groups.
5467
5468 2005-10-08  Wim Taymans  <wim@fluendo.com>
5469
5470         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
5471         (gst_base_sink_handle_buffer):
5472         Better log message.
5473
5474         * gst/gstbus.h:
5475         * gst/gstelement.h:
5476         More docs.
5477
5478         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
5479         (gst_queue_set_property), (gst_queue_get_property):
5480         * gst/gstqueue.h:
5481         Remove old unused properties.
5482
5483 2005-10-08  Stefan Kost  <ensonic@users.sf.net>
5484         * docs/gst/gstreamer-sections.txt:
5485         * gst/gstmessage.c:
5486         * gst/gstmessage.h:
5487         * gst/gstminiobject.c:
5488         * gst/gstminiobject.h:
5489         * gst/gstobject.h:
5490         * gst/gstpad.h:
5491         * gst/gstutils.h:
5492           lots of new docs and doc fixes
5493
5494 2005-10-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5495
5496         * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_load_file):
5497         * gst/gstplugin.h:
5498         * gst/gstregistry.c: (gst_registry_lookup_locked),
5499         (gst_registry_scan_path_level):
5500         * gst/gstregistryxml.c: (load_plugin):
5501           Only ever load one plugin for a given plugin basename.
5502           This ensures correct overriding of GST_PLUGIN_PATH over
5503           GST_PLUGIN_SYSTEM_PATH and of home dir plugins over
5504           system installed plugins.
5505
5506 2005-10-08  Wim Taymans  <wim@fluendo.com>
5507
5508         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
5509         (gst_base_sink_do_sync), (gst_base_sink_handle_buffer):
5510         Prepare for doing QOS.
5511
5512 2005-10-08  Wim Taymans  <wim@fluendo.com>
5513
5514         * check/gst/gstbin.c: (GST_START_TEST):
5515         * check/pipelines/cleanup.c: (GST_START_TEST):
5516         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
5517         Allow new clock message too.
5518
5519 2005-10-08  Wim Taymans  <wim@fluendo.com>
5520
5521         * gst/gstmessage.c: (gst_message_new_error),
5522         (gst_message_new_warning), (gst_message_new_tag),
5523         (gst_message_new_state_changed), (gst_message_new_clock_provide),
5524         (gst_message_new_clock_lost), (gst_message_new_new_clock),
5525         (gst_message_new_segment_start), (gst_message_new_segment_done),
5526         (gst_message_parse_state_changed),
5527         (gst_message_parse_clock_provide), (gst_message_parse_clock_lost),
5528         (gst_message_parse_new_clock):
5529         * gst/gstmessage.h:
5530         Also carry the clock in question.
5531
5532 2005-10-08  Wim Taymans  <wim@fluendo.com>
5533
5534         * gst/gstmessage.c: (gst_message_new_custom),
5535         (gst_message_new_eos), (gst_message_new_error),
5536         (gst_message_new_warning), (gst_message_new_tag),
5537         (gst_message_new_state_changed), (gst_message_new_clock_provide),
5538         (gst_message_new_new_clock), (gst_message_new_segment_start),
5539         (gst_message_new_segment_done), (gst_message_parse_state_changed),
5540         (gst_message_parse_clock_provide), (gst_message_parse_new_clock):
5541         * gst/gstmessage.h:
5542         Clean up.
5543         Added clock related messages.
5544
5545         * gst/gstpipeline.c: (gst_pipeline_change_state):
5546         Post message when the clock changed.
5547
5548         * tools/gst-launch.c: (event_loop):
5549         Print new clock.
5550
5551 2005-10-08  Tim-Philipp Müller  <tim at centricular dot net>
5552
5553         * tools/gst-inspect.c: (print_element_properties_info):
5554           Can't pass NULL strings to g_print() on windows.
5555
5556 2005-10-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5557
5558         * docs/Makefile.am:
5559         * docs/gst/Makefile.am:
5560         * docs/gst/gstreamer-docs.sgml:
5561         * docs/gst/running.xml:
5562         * docs/version.entities.in:
5563           add a chapter on running GStreamer.
5564           document GST_DEBUG and GST_PLUGIN* env vars
5565
5566 2005-10-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5567
5568         * Makefile.am:
5569           remove include dir
5570         * configure.ac:
5571           remove PLUGINS_BUILDDIR stuff
5572         * gst/gst.c: (init_post):
5573           reorder parsing of GST_PLUGIN_PATH and GST_PLUGIN_SYSTEM_PATH
5574         * idiottest.mak:
5575           remove, it was condescending and not needed
5576
5577 2005-10-08  Wim Taymans  <wim@fluendo.com>
5578
5579         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_flush),
5580         (gst_base_sink_handle_object), (gst_base_sink_event),
5581         (gst_base_sink_wait), (gst_base_sink_handle_event),
5582         (gst_base_sink_change_state):
5583         * gst/base/gstbasesink.h:
5584         Repost EOS message while going to PLAYING if still EOS.
5585         Make sure that when receiving a FLUSH_START we don't attempt
5586         to sync on the clock anymore.
5587
5588 2005-10-08  Wim Taymans  <wim@fluendo.com>
5589
5590         * tools/gst-launch.c: (event_loop):
5591         Better message printout.
5592
5593 2005-10-08  Wim Taymans  <wim@fluendo.com>
5594
5595         * gst/gstbin.c: (gst_bin_child_proxy_get_child_by_index),
5596         (gst_bin_child_proxy_get_children_count):
5597         * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
5598         (gst_child_proxy_lookup), (gst_child_proxy_get_property),
5599         (gst_child_proxy_get_valist), (gst_child_proxy_set_property),
5600         (gst_child_proxy_set_valist):
5601         * gst/parse/grammar.y:
5602         Make ChildProxy threadsafe and fix mem leaks.
5603
5604 2005-10-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5605
5606         * gst/gst.c: (init_post):
5607           debug the GST_PLUGIN_ env vars
5608
5609 2005-10-08  Wim Taymans  <wim@fluendo.com>
5610
5611         * check/gst/gstbin.c: (GST_START_TEST):
5612         * check/gst/gstmessage.c: (GST_START_TEST):
5613         * check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
5614         * gst/gstelement.c: (gst_element_commit_state),
5615         (gst_element_lost_state):
5616         * gst/gstmessage.c: (gst_message_new_state_changed),
5617         (gst_message_parse_state_changed):
5618         * gst/gstmessage.h:
5619         * tools/gst-launch.c: (event_loop):
5620         Added extra field to STATE_CHANGE message with the pending
5621         state, which will be different from the new state soon.
5622
5623 2005-10-08  Wim Taymans  <wim@fluendo.com>
5624
5625         * gst/gstbus.c: (gst_bus_pop):
5626         * gst/gstclock.c:
5627         * gst/gstsystemclock.c: (gst_system_clock_async_thread):
5628         Small cleanups and doc updates.
5629
5630 2005-10-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5631
5632         * gst/gst.c: (init_pre):
5633         * gst/gstbin.c: (gst_bin_add_func):
5634           log distributing clocks and base time
5635         * gst/gstregistry.c: (gst_registry_add_plugin),
5636         (gst_registry_scan_path_level), (gst_registry_scan_path):
5637           clean up the debugging output a little
5638         * gst/gstutils.c: (gst_element_state_get_name):
5639           warn about a memleak (I've actually seen this be used, though
5640           it was probably a bug)
5641
5642 2005-10-07  Wim Taymans  <wim@fluendo.com>
5643
5644         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
5645         (gst_base_src_init), (gst_base_src_default_newsegment),
5646         (gst_base_src_newsegment), (gst_base_src_do_seek),
5647         (gst_base_src_loop), (gst_base_src_start):
5648         * gst/base/gstbasesrc.h:
5649         Make the newsegment event customizable by subclasses.
5650
5651 2005-10-07  Wim Taymans  <wim@fluendo.com>
5652
5653         * gst/gstevent.c: (gst_event_new_buffersize),
5654         (gst_event_parse_buffersize):
5655         * gst/gstevent.h:
5656         New event for future idea.
5657
5658 2005-10-07  Andy Wingo  <wingo@pobox.com>
5659
5660         * gst/gstelement.c (gst_element_post_message): Doc update.
5661
5662         * docs/gst/gstreamer-sections.txt: Update.
5663
5664         * gst/gstmessage.c (gst_message_new_application): Made into a
5665         function like honest API calls.
5666         (gst_message_new_element): New message type.
5667
5668         * gst/gstmessage.h (enum): Add GST_MESSAGE_ELEMENT type.
5669
5670         * check/elements/fakesrc.c (test_no_preroll): New check, checks
5671         that setting a live fakesrc to PAUSED returns NO_PREROLL both
5672         times.
5673
5674         * gst/base/gstbasesrc.c (gst_base_src_change_state): Allow a
5675         NO_PREROLL from gst_element_change_state to fall through.
5676
5677 2005-10-07  Wim Taymans  <wim@fluendo.com>
5678
5679         * gst/gstghostpad.c: (gst_ghost_pad_get_internal),
5680         (gst_ghost_pad_do_activate_push):
5681         Activating a ghostpad with no internal pad in push mode
5682         is ok.
5683
5684 2005-10-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5685
5686         * gst/gstobject.h:
5687           there's no point in wrapping FLAG_SET/_UNSET in STMT macros.
5688           Fixes compilation on Windows.
5689
5690 2005-10-07  Michael Smith <msmith@fluendo.com>
5691
5692         * tools/gst-inspect.c:
5693           Print out feature and plugin count at the end when printing out
5694           all features.
5695
5696 2005-10-04  Michael Smith <msmith@fluendo.com>
5697
5698         * gst/gsterror.c: (_gst_stream_errors_init):
5699           Add another error string used in a few existing plugins.
5700
5701         * gst/gstplugin.c:
5702         * gst/gstpluginfeature.c: (gst_plugin_feature_load):
5703         * tools/gst-inspect.c: (print_element_info):
5704           When a feature disappears from a plugin (and the feature exists in
5705           the cached registry file), things went horribly wrong. This isn't a
5706           complete fix, we should actually be removing the 'missing' features
5707           from the features list when we load the actual plugin. That's not
5708           yet implemented. 
5709
5710 2005-10-04  Johan Dahlin  <johan@gnome.org>
5711
5712         * check/gst/gstiterator.c: (GST_START_TEST):
5713         * gst/gstbin.c: (gst_bin_iterate_elements),
5714         (gst_bin_iterate_recurse), (gst_bin_iterate_sorted):
5715         * gst/gstelement.c: (gst_element_iterate_pads):
5716         * gst/gstformat.c: (gst_format_iterate_definitions):
5717         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
5718         (gst_iterator_new_list), (gst_iterator_filter):
5719         * gst/gstiterator.h:
5720         * gst/gstquery.c: (gst_query_type_iterate_definitions):
5721         Add a GType to GstIterator, update callsites and tests.
5722
5723 2005-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5724
5725         * gst/gstpad.c: (gst_pad_event_default_dispatch):
5726           give events a chance to be handled by event probes when the pad
5727           is not linked
5728
5729 2005-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5730
5731         * gst/gstevent.c: (gst_event_type_get_name),
5732         (gst_event_type_to_quark), (gst_event_finalize), (gst_event_new):
5733         * gst/gstevent.h:
5734           add string representations for event types
5735
5736 2005-10-06  Wim Taymans  <wim@fluendo.com>
5737
5738         * gst/elements/gstfilesink.c: (gst_file_sink_close_file):
5739         Don't use NULL pointers.
5740
5741 2005-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5742
5743         * gst/gst_private.h:
5744         * gst/gstbus.c:
5745         * gst/gstelement.c:
5746         * gst/gstinfo.c:
5747         * gst/gstpluginfeature.c:
5748           widen the debug category in output to fit the biggest one we have
5749           add a bus category and use it
5750           play with the colors
5751           fix up some categories
5752
5753 2005-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5754
5755         * gst/gstghostpad.c: (gst_ghost_pad_internal_do_activate_push):
5756           add push activation of sink ghost pads.
5757           Andye, please verify
5758
5759 2005-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5760
5761         * gst/gstutils.c: (gst_element_link_pads):
5762           fix a bug in the case where neither element has a pad
5763         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
5764           add a test for that case
5765
5766 2005-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5767
5768         * gst/gstpad.c: (gst_pad_push), (gst_pad_push_event):
5769           emit have-data before checking for peers.  This allows
5770           for probe handlers to connect elements.  This helps autopluggers.
5771         * check/gst/gstpad.c: (GST_START_TEST), (_probe_handler),
5772         (gst_pad_suite):
5773           add six checks, linked/unlinked with no/true/false probe
5774
5775 2005-10-04  Wim Taymans  <wim@fluendo.com>
5776
5777         * gst/elements/gstfakesink.c: (gst_fake_sink_get_property),
5778         (gst_fake_sink_event), (gst_fake_sink_preroll),
5779         (gst_fake_sink_render), (gst_fake_sink_change_state):
5780         * gst/elements/gstfakesrc.c: (gst_fake_src_event_handler),
5781         (gst_fake_src_get_property), (gst_fake_src_create),
5782         (gst_fake_src_stop):
5783         * gst/elements/gstidentity.c: (gst_identity_stop):
5784         Protect last_message with lock.
5785
5786 2005-10-04  Edward Hervey  <edward@fluendo.com>
5787
5788         * gst/gstformat.h: 
5789         Added precision in the comments for GST_FORMAT_DEFAULT
5790
5791 2005-10-04  Tim-Philipp Müller  <tim at centricular dot net>
5792
5793         * tools/gst-launch.c: (main):
5794           Don't try to run erroneous pipelines.
5795
5796 2005-10-04  Julien MOUTTE  <julien@moutte.net>
5797
5798         * gst/gstbus.c: We don't need this header.
5799
5800 2005-10-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5801
5802         * configure.ac:
5803           back to development
5804
5805 === release 0.9.3 ===
5806
5807 2005-10-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5808
5809         * README:
5810         * configure.ac:
5811           Releasing 0.9.3, "Unregistered"
5812
5813 2005-10-03  Andy Wingo  <wingo@pobox.com>
5814
5815         * gst/gstpad.c (gst_pad_activate_push): There is a race condition
5816         whereby calling a pad's activatepush() function can start a thread
5817         that starts to push or pull before the pad gets the FLUSHING flag
5818         unset. Hack around it by holding the stream lock until the flag is
5819         set. Need to replace this with a proper solution. Together with
5820         the ghost pad fixes, this fixes mp3 playing/tagreading.
5821
5822         * docs/design/part-gstghostpad.txt: Add a note about activation of
5823         proxy pads outside of ghost pads.
5824
5825         * gst/gstghostpad.c: Implement the ghost pad activation design.
5826
5827 2005-10-02  Andy Wingo  <wingo@pobox.com>
5828
5829         * gst/gstobject.h (GST_OBJECT_REFCOUNT_VALUE): Just use the int.
5830         It is volatile, after all.
5831
5832         * docs/design/part-gstghostpad.txt: Flesh out activation with
5833         ghost pads.
5834
5835         * gst/base/gstbasesrc.c (gst_base_src_init): Use
5836         GST_DEBUG_FUNCPTR.
5837
5838 2005-10-02  Tim-Philipp Müller  <tim at centricular dot net>
5839
5840         * configure.ac:
5841           Fix (unused) AM_CONDITIONAL tests.
5842
5843 2005-10-01  Alessandro Decina  <alessandro at nnva dot org>
5844
5845         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
5846
5847         * gst/gstutils.c: (gst_pad_query_convert):
5848           Add assertion that makes sure src_val is >=0, just like
5849           gst_query_new_convert() has. (#315895)
5850
5851 2005-09-30  Edward Hervey  <edward@fluendo.com>
5852
5853         * gst/elements/gsttee.c: (gst_tee_do_push), (gst_tee_handle_buffer):
5854         Let's not iterate pads we're not interested in, it avoids getting 
5855         sky-high refcounts on sinkpad.
5856
5857 2005-09-30  Wim Taymans  <wim@fluendo.com>
5858
5859         * gst/gstelement.c: (gst_element_set_state),
5860         (gst_element_change_state):
5861         Small tweak, element in ASYNC remains ASYNC.
5862
5863 2005-09-30  Wim Taymans  <wim@fluendo.com>
5864
5865         * gst/base/gstbasesink.c: (gst_base_sink_change_state):
5866         Only error is an error.
5867
5868         * gst/gstbin.c: (gst_bin_change_state):
5869         Better debugging.
5870
5871         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_chain):
5872         Also call pad_block in pad alloc.
5873
5874         * gst/gstutils.c: (gst_flow_get_name):
5875         Better debugging.
5876
5877 2005-09-29  Tim-Philipp Müller  <tim at centricular dot net>
5878
5879         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
5880         (gst_base_src_get_range):
5881           Fix documentation typos. Add some more debug info.
5882
5883 2005-09-29  David Schleef  <ds@schleef.org>
5884
5885         * gst/gstplugin.c: (gst_plugin_load_file): Make some error messages
5886           more end-user friendly.
5887         * tools/gst-inspect.c: (main): Check if command-line argument is
5888           a file and attempt to load that file as a plugin.
5889
5890 2005-09-29  Thomas Vander Stichele  <thomas at apestaart dot org>
5891
5892         * check/gst/gstbin.c:
5893         * check/states/sinks.c:
5894           fix tests for the new warning
5895         * check/gst/gstpipeline.c:
5896           add a test for pipeline and bus interaction
5897         * gst/gstelement.c:
5898           elements should be NULL if they get disposed; add a warning if not
5899
5900 2005-09-29  Thomas Vander Stichele  <thomas at apestaart dot org>
5901
5902         * gst/gstobject.c:
5903           for 2.6 refcounting, make debug log more correct by printing
5904           the actual refcounts at the time of swap (Wim)
5905
5906 2005-09-29  Andy Wingo  <wingo@pobox.com>
5907
5908         * gst/gstbus.c (gst_bus_remove_signal_watch): New function,
5909         removes signal watches previously added via
5910         gst_bus_add_signal_watch.
5911         (gst_bus_add_signal_watch): Don't return the source id, just store
5912         it on the bus if there wasn't an id already.
5913
5914         * gst/gstbus.h (GstBus): Add a couple new fields. API changes for
5915         add_signal_watch and remove_signal_watch.
5916
5917 2005-09-29  Edward Hervey  <edward@fluendo.com>
5918
5919         * libs/gst/controller/gstcontroller.c: (gst_controller_new_list): 
5920         Better if we actually iterate the list :)
5921
5922 2005-09-29  Wim Taymans  <wim@fluendo.com>
5923
5924         * check/gst/gstbin.c: (GST_START_TEST):
5925         Change for new bus API.
5926
5927         * check/gst/gstbus.c: (message_func_eos), (message_func_app),
5928         (send_messages), (GST_START_TEST), (gstbus_suite):
5929         Change for new bus signal API.
5930
5931         * gst/gstbus.c: (gst_bus_class_init), (gst_bus_have_pending),
5932         (gst_bus_source_prepare), (gst_bus_source_check),
5933         (gst_bus_create_watch), (gst_bus_add_watch_full),
5934         (gst_bus_add_watch), (gst_bus_poll), (gst_bus_async_signal_func),
5935         (gst_bus_sync_signal_handler), (gst_bus_add_signal_watch):
5936         * gst/gstbus.h:
5937         Remove support for multiple GSources operating on different
5938         message types as it is too complex and unneeded when using
5939         signals.
5940         Added support for receiving signals from the bus.
5941
5942 2005-09-29  Thomas Vander Stichele  <thomas at apestaart dot org>
5943
5944         * docs/libs/tmpl/gstdataprotocol.sgml:
5945         * docs/manual/advanced-dataaccess.xml:
5946         * gst/elements/gstcapsfilter.c:
5947         * gst/gstutils.c:
5948           rename filter-caps to caps property
5949
5950 2005-09-29  Tim-Philipp Müller  <tim at centricular dot net>
5951
5952         * gst/gstvalue.c: (gst_value_deserialize_fraction):
5953           More robust fraction string parsing.
5954
5955         * docs/pwg/appendix-porting.xml:
5956           Mention gst_pad_use_explicit_caps() => gst_pad_use_fixed_caps()
5957
5958 2005-09-29  Tim-Philipp Müller  <tim at centricular dot net>
5959
5960         * gst/gstcaps.c: (gst_caps_do_simplify):
5961           Thou shalt not free a structure and then continue using it
5962           in the next loop iteration.
5963
5964         * check/gst/gstcaps.c: (check_fourcc_list), (test_simplify),
5965         (gst_caps_suite):
5966           Add test case for caps simplification.
5967
5968 2005-09-29  Wim Taymans  <wim@fluendo.com>
5969
5970         * check/gst/gstbin.c: (GST_START_TEST):
5971         Oops.
5972
5973 2005-09-29  Wim Taymans  <wim@fluendo.com>
5974
5975         * check/gst/gstbin.c: (GST_START_TEST):
5976         Add bus to bin.
5977
5978         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
5979         (add_to_queue), (clear_queue), (reset_degree), (update_degree),
5980         (find_element), (gst_bin_sort_iterator_next),
5981         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
5982         (gst_bin_iterate_sorted), (gst_bin_element_set_state),
5983         (gst_bin_change_state), (gst_bin_dispose):
5984         A bin does not have a bus, it gets the bus from the parent.
5985
5986         * gst/gstelement.c: (gst_element_requires_clock),
5987         (gst_element_provides_clock), (gst_element_is_indexable),
5988         (gst_element_is_locked_state), (gst_element_change_state),
5989         (gst_element_set_bus_func):
5990         Small cleanups.
5991
5992         * gst/gstpipeline.c: (gst_pipeline_class_init),
5993         (gst_pipeline_init), (gst_pipeline_provide_clock_func):
5994         The pipeline provides a bus.
5995
5996 2005-09-28  Johan Dahlin  <johan@gnome.org>
5997
5998         * gst/gstmessage.c (gst_message_parse_state_changed): Use
5999         gst_structure_get_enum instead of gst_structure_get_int
6000
6001         * gst/gststructure.c (gst_structure_get_enum): Impl.
6002
6003         * gst/gststructure.h (gst_structure_get_enum): Add
6004
6005         * docs/gst/gstreamer-sections.txt: Ditto
6006
6007         * gst/gstmessage.c (gst_message_new_state_changed): Use
6008         GST_TYPE_STATE instead of G_TYPE_INT, mainly for language bindings
6009         which does introspection.
6010         Reviewed by Christian Schaller
6011
6012 2005-09-28  Stefan Kost  <ensonic@users.sf.net>
6013
6014         * gst/gstinfo.c: (gst_debug_log_default):
6015           don't do dummy g_strdup()s
6016         * libs/gst/controller/gstcontroller.c:
6017         (on_object_controlled_property_changed),
6018         (gst_controlled_property_new), (gst_controller_new_valist),
6019         (gst_controller_new_list),
6020         (gst_controller_remove_properties_valist), (gst_controller_set),
6021         (gst_controller_get), (gst_controller_sync_values),
6022         (gst_controller_get_value_array), (_gst_controller_class_init),
6023         (gst_controller_get_type):
6024         * libs/gst/controller/gstcontroller.h:
6025         * libs/gst/controller/gstinterpolation.c:
6026         (gst_controlled_property_find_timed_value_node):
6027           convert // to /**/ comments
6028
6029 2005-09-28  Wim Taymans  <wim@fluendo.com>
6030
6031         * gst/gstbus.c: (marshal_VOID__MINIOBJECT), (gst_bus_class_init),
6032         (gst_bus_post), (poll_func), (gst_bus_async_signal_func),
6033         (gst_bus_sync_signal_handler):
6034         * gst/gstbus.h:
6035         Added async-message and sync-message signals to the bus.
6036         Added helper BusFunc to emit signals for all posted messages.
6037
6038         * gst/gstmessage.c: (gst_message_type_get_name),
6039         (gst_message_type_to_quark), (gst_message_get_type):
6040         * gst/gstmessage.h:
6041         Register quarks for message names.
6042
6043 2005-09-28  Stefan Kost  <ensonic@users.sf.net>
6044
6045         * docs/libs/gstreamer-libs-sections.txt:
6046         * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
6047         (gst_controller_new_list):
6048         * libs/gst/controller/gstcontroller.h:
6049           added another constructor for language bindings
6050
6051 2005-09-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6052
6053         * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
6054           add another check
6055         * gst/gstbus.c:
6056           add some doc
6057         * gst/gstinfo.c: (_gst_debug_init):
6058           slightly more readable color for refcount debugging
6059
6060 2005-09-28  Wim Taymans  <wim@fluendo.com>
6061
6062         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_provide_clock_func),
6063         (add_to_queue), (clear_queue), (reset_degree), (update_degree),
6064         (find_element), (gst_bin_sort_iterator_next),
6065         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
6066         (gst_bin_iterate_sorted), (gst_bin_element_set_state),
6067         (gst_bin_change_state), (gst_bin_dispose):
6068         Small doc fixes. get_clock -> provide_clock.
6069
6070         * gst/gstelement.c: (gst_element_class_init),
6071         (gst_element_provides_clock), (gst_element_provide_clock),
6072         (gst_element_get_clock), (gst_element_commit_state),
6073         (gst_element_lost_state):
6074         * gst/gstelement.h:
6075         Make get/set_clock() symetric. Add provide_clock vmethod since
6076         that is actually what this function does.
6077
6078         * gst/gstpipeline.c: (gst_pipeline_class_init),
6079         (gst_pipeline_change_state), (gst_pipeline_provide_clock_func),
6080         (gst_pipeline_get_clock):
6081         get_clock -> provide_clock.
6082
6083 2005-09-28  Andy Wingo  <wingo@pobox.com>
6084
6085         * gst/base/gstbasesrc.c (gst_base_src_unlock): Comment a bit in
6086         lieu of real docs...
6087
6088         * gst/elements/gstfdsrc.c: Cleaned up a bit.
6089
6090 2005-09-28  Tim-Philipp Müller  <tim at centricular dot net>
6091
6092         * gst/elements/gstcapsfilter.c:
6093         * gst/elements/gstfakesink.c:
6094         * gst/elements/gstfakesrc.c:
6095         * gst/elements/gstfdsink.c:
6096         * gst/elements/gstfdsrc.c:
6097         * gst/elements/gstfilesink.c:
6098         * gst/elements/gstfilesrc.c:
6099         * gst/elements/gstidentity.c:
6100         * gst/elements/gsttee.c:
6101         * gst/elements/gsttypefindelement.c:
6102           Make element details static.
6103
6104 2005-09-28  Wim Taymans  <wim@fluendo.com>
6105
6106         * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
6107         (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
6108         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
6109         (gst_bin_iterate_sorted), (gst_bin_element_set_state),
6110         (gst_bin_change_state), (gst_bin_dispose):
6111         Some documentation updates.
6112         Clean up dispose handlers.
6113
6114         * gst/gstobject.c: (gst_object_ref), (gst_object_unref):
6115         * gst/gstpad.c: (gst_pad_dispose):
6116         Clean up dispose handler.
6117
6118         * gst/gstpipeline.c: (gst_pipeline_change_state):
6119         Removed spurious UNLOCK.
6120
6121 2005-09-27  Stefan Kost  <ensonic@users.sf.net>
6122
6123         * docs/gst/gstreamer-sections.txt:
6124         * gst/base/gstbasesrc.h:
6125         * gst/gstelement.h:
6126         * gst/gstevent.h:
6127         * gst/gstobject.h:
6128         * gst/gstpad.h:
6129         * gst/gstpipeline.c:
6130         * gst/gstpipeline.h:
6131         * gst/gstutils.h:
6132         * gst/gstxml.h:
6133           added two new functions to the docs
6134                 documents all undocumented GstXXXFlags
6135                 completed some incomplete docs 
6136
6137 2005-09-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6138
6139         * gst/gstbin.c: (gst_bin_dispose):
6140         * gst/gstelement.c: (gst_element_dispose):
6141           remove now useless and leaky resurrection code in dispose
6142         * gst/base/gstbasesrc.c: (gst_base_src_init):
6143         * gst/gstelementfactory.c: (gst_element_factory_create):
6144         * gst/gstobject.c: (gst_object_set_parent):
6145           add some debugging
6146
6147 2005-09-27  Wim Taymans  <wim@fluendo.com>
6148
6149         * docs/design/part-TODO.txt:
6150         Update TODO.
6151
6152         * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
6153         (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
6154         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
6155         (gst_bin_iterate_sorted), (gst_bin_element_set_state),
6156         (gst_bin_change_state):
6157         * gst/gstelement.h:
6158         Remove element variable, we keep element info in the iterator now.
6159
6160 2005-09-27  Andy Wingo  <wingo@pobox.com>
6161
6162         * libs/gst/dataprotocol/dataprotocol.c: Fix error-checking return
6163         values.
6164
6165 2005-09-27  Wim Taymans  <wim@fluendo.com>
6166
6167         * check/gst/gstbin.c: (GST_START_TEST):
6168         Enable check that works now.
6169
6170         * gst/gstbin.c: (add_to_queue), (clear_queue), (reset_outdegree),
6171         (update_outdegree), (find_element), (gst_bin_sort_iterator_next),
6172         (gst_bin_sort_iterator_resync), (gst_bin_sort_iterator_free),
6173         (gst_bin_iterate_sorted), (gst_bin_element_set_state),
6174         (gst_bin_change_state):
6175         * gst/gstbin.h:
6176         Redid the state change algorithm using a topological sort algo.
6177         Handles all cases correctly.
6178         Exposed iterator for state change order.
6179
6180         * gst/gstelement.h:
6181         Temp storage for state changes. Need to get rid of this soon.
6182
6183 2005-09-27  Wim Taymans  <wim@fluendo.com>
6184
6185         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_do_push):
6186         * gst/gstutils.c: (intersect_caps_func), (gst_pad_proxy_getcaps),
6187         (link_fold_func), (gst_pad_proxy_setcaps):
6188         Leak fixes, the fold functions need to unref the passed object and
6189         _get_parent_*() returns ref to parent.
6190
6191 2005-09-27  Tim-Philipp Müller  <tim at centricular dot net>
6192
6193         * check/gst/gstbuffer.c: (test_make_writable):
6194           Plug leak in test case and fix 'make check-valgrind'
6195
6196 2005-09-27  Tim-Philipp Müller  <tim at centricular dot net>
6197
6198         * gst/gstbuffer.c: (gst_subbuffer_init):
6199           Set READONLY flag on subbuffers, so that gst_buffer_make_writable()
6200           works correctly in all circumstances (we could have just copied
6201           the parent buffer's readonly flag, but conceptually it seems
6202           cleaner to mark all subbuffers as read-only). (based on patch
6203           by Alessandro Decina, #314710).
6204         
6205         * check/gst/gstbuffer.c: (create_read_only_buffer),
6206         (test_make_writable), (test_subbuffer_make_writable),
6207         (gst_test_suite):
6208           Add some tests for gst_buffer_make_writable().
6209
6210 2005-09-27  Wim Taymans  <wim@fluendo.com>
6211
6212         * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_change_state):
6213         use gst_object_has_ancestor().
6214
6215         * gst/gstobject.c: (gst_object_has_ancestor):
6216         * gst/gstobject.h:
6217         gst_object_has_ancestor() copied from gstbin.c as it is a
6218         usefull function.
6219
6220         * tests/instantiate/create.c: (create_all_elements):
6221         * tests/lat.c: (handoff_src), (handoff_sink):
6222         * tests/sched/runxml.c: (main):
6223         * tests/seeking/seeking1.c: (main):
6224         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
6225         (main):
6226         Fix compilation of some tests.
6227
6228 2005-09-27  Tim-Philipp Müller  <tim at centricular dot net>
6229
6230         * gst/gsterror.h:
6231           Remove comment. GST_TYPE_G_ERROR is here to stay,
6232           G_TYPE_ERROR has been WONTFIX'ed by the GLib folks
6233           (#316961, #300610).
6234
6235 2005-09-26  Wim Taymans  <wim@fluendo.com>
6236
6237         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
6238         Added check that shows error in state change order.
6239
6240 2005-09-26  Wim Taymans  <wim@fluendo.com>
6241
6242         * gst/gstbin.c: (gst_bin_change_state):
6243         Make state change function use 3 queues again, we were
6244         adding elements in the wrong order.
6245
6246         * gst/gstghostpad.c: (gst_ghost_pad_do_unlink):
6247         Some debug info,
6248
6249         * gst/gstpad.c: (gst_pad_dispose):
6250         Added some debug info first.
6251
6252 2005-09-26  Tim-Philipp Müller  <tim at centricular dot net>
6253
6254         * docs/design/draft-push-pull.txt:
6255         * docs/design/part-events.txt:
6256         * docs/design/part-overview.txt:
6257         * docs/design/part-scheduling.txt:
6258           Replace all _pull_region() with _pull_range()
6259           
6260 2005-09-26  Andy Wingo  <wingo@pobox.com>
6261
6262         * gst/gstvalue.c (_gst_value_initialize): Better fakeout.
6263
6264         * check/gst-libs/controller.c: Update for controller api change.
6265
6266         * configure.ac: 
6267         * tests/Makefile.am:
6268         * tests/memchunk: Remove memchunk benchmark stuff, this is taken
6269         over by GLib bug 118439.
6270         
6271         * gst/base/gstbasesink.c (gst_base_sink_wait): Factor out the wait
6272         routines to a function.
6273
6274         * docs/libs/gstreamer-libs-sections.txt: I am a good person today.
6275
6276         * libs/gst/controller/gsthelper.c:
6277         * libs/gst/controller/gstcontroller.h (gst_controller_sync_values)
6278         (gst_object_sync_values): Renamed from sink_values. Ugh.
6279
6280         * libs/gst/controller/gsthelper.c: Update for __gst_controller_key.
6281
6282         * libs/gst/controller/gstcontroller.c (__gst_controller_key):
6283         Renamed from controller_key, as it is exported.
6284
6285         * gst/gstvalue.c (_gst_value_initialize): Fake out the compiler.
6286
6287 2005-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6288
6289         * gst/Makefile.am:
6290         * gst/gst.h:
6291         * gst/gstpad.h:
6292         * gst/gstpadtemplate.h:
6293         * gst/gstquery.c:
6294         * gst/gstquery.h:
6295         * gst/gstqueryutils.c:
6296         * gst/gstqueryutils.h:
6297           remove queryutils headers after moving the two used functions
6298           to gstquery.  also fixes build problem for gstsiddec
6299
6300 2005-09-26  Michael Smith <msmith@fluendo.com>
6301
6302         * tools/gst-launch.1.in:
6303         Correct documentation in manpage of debug syntax
6304
6305 2005-09-26  Wim Taymans  <wim@fluendo.com>
6306
6307         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
6308         (gst_base_src_is_seekable), (gst_base_src_change_state):
6309         Some more debugging info.
6310
6311 2005-09-25  Stefan Kost  <ensonic@users.sf.net>
6312
6313         * docs/gst/gstreamer-sections.txt:
6314         * gst/base/gstbasetransform.h:
6315         * gst/gstindex.h:
6316           added more docs
6317
6318 2005-09-25  Stefan Kost  <ensonic@users.sf.net>
6319
6320         * docs/gst/.cvsignore:
6321         * docs/gst/tmpl/.cvsignore:
6322         * docs/gst/tmpl/gstpipeline.sgml:
6323         * docs/gst/tmpl/gstplugin.sgml:
6324         * gst/gstpipeline.c:
6325         * gst/gstplugin.c:
6326         * gst/gstplugin.h:
6327           inlined the last two docs files
6328           removed the tmpl directory from cvs (no more conflicts here!)
6329
6330 2005-09-25  Stefan Kost  <ensonic@users.sf.net>
6331
6332         * docs/gst/gstreamer-sections.txt:
6333         * docs/gst/tmpl/.cvsignore:
6334         * docs/gst/tmpl/gstpad.sgml:
6335         * docs/gst/tmpl/gstpadtemplate.sgml:
6336         * gst/Makefile.am:
6337         * gst/gstpad.c: (gst_pad_class_init), (gst_pad_dispose),
6338         (gst_pad_finalize), (gst_pad_set_pad_template):
6339         * gst/gstpad.h:
6340         * gst/gstpadtemplate.c: (gst_pad_template_get_type),
6341         (gst_pad_template_class_init), (gst_pad_template_init),
6342         (gst_pad_template_dispose), (name_is_valid),
6343         (gst_static_pad_template_get), (gst_pad_template_new),
6344         (gst_static_pad_template_get_caps), (gst_pad_template_get_caps),
6345         (gst_pad_template_pad_created):
6346         * gst/gstpadtemplate.h:
6347           inlined two more docs
6348           factored gstpadtemplate out of gstpad
6349
6350 2005-09-24  Tim-Philipp Müller  <tim at centricular dot net>
6351
6352         * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
6353         (test_children_state_change_order_semi_sink):
6354           Fix test case: we can't rely on a fixed state change order when
6355           going from READY => PAUSED because the sink might commit its 
6356           new state first when the first buffer created by the source 
6357           reaches the sink before the source has finished its change state.
6358           (Test case still fails at times, see #316856, comment 5 onwards)
6359
6360 2005-09-24  Wim Taymans  <wim@fluendo.com>
6361
6362         * docs/design/part-events.txt:
6363         * docs/design/part-gstbus.txt:
6364         * docs/design/part-gstpipeline.txt:
6365         * docs/design/part-messages.txt:
6366         * docs/design/part-overview.txt:
6367         * docs/design/part-segments.txt:
6368         * gst/gstbin.c:
6369         * gst/gstbuffer.c:
6370         * gst/gstclock.c:
6371         * gst/gstelement.c:
6372         * gst/gstevent.c:
6373         * gst/gstfilter.c:
6374         * gst/gstiterator.c:
6375         Various documentation updates.
6376
6377 2005-09-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6378
6379         * gst/gstclock.h:
6380           Well, that's embarassing.  Luckily we weren't using
6381           GST_CLOCK_DIFF anywhere.
6382
6383 2005-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6384
6385         * common/gtk-doc.mak:
6386           don't fail on building XML, FC4 slave shows a bunch of doc
6387           missing bits that I don't get
6388         * gst/gstpad.c:
6389         * gst/gstpipeline.c:
6390         * gst/gststructure.c:
6391           some doc updates
6392
6393 2005-09-23  Tim-Philipp Müller  <tim at centricular dot net>
6394
6395         * docs/design/part-gstbin.txt:
6396         * docs/design/part-gstbus.txt:
6397         * gst/gstbus.c:
6398           Add blurb about how the bus goes into flushing mode and
6399           drops all messages when its bin goes from READY into NULL 
6400           state.
6401
6402 2005-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6403
6404         * docs/gst/gstreamer-sections.txt:
6405         * gst/gststructure.c: (gst_structure_get_clock_time):
6406         * gst/gststructure.h:
6407           add a method to get a GstClockTime out of a structure
6408
6409 2005-09-23  Tim-Philipp Müller  <tim at centricular dot net>
6410
6411         * check/gst/gstbin.c: (test_children_state_change_order_flagged_sink),
6412         (test_children_state_change_order_semi_sink), (gst_bin_suite):
6413           Added test to check state change order in bins (can still be made
6414           to fail here under heavy disk load; bails out with 'Push on pad
6415           fakesink:sink0, but it was not activated in push mode').
6416
6417         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_change_state):
6418           Fix state change order when there is only a semi sink (#316856)
6419
6420         * gst/gstbus.c: (gst_bus_class_init):
6421           Use _class_peek_parent(), not _class_ref(); fix docs to say
6422           'default main context' instead of 'mainloop' where that is
6423           what's meant.
6424
6425         * gst/gstelement.c: (gst_element_commit_state),
6426         (gst_element_set_state):
6427           Fix typos in debug messages
6428
6429 2005-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6430
6431         * docs/README:
6432         * gst/gstpad.c: (gst_pad_class_init), (gst_pad_chain):
6433         * gst/gstpluginfeature.c:
6434         * gst/gstutils.c:
6435           various doc updates
6436         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
6437           change an assert into an error until it gets fixed properly
6438
6439 2005-09-23  Stefan Kost  <ensonic@users.sf.net>
6440
6441         * docs/gst/gstreamer-sections.txt:
6442         * docs/gst/tmpl/.cvsignore:
6443         * docs/gst/tmpl/gstelement.sgml:
6444         * docs/gst/tmpl/gstinfo.sgml:
6445         * docs/gst/tmpl/gstobject.sgml:
6446         * gst/gstelement.c:
6447         * gst/gstelement.h:
6448         * gst/gstinfo.c:
6449         * gst/gstinfo.h:
6450         * gst/gstobject.c: (gst_object_class_init):
6451         * gst/gstobject.h:
6452           inlined 3 more biiiig doc files and added some missing docs on the fly
6453
6454 2005-09-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6455
6456         * check/gst/.cvsignore:
6457         * check/gst/gstplugin.c: (GST_START_TEST), (gst_plugin_suite):
6458         * gst/gstregistryxml.c: (load_plugin),
6459         (gst_registry_xml_save_plugin):
6460           put back source in registry.  add checks for find_plugin.
6461         * testsuite/states/bin.c: (assert_state), (empty_bin),
6462         (test_adding_one_element), (main):
6463         * testsuite/states/locked.c: (main):
6464           some compile/run fixes
6465
6466 2005-09-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6467
6468         * check/gst/gstvalue.c: (GST_START_TEST):
6469           fix leaks in the test itself
6470
6471 2005-09-22  Wim Taymans  <wim@fluendo.com>
6472
6473         * gst/base/gstbasesink.c: (gst_base_sink_class_init),
6474         (gst_base_sink_send_event), (gst_base_sink_peer_query),
6475         (gst_base_sink_query):
6476         Prepare for more accurate position reporting and query
6477         handling.
6478
6479         * gst/gstelement.c: (gst_element_send_event),
6480         (gst_element_set_state):
6481         Add some comment.
6482
6483 2005-09-22  Wim Taymans  <wim@fluendo.com>
6484
6485         * gst/gstquery.c: (gst_query_new_segment), (gst_query_set_segment),
6486         (gst_query_parse_segment):
6487         * gst/gstquery.h:
6488         More documentation.
6489         Add segment query for future use.
6490
6491 2005-09-22  Wim Taymans  <wim@fluendo.com>
6492
6493         * gst/gstbin.c: (gst_bin_add_func):
6494         Some more debug info.
6495
6496         * gst/gstelement.c: (gst_element_send_event):
6497         Simplify send_event
6498
6499         * gst/gstelement.h:
6500         Don't know how flags got broken.
6501
6502         * gst/gstquery.h:
6503         Added new query.
6504
6505 2005-09-22  Tim-Philipp Müller  <tim at centricular dot net>
6506
6507         * check/gst/gstvalue.c: (test_date), (gst_value_suite):
6508           Add simplistic test suite for GST_TYPE_DATE serialisation and
6509           deserialisation.
6510
6511 2005-09-22  Tim-Philipp Müller  <tim at centricular dot net>
6512
6513         * docs/gst/gstreamer-sections.txt:
6514         * gst/gststructure.c: (gst_structure_set_valist),
6515         (gst_structure_get_date):
6516         * gst/gststructure.h:
6517         * gst/gstvalue.c: (gst_value_set_date), (gst_value_get_date),
6518         (gst_date_copy), (gst_value_compare_date),
6519         (gst_value_serialize_date), (gst_value_deserialize_date),
6520         (gst_value_transform_date_string),
6521         (gst_value_transform_string_date), (_gst_value_initialize):
6522         * gst/gstvalue.h:
6523           Add GST_TYPE_DATE, a boxed type that wraps GDate, and the usual
6524           bunch of utility functions along with a hack that checks that
6525           developers don't accidentally use G_TYPE_DATE where GST_TYPE_DATE
6526           is required. Part of the grand scheme in #170777.
6527
6528 2005-09-22  Andy Wingo  <wingo@pobox.com>
6529
6530         * gst/gstconfig.h.in: Psych out gtk-doc.
6531
6532         * docs/gst/gstreamer-sections.txt: Add GST_HAVE_GLIB_2_8.
6533
6534         * check/Makefile.am (check_PROGRAMS): Add gstplugin to the tests.
6535
6536         * tools/gst-inspect.c (print_element_list): Plug some
6537         inconsequential leaks.
6538
6539         * gst/gstregistry.c (gst_registry_get_default): Doc.
6540
6541         * check/gst/gstplugin.c: 
6542         * gst/gsttypefindfactory.c (gst_type_find_factory_call_function):
6543         * gst/gstelementfactory.c (gst_element_factory_create): 
6544         * gst/gstindexfactory.c (gst_index_factory_create): Update for
6545         refcount changes.
6546
6547         * gst/gstpluginfeature.c (gst_plugin_feature_list_free): Doc.
6548         (gst_plugin_feature_load): Doc, don't eat refs.
6549
6550         * gst/gstplugin.c (gst_plugin_load): Doc, don't eat refs.
6551         (gst_plugin_list_free): Doc.
6552         (gst_plugin_load_file): Doc updates.
6553
6554         * gst/gstbuffer.c (gst_buffer_get_caps): Like all our _get
6555         accessors returning refcounted objects, return a ref.
6556
6557         * check/gst/gstbuffer.c (GST_START_TEST): Use refcount-idempotent
6558         accessor for caps. IDEMPOTENCE. Oh yes.
6559
6560 2005-09-21  Francis Labonte  <francis_labonte at hotmail dot com>
6561
6562         Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
6563
6564         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
6565         (_gst_debug_register_funcptr):
6566           Add mutex to serialise access to the hash table with
6567           the function pointer => function name string mapping;
6568           make that hash table static scope (#316809).
6569
6570         * gst/registries/.cvsignore:
6571           Remove left-over file.
6572
6573 2005-09-21  Tim-Philipp Müller  <tim at centricular dot net>
6574
6575         * docs/pwg/appendix-porting.xml:
6576           And something about newsegment events and caps-on-buffers to
6577           the porting guide (feel free to improve).
6578
6579 2005-09-21  Andy Wingo  <wingo@pobox.com>
6580
6581         * check/gst/gstutils.c (test_buffer_probe_n_times): Add tests for
6582         data and event probes on the same pad.
6583         (test_buffer_probe_once): Test that removing probes from within
6584         the probe functions works.
6585
6586 2005-09-21  Andy Wingo  <wingo@pobox.com>
6587
6588         * check/gst/gstutils.c: New file.
6589         (test_buffer_probe_n_times): A simple buffer probe test. More to
6590         come, foolios.
6591
6592         * gst/gstutils.c (gst_pad_add_buffer_probe): Connect to
6593         have-data::buffer, not have-data.
6594         (gst_pad_add_event_probe): Likewise for have-data::event.
6595         (gst_pad_add_data_probe): More docs. The part about 'resolving the
6596         peer' isn't quite right yet though.
6597         (gst_pad_remove_buffer_probe, gst_pad_remove_event_probe) 
6598         (gst_pad_remove_data_probe): Change to take the guint handler_id
6599         as their arg, not the function+data, which is more glib-like.
6600
6601         * gst/gstpad.c (gst_pad_emit_have_data_signal): Add a detail to
6602         the signal emission to indicate if the data is a buffer or an
6603         event.
6604         (gst_pad_get_type): Initialize buffer and event quarks.
6605         (gst_pad_class_init): have-data is now a detailed signal, yes it
6606         is.
6607
6608 2005-09-21  Tim-Philipp Müller  <tim at centricular dot net>
6609
6610         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
6611         * gst/gstutils.c: (gst_util_set_value_from_string),
6612         (gst_util_set_object_arg):
6613           Don't put functional code in g_return_if_fail() or
6614           g_return_val_if_fail() statements, otherwise things will 
6615           break when G_DISABLE_CHECKS is defined during compilation.
6616
6617 2005-09-21  Stefan Kost  <ensonic@users.sf.net>
6618
6619         * docs/gst/tmpl/.cvsignore:
6620         * docs/gst/tmpl/gstvalue.sgml:
6621         * gst/gstvalue.c:
6622         * gst/gstvalue.h:
6623           inlied another one and added  some obvious docs
6624
6625 2005-09-21  Wim Taymans  <wim@fluendo.com>
6626
6627         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6628         (gst_fdsrc_init), (gst_fdsrc_start), (gst_fdsrc_stop),
6629         (gst_fdsrc_unlock), (gst_fdsrc_set_property),
6630         (gst_fdsrc_get_property), (gst_fdsrc_create):
6631         * gst/elements/gstfdsrc.h:
6632         Properly implement fdsrc. Removed signal and timeout,
6633         better implemented somewhere else.
6634
6635 2005-09-21  Stefan Kost  <ensonic@users.sf.net>
6636
6637         * docs/gst/tmpl/.cvsignore:
6638         * docs/gst/tmpl/gstimplementsinterface.sgml:
6639         * gst/gstinterface.c:
6640           inlined more docs
6641
6642 2005-09-21  Stefan Kost  <ensonic@users.sf.net>
6643
6644         * docs/gst/gstreamer-sections.txt:
6645         * docs/gst/tmpl/.cvsignore:
6646         * docs/gst/tmpl/gstenumtypes.sgml:
6647           remove obsolete doc file
6648
6649 2005-09-21  David Schleef  <ds@schleef.org>
6650
6651         * gst/gstelementfactory.c: (gst_element_factory_make): Drink a
6652         little beer, fix a little leak.
6653
6654 2005-09-21  Stefan Kost  <ensonic@users.sf.net>
6655
6656         * docs/gst/gstreamer-docs.sgml:
6657         * docs/gst/gstreamer-sections.txt:
6658         * docs/gst/tmpl/.cvsignore:
6659         * gst/Makefile.am:
6660         * gst/gst.h:
6661         * gst/gstbin.c:
6662         * gst/gstelement.h:
6663         * gst/gstindex.c: (gst_index_class_init):
6664         * gst/gstindex.h:
6665         * gst/gstindexfactory.c: (gst_index_factory_get_type),
6666         (gst_index_factory_class_init), (gst_index_factory_init),
6667         (gst_index_factory_finalize), (gst_index_factory_new),
6668         (gst_index_factory_destroy), (gst_index_factory_find),
6669         (gst_index_factory_create), (gst_index_factory_make):
6670         * gst/gstindexfactory.h:
6671         * gst/gstpluginfeature.c:
6672         * gst/gstpluginfeature.h:
6673         * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
6674           more docs inlined, splitted gstindex.{c,h}
6675
6676 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6677
6678         * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
6679           fix a leak
6680
6681 2005-09-20  Tim-Philipp Müller  <tim at centricular dot net>
6682
6683         * gst/elements/gstfilesink.c: (gst_file_sink_init):
6684           Set sync to FALSE by default.
6685
6686 2005-09-20  Wim Taymans  <wim@fluendo.com>
6687
6688         * gst/base/gstbasesink.c: (gst_base_sink_class_init),
6689         (gst_base_sink_init):
6690         Make sync property settable from subclass.
6691
6692         * gst/elements/gstfakesink.c: (gst_fake_sink_init),
6693         (gst_fake_sink_change_state):
6694         Set sync to FALSE by default.
6695
6696 2005-09-20  Wim Taymans  <wim@fluendo.com>
6697
6698         * gst/gstbus.c: (poll_func), (poll_timeout), (gst_bus_poll):
6699         * tools/gst-launch.c: (main):
6700         The timeout handler should have lower priority than the source
6701         so we don't timeout before popping a message with 0 timeout.
6702         Dump error messages after failed state change.
6703
6704 2005-09-20  Tim-Philipp Müller  <tim at centricular dot net>
6705
6706         * tools/gst-inspect.c: (print_element_properties_info):
6707           Fix two typos.
6708
6709 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6710
6711         * check/gst/gstevent.c:
6712         * gst/elements/gstfakesink.c:
6713         * gst/elements/gstfakesink.h:
6714           remove the sync property from fakesink.
6715           has the side effect of setting sync TRUE
6716           for fakesink, which is a change.  Anyone who knows how
6717           to fix this nicely in a GObject-y way, feel free.
6718
6719 2005-09-20  Stefan Kost  <ensonic@users.sf.net>
6720
6721         * docs/gst/gstreamer-docs.sgml:
6722           remove probe refsection
6723
6724 2005-09-20  Stefan Kost  <ensonic@users.sf.net>
6725
6726         * check/Makefile.am:
6727           disable valgrinding the controller test again
6728         * docs/gst/gstreamer-sections.txt:
6729           update for api-changes
6730
6731 2005-09-20  Wim Taymans  <wim@fluendo.com>
6732
6733         * gst/base/gstbasesink.c: (gst_base_sink_class_init),
6734         (gst_base_sink_set_property), (gst_base_sink_get_property),
6735         (gst_base_sink_do_sync):
6736         * gst/base/gstbasesink.h:
6737         Added sync property to basesink to disable clock sync.
6738
6739 2005-09-20  Andy Wingo  <wingo@pobox.com>
6740
6741         * gst/gstelementfactory.c (gst_element_factory_create): Avoid
6742         eating the caller's refcount.
6743
6744         * gst/gstobject.h (GST_OBJECT_REFCOUNT) 
6745         (GST_OBJECT_REFCOUNT_VALUE): Conditionally fondle the right
6746         refcount.
6747
6748         * gst/gstconfig.h.in (GST_HAVE_GLIB_2_8):
6749         * configure.ac (GST_HAVE_GLIB_2_8_DEFINE): Make the availability
6750         of GLib 2.8 public, so we can know which refcount to check in
6751         tests.
6752
6753         * gst/gstobject.c: Use the GST_HAVE_GLIB_2_8 define.
6754         (gst_object_init): Only set the gst refcount if we're going ahead
6755         with the refcount hack.
6756
6757 2005-09-20  Stefan Kost  <ensonic@users.sf.net>
6758
6759         * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
6760         * libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
6761           more leaks plumbed, added more debug-logging
6762         * gst/gstmacros.h:
6763           whitespace fix
6764
6765 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6766
6767         * gst/gstmessage.c:
6768           remove include of gstmemchunk.h
6769
6770 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6771
6772         * gst/gstclock.c: (_gst_clock_id_free):
6773           Commit from the Political Party For More Atomic CVS Commits,
6774           so that people don't waste too much of their day fishing
6775           out obvious leaks out of massive commits.
6776           Oh, and fix a pretty damn obvious leak in the memchunk
6777           removal code.
6778
6779 2005-09-20  Stefan Kost  <ensonic@users.sf.net>
6780
6781         * check/Makefile.am:
6782         * check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
6783           plug mem-leak, re-add to valgrindable tests
6784
6785 2005-09-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6786
6787         * gst/gstplugin.h:
6788           unbreak the build for those who have chronic arthritis
6789           and typing "make check" is just too taxing on the hands
6790
6791 2005-09-20  Andy Wingo  <wingo@pobox.com>
6792
6793         * gst/gst.h: Re-add marshal to gst.h's include list -- if we
6794         really want it out, you should fix plugins at the same time.
6795
6796 2005-09-19  Stefan Kost  <ensonic@users.sf.net>
6797
6798         * configure.ac:
6799         * docs/gst/gstreamer-sections.txt:
6800         * gst/gstobject.c:
6801           added missing symbols to api docs
6802           disable ref-count hack if we have glib >= 2.8
6803
6804 2005-09-19  David Schleef  <ds@schleef.org>
6805
6806         * docs/gst/Makefile.am: Ignore a few more internal headers
6807         * docs/gst/gstreamer-docs.sgml: Remove old sections
6808         * docs/gst/gstreamer-sections.txt: Remove old sections
6809         * docs/gst/tmpl/gstobject.sgml: update
6810         * docs/gst/tmpl/gstplugin.sgml: update
6811         * docs/gst/tmpl/gstpluginfeature.sgml: update
6812         * docs/random/ds/0.9-suggested-changes: update.
6813         * gst/Makefile.am: remove memchunk and trashstack, since they're
6814           not used.
6815         * gst/gst.c: (gst_deinit): rename gst_registry_deinit to _cleanup
6816         * gst/gst.h: don't include some headers
6817         * gst/gstchildproxy.c: add gstmarshal.h
6818         * gst/gstclock.c: Don't use memchunks
6819         * gst/gstminiobject.c: Add some docs
6820         * gst/gstobject.c: remove DESTROYED flag, since it's redundant
6821         * gst/gstobject.h: same
6822         * gst/gstplugin.c: include gstmacros.h
6823         * gst/gstplugin.h: don't include gstmacros.h, since it's private
6824         * gst/gstquery.c: don't use memchunks
6825         * gst/gstregistry.c: rename gst_registry_deinit()
6826         * gst/gstregistry.h: same
6827
6828 2005-09-19  David Schleef  <ds@schleef.org>
6829
6830         * docs/libs/gstreamer-libs-docs.sgml: Remove docs for getbits
6831         * docs/libs/gstreamer-libs-sections.txt:
6832         * docs/libs/tmpl/gstgetbits.sgml:
6833         * docs/libs/tmpl/gstputbits.sgml:
6834
6835 2005-09-19  Tim-Philipp Müller  <tim at centricular dot net>
6836
6837         * win32/gstenumtypes.c:
6838         * win32/gstenumtypes.h:
6839           Update.
6840
6841 2005-09-19  Wim Taymans  <wim@fluendo.com>
6842
6843         * gst/gstpipeline.c: (do_pipeline_seek), (gst_pipeline_send_event):
6844         Automatically PAUSE and RESUME a pipeline when a flushing seek
6845         is performed.
6846
6847 2005-09-19  Andy Wingo  <wingo@pobox.com>
6848
6849         * gst/gstregistry.h: Spacing fixen.
6850
6851 2005-09-19  Wim Taymans  <wim@fluendo.com>
6852
6853         * gst/base/gstbasesrc.c: (gst_base_src_change_state):
6854         Handle state change failure more correctly.
6855
6856 2005-09-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6857
6858         * check/Makefile.am:
6859         * check/pipelines/cleanup.c: (run_pipeline):
6860         * check/pipelines/simple_launch_lines.c: (run_pipeline),
6861         (GST_START_TEST):
6862           enable cleanup again after fixing the leak
6863         * docs/README:
6864           some more info on docs
6865
6866 2005-09-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6867
6868         * check/Makefile.am:
6869           re-enable tests now that leaks are plugged
6870         * check/gst/gst.c:
6871         * check/gst/gstbin.c:
6872         * check/gst/gstpipeline.c:
6873           add some more tests while fixing leaks
6874         * common/check.mak:
6875           make sure binaries are uptodate when valgrinding/gdbing
6876         * gst/gst.c:
6877         * gst/gstelementfactory.c:
6878           remove a ref too many, and add a FIXME for when we get
6879           round to disposing of classes
6880         * gst/gstplugin.c:
6881           fix the refcounting when loading a plugin from a file and
6882           the code pretends that the pointer is the same even though
6883           of course it can change
6884         * gst/gstpluginfeature.c:
6885           unref plugins marked cached (a bit confusing as a name)
6886           as the docs state should be done
6887           various doc additions to explain refcounting
6888         * gst/gstregistry.c:
6889         * gst/gstregistryxml.c:
6890           debugging
6891
6892 2005-09-19  Wim Taymans  <wim@fluendo.com>
6893
6894         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
6895         * check/gst/gstbus.c: (message_func_eos), (message_func_app),
6896         (send_messages), (GST_START_TEST), (gstbus_suite):
6897         * check/gst/gstpipeline.c: (GST_START_TEST):
6898         * check/pipelines/cleanup.c: (run_pipeline):
6899         * check/pipelines/simple_launch_lines.c: (run_pipeline),
6900         (GST_START_TEST):
6901         * gst/gstbus.c: (gst_bus_have_pending), (gst_bus_source_prepare),
6902         (gst_bus_source_check), (gst_bus_source_dispatch),
6903         (gst_bus_create_watch), (gst_bus_add_watch_full),
6904         (gst_bus_add_watch), (poll_func), (poll_timeout), (gst_bus_poll):
6905         * gst/gstbus.h:
6906         * tools/gst-launch.c: (event_loop):
6907         * tools/gst-md5sum.c: (event_loop):
6908         GstBusHandler -> GstBusFunc, return value has the same meaning as
6909         any other GSource (FALSE == remove source).
6910         _add_watch() and _add_watch_full() now take a MessageType mask to
6911         only handle specific types of messages.
6912         _poll() returns the GstMessage instead of the message type to avoid
6913         race conditions.
6914         _have_pending() takes a MessageType mask now too.
6915         Added testsuite for multiple bus watches.
6916         Fix testsuites and applications for new bus API.
6917
6918 2005-09-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6919
6920         * check/Makefile.am:
6921           mark a bunch of the tests as to fix until we fix them
6922
6923 2005-09-18  Thomas Vander Stichele  <thomas at apestaart dot org>
6924
6925         * common/check.mak:
6926           use GST_PLUGIN settings for valgrind tests as well, so we're
6927           valgrinding the correct thing
6928         * gst/gst.c: (init_post):
6929           plug another leak
6930
6931 2005-09-18  Thomas Vander Stichele  <thomas at apestaart dot org>
6932
6933         * gst/gst.c: (init_post), (gst_deinit):
6934         * gst/gstelementfactory.c: (gst_element_factory_class_init),
6935         (gst_element_factory_finalize), (gst_element_factory_cleanup):
6936         * gst/gstindex.c: (gst_index_factory_class_init),
6937         (gst_index_factory_finalize):
6938         * gst/gstobject.c: (gst_object_dispose):
6939         * gst/gstplugin.c: (gst_plugin_finalize), (gst_plugin_class_init),
6940         (gst_plugin_load_file), (gst_plugin_desc_free):
6941         * gst/gstpluginfeature.c: (gst_plugin_feature_class_init),
6942         (gst_plugin_feature_finalize):
6943         * gst/gstregistry.c: (gst_registry_class_init),
6944         (gst_registry_init), (gst_registry_finalize),
6945         (gst_registry_get_default), (gst_registry_deinit):
6946         * gst/gstregistry.h:
6947         * gst/gstregistryxml.c: (load_feature), (load_plugin):
6948           various cleanups and memleak plugging.  make valgrind is happy now.
6949
6950 2005-09-18  Thomas Vander Stichele  <thomas at apestaart dot org>
6951
6952         * common/check.mak:
6953           add a check-valgrind target
6954
6955 2005-09-18  David Schleef  <ds@schleef.org>
6956
6957         * tools/gst-inspect.c: Revert the GOption code.
6958
6959 2005-09-17  David Schleef  <ds@schleef.org>
6960
6961         * check/Makefile.am: Fix environment variables.
6962         * check/gst/gstplugin.c: Fix for API changes.
6963         * tools/gst-inspect.c: Fix for API changes.
6964         * tools/gst-xmlinspect.c: Fix for API changes.
6965         * gst/gstelementfactory.c:
6966         * gst/gstplugin.c:
6967         * gst/gstplugin.h:
6968         * gst/gstpluginfeature.c:
6969         * gst/gstpluginfeature.h:
6970         * gst/gstregistry.c:
6971         * gst/gstregistry.h:
6972         * gst/gstregistryxml.c:
6973         * gst/gsttypefind.c:
6974         * gst/gsttypefindfactory.c:
6975         * gst/indexers/gstfileindex.c:
6976         * gst/indexers/gstmemindex.c:
6977         * gst/schedulers/Makefile.am:
6978           Change registry to keep track of both plugins and features,
6979           removing the feature tracking from plugins themselves.
6980
6981 2005-09-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6982
6983         * check/Makefile.am:
6984         * tools/gst-register.1.in:
6985           remove gst-register
6986
6987 2005-09-15  David Schleef  <ds@schleef.org>
6988
6989         * check/gst/gstplugin.c:
6990         * gst/gstelementfactory.c:
6991         * gst/gstplugin.c:
6992         * gst/gstpluginfeature.c:
6993         * gst/gstregistry.c:
6994           Getting tired of debugging.  Disabled all the unreffing of
6995           plugins and features, which fixes the segfaults, but of
6996           course leaks like crazy.  At least playbin works.
6997
6998 2005-09-15  David Schleef  <ds@schleef.org>
6999
7000         * check/gst/gstplugin.c: (register_check_elements),
7001         (GST_START_TEST), (peek), (suggest), (gst_plugin_suite):
7002         More testing
7003         * gst/elements/gsttypefindelement.c: Fix refcounting.
7004         * gst/gsttypefind.c:
7005         * gst/gsttypefindfactory.c:
7006         * gst/gsttypefindfactory.h:
7007
7008 2005-09-15  David Schleef  <ds@schleef.org>
7009
7010         * gst/gstindex.c: get refcounting correct.
7011         * gst/gstregistry.c: Handle the case where a feature/plugin is
7012           not found.
7013
7014 2005-09-15  David Schleef  <ds@schleef.org>
7015
7016         * check/Makefile.am:
7017         * check/gst/gstplugin.c: Add test
7018         * gst/gstplugin.c: Fix problems noticed by testsuite
7019         * gst/gstplugin.h:
7020         * gst/gstregistry.c: 
7021         * gst/gstregistry.h:
7022
7023 2005-09-15  David Schleef  <ds@schleef.org>
7024
7025         * gst/gstplugin.c: Implement semi-decent recounting and locking
7026           in plugins and plugin features.
7027         * gst/gstplugin.h:
7028         * gst/gstpluginfeature.c:
7029         * gst/gstpluginfeature.h:
7030         * gst/gstregistry.c:
7031
7032 2005-09-15  Michael Smith <msmith@fluendo.com>
7033
7034         * gst/gstregistry.c: (gst_registry_get_feature_list):
7035           Implement this. Makes oggdemux work; decodebin still broken.
7036
7037 2005-09-14  David Schleef  <ds@schleef.org>
7038
7039         * configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug
7040           #316076)
7041         * gst/base/Makefile.am: Add -no-undefined to LDFLAGS for libs
7042         * gst/check/Makefile.am:
7043         * libs/gst/controller/Makefile.am:
7044         * libs/gst/dataprotocol/Makefile.am:
7045
7046 2005-09-14  David Schleef  <ds@schleef.org>
7047
7048         * configure.ac: Remove getbits library.  Nothing uses it, and
7049           it should be in something like liboil if someone did want
7050           to use it.
7051         * libs/gst/Makefile.am:
7052         * libs/gst/getbits/Makefile.am:
7053         * libs/gst/getbits/gbtest.c:
7054         * libs/gst/getbits/getbits.c:
7055         * libs/gst/getbits/getbits.h:
7056         * libs/gst/getbits/gstgetbits_generic.c:
7057         * libs/gst/getbits/gstgetbits_i386.s:
7058         * libs/gst/getbits/gstgetbits_inl.h:
7059
7060 2005-09-14  David Schleef  <ds@schleef.org>
7061
7062         * gst/Makefile.am: Dist glib-compat.h
7063
7064 2005-09-14  David Schleef  <ds@schleef.org>
7065
7066         * configure.ac: Remove gst/registries, since it's no longer used.
7067         * gst/registries/Makefile.am:
7068         * gst/registries/gstlibxmlregistry.c:
7069         * gst/registries/gstlibxmlregistry.h:
7070         * gst/registries/gstxmlregistry.c:
7071         * gst/registries/gstxmlregistry.h:
7072         * gst/registries/registrytest.c:
7073
7074 2005-09-14  David Schleef  <ds@schleef.org>
7075
7076         * gst/glib-compat.h:
7077         * gst/gstregistryxml.c:
7078           Convergence is near.  Seriously.
7079
7080 2005-09-14  David Schleef  <ds@schleef.org>
7081
7082         * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
7083         * gst/glib-compat.h:
7084           Attempt #4 to appease the buildbots.
7085
7086 2005-09-14  David Schleef  <ds@schleef.org>
7087
7088         * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
7089           Attempt #3.
7090
7091 2005-09-14  David Schleef  <ds@schleef.org>
7092
7093         * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
7094         Attempt #2.
7095
7096 2005-09-14  David Schleef  <ds@schleef.org>
7097
7098         * gst/Makefile.am: Oh yeah, libgstreamer.so needs to contain
7099           the new functions.
7100
7101 2005-09-14  David Schleef  <ds@schleef.org>
7102
7103         * gst/glib-compat.c: (g_mkdir_with_parents), (g_mkdir), (g_stat):
7104         * gst/glib-compat.h: Add some functions that are in newer versions
7105           of glib than we care to require.
7106         * gst/gstregistryxml.c: Use them.
7107
7108 2005-09-14  David Schleef  <ds@schleef.org>
7109
7110         * po/POTFILES.in: remove gst-register.c
7111
7112 2005-09-14  David Schleef  <ds@schleef.org>
7113
7114         * docs/gst/gstreamer-docs.sgml:
7115         * docs/gst/gstreamer-sections.txt:
7116         * docs/gst/gstreamer.types:
7117         * docs/gst/tmpl/gstelement.sgml:
7118         * docs/gst/tmpl/gstplugin.sgml:
7119         * docs/gst/tmpl/gstpluginfeature.sgml:
7120           Documentation updates for registry changes.
7121
7122 2005-09-14  David Schleef  <ds@schleef.org>
7123
7124         * gst/gstregistryxml.c: Copy g_mkdir_with_parent() from glib,
7125           because we don't require glib-2.8.
7126
7127 2005-09-14  David Schleef  <ds@schleef.org>
7128
7129         * gst/gstregistryxml.c: Added.  Essentially moved out of the
7130           registries directory.
7131
7132 2005-09-14  David Schleef  <ds@schleef.org>
7133
7134         * check/Makefile.am:
7135         * check/generic/states.c:
7136         * gst/Makefile.am:
7137         * gst/gst.c:
7138         * gst/gst.h:
7139         * gst/gst_private.h:
7140         * gst/gstelementfactory.c:
7141         * gst/gstindex.c:
7142         * gst/gstinfo.c:
7143         * gst/gstplugin.c:
7144         * gst/gstplugin.h:
7145         * gst/gstpluginfeature.c:
7146         * gst/gstpluginfeature.h:
7147         * gst/gstregistry.c:
7148         * gst/gstregistry.h:
7149         * gst/gstregistrypool.c: remove
7150         * gst/gstregistrypool.h: remove
7151         * gst/gsttypefind.c:
7152         * gst/gsttypefindfactory.c:
7153         * gst/gsturi.c:
7154         * tools/Makefile.am:
7155         * tools/gst-compprep.c:
7156         * tools/gst-inspect.c:
7157         * tools/gst-register.c: remove
7158         * tools/gst-xmlinspect.c:
7159           Registry rewrite.  Changes registry from being a file created
7160           by a tool into a simple cache file created automatically by 
7161           libgstreamer.  Removed gst-register (because it's no longer
7162           needed).  Remove registry pools, because we only have one
7163           registry implementation (XML).  Fix up other subsystems as
7164           necessary.
7165
7166 2005-09-13  Michael Smith <msmith@fluendo.com>
7167
7168         * gst/gstconfig.h.in:
7169           Don't Use windows linking attributes for MinGW. Fixes #316157
7170
7171 2005-09-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7172
7173         * gst/gstutils.c: (set_state_async_thread_func),
7174         (gst_element_set_state_async):
7175           Apparently people think it's better if this function doesn't
7176           try to set the state to whatever state was asked for on the first
7177           call to this function for any object.  Seriously.
7178
7179 2005-09-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7180
7181         * check/gst/gstpipeline.c: (GST_START_TEST):
7182         * docs/gst/gstreamer-sections.txt:
7183         * gst/gstutils.c: (set_state_async_thread_func),
7184         (gst_element_set_state_async):
7185         * gst/gstutils.h:
7186           add a "gst_element_set_state_async" method that
7187           sets the state and starts a thread to make sure the state
7188           change completes as best as it can
7189
7190 2005-09-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7191
7192         * check/gst/gstpipeline.c: (GST_START_TEST), (gst_pipeline_suite):
7193           codify design+behaviour in testsuite after discussion
7194
7195 2005-09-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7196
7197         * docs/gst/tmpl/gstelement.sgml:
7198         * docs/manual/appendix-quotes.xml:
7199           add a quote
7200         * gst/gstelement.c: (gst_element_set_state):
7201           add some debug
7202
7203 2005-09-12  Jan Schmidt  <thaytan@mad.scientist.com>
7204
7205         * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
7206         (gst_base_transform_prepare_output_buf),
7207         (gst_base_transform_handle_buffer):
7208         * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip),
7209         (gst_capsfilter_prepare_buf):
7210           Remove the requirement for sub-classes to call the parent
7211           implementation of prepare_output_buffer with a wrapper function.
7212           
7213         * gst/gsttaglist.h:
7214         * gst/gsttagsetter.h:
7215           Fix #define wrapper
7216
7217 2005-09-11  Stefan Kost  <ensonic@users.sf.net>
7218
7219         * docs/gst/gstreamer-sections.txt:
7220           more doc cleanups
7221
7222 2005-09-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7223
7224         * docs/gst/gstreamer-sections.txt:
7225         * docs/gst/tmpl/gstelement.sgml:
7226         * docs/gst/tmpl/gstplugin.sgml:
7227         * gst/gstminiobject.c:
7228         * gst/gstvalue.h:
7229           docs now stop throwing warnings
7230
7231 2005-09-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7232
7233         * docs/gst/gstreamer-sections.txt:
7234         * docs/gst/gstreamer.types:
7235         * docs/gst/tmpl/gstpad.sgml:
7236         * docs/gst/tmpl/gsttypes.sgml:
7237         * gst/base/gstadapter.h:
7238         * gst/base/gstbasesink.h:
7239         * gst/base/gstbasesrc.h:
7240         * gst/gstbin.h:
7241         * gst/gstbuffer.h:
7242         * gst/gstbus.h:
7243         * gst/gstcaps.h:
7244         * gst/gstclock.h:
7245         * gst/gstelement.h:
7246         * gst/gstevent.h:
7247         * gst/gstmessage.h:
7248         * gst/gstpad.h:
7249         * gst/gststructure.c:
7250         * gst/registries/gstlibxmlregistry.h:
7251           various documentation fixes
7252
7253 2005-09-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7254
7255         * docs/gst/gstreamer-sections.txt:
7256         * docs/gst/tmpl/gstvalue.sgml:
7257           rearrange gstvalue section
7258         * gst/gstutils.c: (gst_element_state_get_name):
7259           NONE -> VOID
7260         * gst/gstvalue.c: (_gst_value_initialize):
7261         * gst/gstvalue.h:
7262           doc updates
7263
7264 2005-09-10  Jan Schmidt  <thaytan@mad.scientist.com>
7265
7266         * check/gst-libs/controller.c:
7267           Header include fix.
7268         * gst/base/gstbasetransform.c:
7269         (gst_base_transform_default_prepare_buf),
7270         (gst_base_transform_handle_buffer):
7271         * gst/base/gstbasetransform.h:
7272           Some more basetransform changes and fixes to enable sub-classes
7273           that modify buffer metadata only.
7274         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
7275         (gst_capsfilter_init), (gst_capsfilter_transform_ip),
7276         (gst_capsfilter_prepare_buf):
7277           If the output pad has fixed allowed caps and input buffers 
7278           don't have any, set the fixed caps on outgoing buffers.
7279
7280 2005-09-09  Jan Schmidt  <thaytan@mad.scientist.com>
7281         * check/elements/identity.c: (GST_START_TEST):
7282           Make the error a little clearer when the test fails because
7283           identity made a copy of the buffer.
7284         * docs/gst/gstreamer-sections.txt:
7285           New symbols in gstbasetransform.h
7286         * gst/base/gstbasetransform.c: (gst_base_transform_class_init),
7287         (gst_base_transform_init), (gst_base_transform_transform_size),
7288         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
7289         (gst_base_transform_default_prepare_buf),
7290         (gst_base_transform_get_unit_size),
7291         (gst_base_transform_buffer_alloc),
7292         (gst_base_transform_handle_buffer), (gst_base_transform_chain),
7293         (gst_base_transform_change_state),
7294         (gst_base_transform_set_passthrough),
7295         (gst_base_transform_set_in_place),
7296         (gst_base_transform_is_in_place):
7297         * gst/base/gstbasetransform.h:
7298           Change BaseTransform to separate in_place operate from same_caps
7299           output. in_place implies that the element can perform the transform
7300           on incoming buffers in-place, even if the caps on the output are
7301           different.
7302           Sub-class elements can now implement special buffer allocation
7303           methods for outgoing buffers if they wish to.
7304           Big documentation addition.
7305         * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_ip):
7306         * gst/elements/gstelements.c:
7307           Changes for basetransform modifications.
7308         * gst/elements/Makefile.am:
7309         * gst/elements/gstfdsrc.c: (gst_fdsrc_init), (gst_fdsrc_create):
7310           Compile fix. Extra debug output.
7311
7312 2005-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7313
7314         * check/gst/gstpad.c: (GST_START_TEST), (name_is_valid),
7315         (gst_pad_suite):
7316           add tests for valid pad naming
7317         * gst/check/gstcheck.c: (gst_check_log_message_func),
7318         (gst_check_log_critical_func):
7319           add ASSERT_WARNING
7320           remove printing of code, it is fragile when the code contains
7321           % and the line number is enough info
7322         * gst/check/gstcheck.h:
7323         * gst/gstpad.c: (gst_pad_template_new):
7324           fix memleaks
7325
7326 2005-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7327
7328         * configure.ac:
7329           say what CHECK flags we use
7330         * docs/libs/gstreamer-libs.types:
7331         * libs/gst/controller/Makefile.am:
7332         * libs/gst/controller/gst-controller.c:
7333         * libs/gst/controller/gst-controller.h:
7334         * libs/gst/controller/gst-helper.c:
7335         * libs/gst/controller/gst-interpolation.c:
7336         * libs/gst/controller/gstcontroller.c:
7337         * libs/gst/controller/gsthelper.c:
7338         * libs/gst/controller/gstinterpolation.c:
7339         * tools/gst-inspect.c: (print_plugin_info):
7340           we don't use dashes in header names
7341
7342 2005-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7343
7344         * check/Makefile.am:
7345         * check/gst/.cvsignore:
7346         * check/gst/gstpipeline.c: (pop_messages), (GST_START_TEST),
7347         (gst_pipeline_suite), (main):
7348           adding a test for pipelines and state changes
7349         * gst/gstutils.c: (get_state_func):
7350           add some debugging
7351         * gstreamer.spec.in:
7352           fix up spec file
7353
7354 2005-09-08  Michael Smith <msmith@fluendo.com>
7355
7356         * gst/elements/gstfilesrc.c: (gst_file_src_map_region),
7357         (gst_file_src_map_small_region), (gst_file_src_create_mmap),
7358         (gst_file_src_is_seekable), (gst_file_src_get_size),
7359         (gst_file_src_start):
7360         * gst/elements/gstfilesrc.h:
7361           Various fixes for unseekable, unmmapable, and non-normal files, so
7362           that fallback to read() rather than mmap() works.
7363         * gst/gstevent.c: (gst_event_new_newsegment):
7364           Allow newsegment events with segment_start == segment_end, as will
7365           correctly happen if you use filesrc on a zero-size file, for
7366           example.
7367
7368 2005-09-07  Jan Schmidt  <thaytan@mad.scientist.com>
7369
7370         * gst/gstplugin.c: (gst_plugin_load_file):
7371           Call g_module_close when we don't load the module
7372
7373         * gst/registries/gstlibxmlregistry.c:
7374         (gst_xml_registry_get_property):
7375           Port leak fix from 0.8
7376
7377 2005-09-07  Stefan Kost  <ensonic@users.sf.net>
7378
7379         * docs/gst/gstreamer-docs.sgml:
7380         * docs/gst/tmpl/.cvsignore:
7381         * docs/gst/tmpl/gsttrace.sgml:
7382         * docs/gst/tmpl/gsttrashstack.sgml:
7383         * gst/Makefile.am:
7384         * gst/gst.h:
7385         * gst/gstelement.h:
7386         * gst/gstevent.h:
7387         * gst/gstmessage.c:
7388         * gst/gstmessage.h:
7389         * gst/gsttag.c:
7390         * gst/gsttag.h:
7391         * gst/gsttaginterface.c:
7392         * gst/gsttaginterface.h:
7393         * gst/gsttaglist.c:
7394         * gst/gsttaglist.h:
7395         * gst/gsttagsetter.c:
7396         * gst/gsttagsetter.h:
7397         * gst/gsttrace.c:
7398         * gst/gsttrace.h:
7399         * gst/gsttrashstack.c:
7400           renamed gsttag -> gsttaglist, gsttaginterface -> gsttagsetter
7401           inlined docs for gsttrace, gsttrashstack
7402
7403 2005-09-07  Stefan Kost  <ensonic@users.sf.net>
7404
7405         * gst/Makefile.am:
7406         * gst/elements/gstbufferstore.h:
7407         * gst/elements/gsttypefindelement.c:
7408         * gst/elements/gsttypefindelement.h:
7409         * gst/gst.h:
7410         * gst/gsttypefind.c:
7411         * gst/gsttypefind.h:
7412         * gst/gsttypefindfactory.c: (gst_type_find_factory_get_type),
7413         (gst_type_find_factory_class_init), (gst_type_find_factory_init),
7414         (gst_type_find_factory_dispose),
7415         (gst_type_find_factory_unload_thyself),
7416         (gst_type_find_load_plugin), (gst_type_find_factory_get_list),
7417         (gst_type_find_factory_get_caps),
7418         (gst_type_find_factory_get_extensions),
7419         (gst_type_find_factory_call_function):
7420         * gst/gsttypefindfactory.h:
7421         * gst/registries/gstlibxmlregistry.c:
7422         * gst/registries/gstxmlregistry.c:
7423           splitted gsttypefind into gsttypefind, gsttypefindfactory
7424
7425 2005-09-07  Andy Wingo  <wingo@pobox.com>
7426
7427         * gst/base/gstbasesink.c (gst_base_sink_activate_pull): Fix a race
7428         condition whereby the pad's task function is entered before the
7429         pad_mode variable was set.
7430
7431 2005-09-07  Jan Schmidt  <thaytan@mad.scientist.com>
7432
7433         * gst/gstpad.c: (gst_pad_alloc_buffer):
7434           Catch misbehaving pad_alloc functions that don't
7435           set up caps and do it for them.
7436
7437 2005-09-07  Stefan Kost  <ensonic@users.sf.net>
7438
7439         * check/pipelines/simple_launch_lines.c: (run_pipeline):
7440           test for pipe!=NULL
7441         * docs/gst/tmpl/.cvsignore:
7442         * docs/gst/tmpl/gstmemchunk.sgml:
7443         * docs/gst/tmpl/gstparse.sgml:
7444         * docs/gst/tmpl/gsttaglist.sgml:
7445         * docs/gst/tmpl/gsttagsetter.sgml:
7446         * docs/gst/tmpl/gsttypefind.sgml:
7447         * docs/gst/tmpl/gsttypefindfactory.sgml:
7448         * gst/gstmemchunk.c:
7449         * gst/gstparse.c:
7450         * gst/gsttag.c:
7451         * gst/gsttaginterface.c:
7452         * gst/gsttypefind.c:
7453         * gst/gsttypefind.h:
7454           inlined more docs
7455
7456 === release 0.9.2 ===
7457
7458 2005-09-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7459
7460         * NEWS:
7461         * RELEASE:
7462         * configure.ac:
7463           releasing 0.9.2, "South"
7464
7465 2005-09-05  Andy Wingo  <wingo@pobox.com>
7466
7467         * gst/registries/gstxmlregistry.h:
7468         * gst/registries/gstxmlregistry.c: Um... resurrect...
7469         
7470         * gst/registries/gstxmlregistry.h:
7471         * gst/registries/gstxmlregistry.c: and update to newer API.
7472         Incidentally they should be a bit faster now that they don't have
7473         to parse the caps.
7474         
7475 2005-09-05  Andy Wingo  <wingo@pobox.com>
7476
7477         * gst/registries/gstxmlregistry.h:
7478         * gst/registries/gstxmlregistry.c: Remove from CVS, they were
7479         replaced by the libxml registry a while back
7480
7481 2005-09-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7482
7483         * docs/gst/tmpl/gstplugin.sgml:
7484         * gst/elements/gstelements.c:
7485         * gst/gst.c:
7486         * gst/gstplugin.c: (gst_plugin_register_func),
7487         (gst_plugin_desc_copy), (gst_plugin_desc_free),
7488         (gst_plugin_get_source):
7489         * gst/gstplugin.h:
7490         * gst/registries/gstlibxmlregistry.c: (load_plugin),
7491         (gst_xml_registry_save_plugin):
7492         * gst/registries/gstxmlregistry.c: (gst_xml_registry_parse_plugin),
7493         (gst_xml_registry_save_plugin):
7494         * tools/gst-inspect.c: (print_plugin_info):
7495           add a "source" plugin description field, to represent the source
7496           module this plugin is a part of.  By default GST_PLUGIN_DEFINE
7497           will set it to PACKAGE, which is automake's idea of the name of
7498           the source project.
7499
7500 2005-09-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7501
7502         * Makefile.am:
7503         * autogen.sh:
7504         * configure.ac:
7505         * docs/Makefile.am:
7506         * docs/faq/Makefile.am:
7507         * docs/gst/tmpl/gstelement.sgml:
7508         * docs/gst/tmpl/gsttypes.sgml:
7509         * docs/htmlinstall.mak:
7510         * docs/manual/Makefile.am:
7511         * docs/pwg/Makefile.am:
7512           reorganize doc build a little
7513           split out docbook and gtk-doc stuff
7514           have two separate --enable's and enable them through autogen
7515           but disable by default in configure (to be similar to other
7516           projects)
7517         * gstreamer.spec.in:
7518           clean up docs install
7519         * po/af.po:
7520         * po/az.po:
7521         * po/ca.po:
7522         * po/cs.po:
7523         * po/de.po:
7524         * po/en_GB.po:
7525         * po/fr.po:
7526         * po/it.po:
7527         * po/nb.po:
7528         * po/nl.po:
7529         * po/ru.po:
7530         * po/sq.po:
7531         * po/sr.po:
7532         * po/sv.po:
7533         * po/tr.po:
7534         * po/uk.po:
7535         * po/vi.po:
7536           translation updates
7537
7538 2005-09-03  Tim-Philipp Müller  <tim at centricular dot net>
7539
7540         * gst/base/gstbasesink.c: (gst_base_sink_pad_buffer_alloc):
7541           Add comment.
7542           
7543         * gst/elements/gstfakesink.c: (gst_fake_sink_init),
7544         (gst_fake_sink_change_state):
7545           Make state change function thread-safe.
7546           
7547         * gst/gstpad.c: (gst_pad_alloc_buffer):
7548           Set offset on generic buffer allocated by fallback.
7549
7550 2005-09-03  Stefan Kost  <ensonic@users.sf.net>
7551
7552         * docs/gst/gstreamer-sections.txt:
7553         * docs/gst/tmpl/gstelement.sgml:
7554         * gst/gstpad.c:
7555         * libs/gst/controller/gst-controller.c:
7556         (gst_controlled_property_set_interpolation_mode),
7557         (gst_controlled_property_new),
7558         (gst_controller_find_controlled_property):
7559          run the wingo-magic script against the docs
7560
7561 2005-09-02  Stefan Kost  <ensonic@users.sf.net>
7562
7563         * docs/gst/gstreamer-docs.sgml:
7564         * docs/gst/gstreamer-sections.txt:
7565         * docs/gst/tmpl/.cvsignore:
7566         * docs/gst/tmpl/gstelementdetails.sgml:
7567         * docs/gst/tmpl/gstelementfactory.sgml:
7568         * gst/gst.c:
7569         * gst/gstbus.c:
7570         * gst/gstelementfactory.c:
7571         * gst/gstelementfactory.h:
7572           merged elementdetails docs into elementfactory docs
7573           inlined both
7574
7575 2005-09-02  Andy Wingo  <wingo@pobox.com>
7576
7577         * gst/gstelement.h: Add magical pixie dust to make glib-mkenums
7578         consider this enum an enum and not a flags.
7579
7580 2005-09-02  Stefan Kost  <ensonic@users.sf.net>
7581
7582         * docs/gst/gstreamer-docs.sgml:
7583         * docs/gst/tmpl/.cvsignore:
7584         * docs/gst/tmpl/gstghostpad.sgml:
7585         * docs/gst/tmpl/gstiterator.sgml:
7586         * docs/gst/tmpl/gstmacros.sgml:
7587         * docs/gst/tmpl/gstrealpad.sgml:
7588         * docs/gst/tmpl/gstregistry.sgml:
7589         * docs/gst/tmpl/gstregistrypool.sgml:
7590         * docs/gst/tmpl/gststructure.sgml:
7591         * docs/gst/tmpl/gstsystemclock.sgml:
7592         * docs/gst/tmpl/gsttrace.sgml:
7593         * gst/gstghostpad.c:
7594         * gst/gstmacros.h:
7595         * gst/gstmemchunk.c:
7596         * gst/gstmemchunk.h:
7597         * gst/gstqueue.c:
7598         * gst/gstregistry.c:
7599         * gst/gstregistrypool.c:
7600         * gst/gststructure.c:
7601         * gst/gstsystemclock.c:
7602           more docs inlined
7603
7604 2005-09-02  Andy Wingo  <wingo@pobox.com>
7605
7606         * gst/gstelement.h (GstState): Renamed from GstElementState,
7607         changed to be a normal enum instead of flags.
7608         (GstStateChangeReturn): Renamed from GstElementStateReturn, names
7609         munged to be GST_STATE_CHANGE_*.
7610         (GST_STATE_CHANGE): Renamed from GST_STATE_TRANSITION, updated to
7611         work with the new state representation.
7612         (GstStateChange): New enumeration of possible state transitions.
7613         Replaces GST_STATE_FOO_TO_BAR with GST_STATE_CHANGE_FOO_TO_BAR.
7614         (GstElementClass::change_state): Pass the GstStateChange along as
7615         an argument. Helps language bindings, so they don't have to use
7616         tricky lock-needing macros like GST_STATE_CHANGE ().
7617
7618         * scripts/update-states (file): New script. Run it on a file to
7619         update it for state naming and API changes. Updates files in
7620         place.
7621
7622         * All files updated for the new API.
7623
7624 2005-09-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7625
7626         * gst/gsttrace.c: (gst_trace_flush), (gst_trace_text_flush):
7627         * gst/gstutils.c: (gst_util_set_value_from_string),
7628         (gst_util_set_object_arg):
7629           fix a bunch of unchecked return values
7630         * tools/gst-complete.c: (main):
7631         * gstreamer.spec.in:
7632           clean up a little
7633
7634 2005-09-01  Wim Taymans  <wim@fluendo.com>
7635
7636         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
7637         (gst_base_sink_event), (gst_base_sink_do_sync),
7638         (gst_base_sink_handle_event):
7639         * gst/base/gstbasesink.h:
7640         Handle newsegments more correctly.
7641
7642         * gst/gstbus.c:
7643         Fix docs.
7644
7645         * gst/gstevent.c: (gst_event_new_newsegment):
7646         A newsegment cannot have a start_time of -1
7647
7648 2005-09-01  Tim-Philipp Müller  <tim at centricular dot net>
7649
7650         * win32/gstenumtypes.c:
7651         * win32/gstenumtypes.h:
7652           Update
7653
7654 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
7655
7656         * libs/gst/controller/gst-controller.c:
7657         (gst_controlled_property_set_interpolation_mode),
7658         (gst_controlled_property_new):
7659          fixed boolean again
7660
7661 2005-08-31  Thomas Vander Stichele  <thomas at apestaart dot org>
7662
7663         * docs/faq/gst-uninstalled:
7664           add -good
7665         * gst/gstevent.c:
7666         * gst/gstevent.h:
7667           remove wrong docs
7668         * gst/gstutils.c: (gst_element_link_filtered):
7669         * gst/gstutils.h:
7670           add gst_element_link_filtered
7671
7672 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
7673
7674         * docs/gst/gstreamer-docs.sgml:
7675         * docs/gst/gstreamer-sections.txt:
7676         * docs/gst/tmpl/.cvsignore:
7677         * docs/gst/tmpl/gsterror.sgml:
7678         * docs/gst/tmpl/gstfilter.sgml:
7679         * docs/gst/tmpl/gsturihandler.sgml:
7680         * docs/gst/tmpl/gsturitype.sgml:
7681         * docs/gst/tmpl/gstutils.sgml:
7682         * docs/gst/tmpl/gstxml.sgml:
7683         * gst/gsterror.c:
7684         * gst/gsterror.h:
7685         * gst/gstfilter.c:
7686         * gst/gsturi.c:
7687         * gst/gsturitype.c:
7688         * gst/gstutils.c:
7689         * gst/gstxml.c:
7690           inlined more docs, fixed double id-ref
7691
7692 2005-08-31  Wim Taymans  <wim@fluendo.com>
7693
7694         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
7695         (gst_base_transform_handle_buffer):
7696         Passthrough elements don't need the caps as they don't care.
7697
7698 2005-08-31  Wim Taymans  <wim@fluendo.com>
7699
7700         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
7701         (gst_base_transform_handle_buffer), (gst_base_transform_chain):
7702         Don't leak refcounts on buffers.
7703
7704 2005-08-31  Wim Taymans  <wim@fluendo.com>
7705
7706         * gst/base/gstbasetransform.c: (gst_base_transform_configure_caps),
7707         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
7708         (gst_base_transform_chain), (gst_base_transform_change_state):
7709         * gst/base/gstbasetransform.h:
7710         Handle the case where we are not negotiated more gracefully.
7711
7712 2005-08-31  Tim-Philipp Müller  <tim at centricular dot net>
7713
7714         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_init),
7715         (gst_file_src_map_region):
7716           Set READONLY flag on mmap'ed buffers, otherwise
7717           gst_buffer_make_writable() won't work properly (#314708).
7718
7719 2005-08-31  Wim Taymans  <wim@fluendo.com>
7720
7721         * gst/base/gstbasetransform.c: (gst_base_transform_handle_buffer):
7722         passthrough elements can even do inplace on non writable
7723         buffers (as they don't touch them).
7724
7725 2005-08-31  Stefan Kost  <ensonic@users.sf.net>
7726
7727         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
7728         (gst_test_mono_source_set_property),
7729         (gst_test_mono_source_class_init), (GST_START_TEST),
7730         (gst_controller_suite):
7731           more tests (hehe I have the most)
7732         * gst/gstbus.c:
7733           describe popping messages whenusing mulltiple sources
7734         * libs/gst/controller/gst-controller.c:
7735         (gst_controlled_property_set_interpolation_mode),
7736         (gst_controlled_property_new):
7737         * libs/gst/controller/gst-controller.h:
7738         * libs/gst/controller/gst-interpolation.c:
7739           implement boolean properties
7740
7741 2005-08-31  Wim Taymans  <wim@fluendo.com>
7742
7743         * gst/gstminiobject.c: (gst_mini_object_ref):
7744         Cannot assert that the refcount has to be positive
7745         since a disposed object can be resurrected.
7746
7747 2005-08-31  Wim Taymans  <wim@fluendo.com>
7748
7749         * gst/gstpad.c: (gst_pad_init):
7750         Revert change, need to first fix badly behaving 
7751         apps.
7752
7753 2005-08-30  Wim Taymans  <wim@fluendo.com>
7754
7755         * check/elements/fakesrc.c: (setup_fakesrc):
7756         * check/elements/identity.c: (setup_identity):
7757         Activate pads before using them.
7758
7759 2005-08-30  Wim Taymans  <wim@fluendo.com>
7760
7761         * gst/base/gstadapter.c: (gst_adapter_flush):
7762         Flushing out 0 bytes is ok for this function.
7763
7764         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
7765         no newsegment gives a warning and sets the start/stop to 
7766         invalid.
7767
7768         * gst/base/gstbasetransform.c: (gst_base_transform_change_state),
7769         (gst_base_transform_set_passthrough):
7770         Some debug info.
7771
7772         * gst/gstminiobject.c: (gst_mini_object_ref):
7773         Check refcount here too.
7774
7775         * gst/gstpad.c: (gst_pad_init):
7776         Pads are initially flushing and refusing data.
7777
7778         * gst/gstutils.c: (gst_element_link_pads_filtered):
7779         When adding a capsfilter element make sure it has the
7780         same state as the parent bin.
7781
7782 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
7783
7784         * docs/gst/tmpl/.cvsignore:
7785         * docs/gst/tmpl/gstformat.sgml:
7786         * docs/gst/tmpl/gstversion.sgml:
7787         * gst/gstbus.h:
7788         * gst/gstformat.c:
7789         * gst/gstformat.h:
7790         * gst/gstversion.h.in:
7791           more docs and two more inlined
7792
7793 2005-08-30  Wim Taymans  <wim@fluendo.com>
7794
7795         * gst/elements/gstfilesink.c: (gst_file_sink_class_init):
7796         Don't sync to clock.
7797
7798 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
7799
7800         * docs/gst/gstreamer-sections.txt:
7801           ultral33t func10ns deserve to appear in the docs actually
7802         * docs/gst/tmpl/.cvsignore:
7803         * docs/gst/tmpl/gstcompat.sgml:
7804         * docs/gst/tmpl/gstconfig.sgml:
7805         * gst/check/gstcheck.c:
7806         * gst/gstcompat.h:
7807         * gst/gstconfig.h.in:
7808           inlined more docs
7809
7810 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
7811
7812         * docs/gst/tmpl/.cvsignore:
7813         * docs/gst/tmpl/gstquery.sgml:
7814         * docs/gst/tmpl/gstutils.sgml:
7815         * gst/gstquery.c:
7816         * gst/gstquery.h:
7817           inlined and extended docs
7818
7819 2005-08-30  Stefan Kost  <ensonic@users.sf.net>
7820
7821         * check/gst-libs/controller.c: (GST_START_TEST),
7822         (gst_controller_suite):
7823           more tests
7824         * docs/gst/tmpl/gstutils.sgml:
7825         * docs/libs/gstreamer-libs-sections.txt:
7826         * docs/libs/tmpl/gstdataprotocol.sgml:
7827           include path fixes
7828         * examples/controller/audio-example.c: (main):
7829           controller example works now
7830         * gst/gstclock.h:
7831           doc fixes
7832         * tools/gst-inspect.c: (print_element_properties_info):
7833           show param spec flags
7834
7835 2005-08-29  Andy Wingo  <wingo@pobox.com>
7836
7837         * gst/gstutils.c (gst_util_uint64_scale): New 3733t funct10n.
7838
7839 2005-08-28  Andy Wingo  <wingo@pobox.com>
7840
7841         * gst/gstutils.h (GST_BOILERPLATE_FULL): Prototype instance_init
7842         as having two arguments instead of just one. Allows superclasses
7843         to access information on subclasses -- see the terrible for() loop
7844         in gtype.c:g_type_create_instance for the reason why. All callers
7845         changed.
7846
7847 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
7848
7849         * docs/design/part-messages.txt:
7850           update info
7851         * docs/gst/tmpl/.cvsignore:
7852         * docs/gst/tmpl/gstcaps.sgml:
7853         * docs/gst/tmpl/gstclock.sgml:
7854         * gst/gstbus.c:
7855         * gst/gstcaps.c:
7856         * gst/gstcaps.h:
7857         * gst/gstclock.c:
7858         * gst/gstclock.h:
7859         * gst/gstmessage.c:
7860           added descriptions for bus and message
7861           inline caps and clock docs
7862
7863 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
7864
7865         * gst/gstmessage.c:
7866         * gst/gstmessage.h:
7867           doc fixes
7868
7869 2005-08-27  Stefan Kost  <ensonic@users.sf.net>
7870
7871         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size):
7872           fix div-by-zero
7873
7874 2005-08-26  Andy Wingo  <wingo@pobox.com>
7875
7876         * check/pipelines/simple_launch_lines.c (run_pipeline): Check
7877         element_set_state's return val.
7878         (test_2_elements): Add test that's been disabled for months.
7879
7880         * gst/elements/gstfakesink.c: Cleanups. Add can-activate-push and
7881         can-activate-pull properties.
7882
7883         * gst/elements/gstfakesrc.c: Cleanups. Add can-activate-push and
7884         can-activate-pull properties. Implement is_seekable so fakesrc can
7885         operate in pull mode.
7886
7887         * gst/base/gstbasesink.c (GstBaseSink): Remove has-loop, has-chain
7888         properties.
7889         (gst_base_sink_activate, gst_base_sink_activate_pull)
7890         (gst_base_sink_activate_push): Make activation mode choosing work.
7891         Cleanups.
7892         (gst_base_sink_chain, gst_base_sink_loop): Assert activation mode
7893         is right. Make pull mode work. Post an eos before pausing in pull
7894         mode.
7895         (gst_base_sink_change_state): Pay attention to the core's
7896         change_state() return val.
7897         
7898         * gst/base/gstbasesrc.c (GstBaseSrc): Remove has-loop,
7899         has-getrange properties. Cleanups.
7900         
7901         * gst/base/gstbasesrc.h (GstBaseSrc): Remove has_loop,
7902         has_getrange and replace with can_activate_pull and
7903         can_activate_push.
7904
7905         * gst/base/gstbasesink.h (GstBaseSink): Rearrange fields, add
7906         locking comments. Remove has_loop, has_chain and replace with
7907         can_activate_pull and can_activate_push.
7908
7909 2005-08-26  Jan Schmidt  <thaytan@mad.scientist.com>
7910
7911         * configure.ac:
7912         * examples/Makefile.am:
7913         * examples/metadata/Makefile.am:
7914         * examples/metadata/read-metadata.c: (message_loop),
7915         (have_pad_handler), (make_pipeline), (print_tag), (main):
7916           Add metadata reading example that loops over a list of filenames,
7917           dumping any tags found.
7918
7919         * gst/gstbus.c: (gst_bus_dispose):
7920         * gst/gstelement.c: (gst_element_dispose):
7921           Release a few potentially-held references in dispose.
7922
7923 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
7924
7925         * docs/gst/tmpl/gstminiobject.sgml:
7926           do *not* add tmpl/*.sgml files to CVS!
7927
7928 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
7929
7930         * libs/gst/bytestream/.cvsignore:
7931         * libs/gst/bytestream/Makefile.am:
7932         * libs/gst/bytestream/adapter.c:
7933         * libs/gst/bytestream/adapter.h:
7934         * libs/gst/bytestream/bytestream.c:
7935         * libs/gst/bytestream/bytestream.h:
7936         * libs/gst/bytestream/filepad.c:
7937         * libs/gst/bytestream/filepad.h:
7938           removing obsolete files
7939
7940 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
7941
7942         * docs/gst/gstreamer-docs.sgml:
7943         * docs/libs/gstreamer-libs-docs.sgml:
7944           disabed additional index entries again, as this makes docs-gen just
7945           slow and they aren't useful yet
7946         * docs/libs/gstreamer-libs-sections.txt:
7947           little -section.txt cleanup for libs
7948
7949 2005-08-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7950
7951         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
7952         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
7953           fix up some debugging
7954         (gst_base_transform_get_unit_size),
7955         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
7956         (gst_base_transform_handle_buffer):
7957         * gst/base/gstbasetransform.h:
7958           handle and store timed NEWSEGMENT events so that subclasses that
7959           calculate time by counting samples have a segment_start time they
7960           need to add to their timestamps - see audioresample
7961
7962 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
7963
7964         * gst/gstbin.h:
7965           removed ';' from the end of macro defs
7966         * docs/gst/gstreamer-docs.sgml:
7967         * docs/gst/gstreamer-sections.txt:
7968         * docs/gst/tmpl/.cvsignore:
7969         * gst/gstbus.h:
7970         * gst/gstelement.c: (gst_element_class_init),
7971         (gst_element_set_state), (activate_pads),
7972         (gst_element_save_thyself):
7973         * gst/gstevent.c: (gst_event_new_newsegment):
7974         * gst/gstevent.h:
7975         * gst/gstiterator.c:
7976         * gst/gstiterator.h:
7977         * gst/gstpad.c:
7978         * gst/gstprobe.h:
7979         * gst/gstutils.c: (gst_pad_query_convert):
7980         * gst/gstutils.h:
7981           fixed parameter name mismatches between source, header and docs
7982           added some more docs, resolved the last batch of unused elements in
7983           docs (now someone needs to doc them)
7984
7985 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7986
7987         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
7988         * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
7989           don't walk through the plugins backwards.  Where is all this
7990           reversed logic coming from ?
7991
7992 2005-08-25  Wim Taymans  <wim@fluendo.com>
7993
7994         * gst/base/gstbasetransform.c: (gst_base_transform_init),
7995         (gst_base_transform_transform_size),
7996         (gst_base_transform_configure_caps),
7997         (gst_base_transform_get_unit_size),
7998         (gst_base_transform_buffer_alloc),
7999         (gst_base_transform_change_state):
8000         * gst/base/gstbasetransform.h:
8001         Cache caps unit_size.
8002         Make sure we cannot negotiate up and downstream at the
8003         same time.
8004
8005 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8006
8007         * gst/gst.c: (init_pre), (init_post):
8008           register the installed plugin path after the env var
8009         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
8010         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
8011           don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
8012           directories, so the tests can prefer uninstalled over installed
8013
8014 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8015
8016         * gst/base/gstbasetransform.h:
8017           comment
8018         * gst/gstpad.c:
8019           add to docs
8020
8021 2005-08-25  Wim Taymans  <wim@fluendo.com>
8022
8023         * gst/gstbin.c: (bin_bus_handler):
8024         Be a bit more conservative about the posted message.
8025         
8026         * gst/gstbus.c: (gst_bus_post):
8027         Some cleanups, warn wrong return values.
8028
8029 2005-08-25  Jan Schmidt  <thaytan@mad.scientist.com>
8030
8031         * check/gst/gstbin.c: (GST_START_TEST):
8032         * gst/gstbin.c: (bin_bus_handler):
8033         * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
8034         (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
8035         (gst_message_new_warning), (gst_message_new_tag),
8036         (gst_message_new_state_changed), (gst_message_new_segment_start),
8037         (gst_message_new_segment_done), (gst_message_new_custom):
8038         * gst/gstmessage.h:
8039         * tools/gst-launch.c: (event_loop):
8040         * tools/gst-md5sum.c: (event_loop):
8041           Revert unpopular change for GST_MESSAGE_SRC to GObject.
8042
8043 2005-08-25  Wim Taymans  <wim@fluendo.com>
8044
8045         * check/generic/states.c: (GST_START_TEST):
8046         Cleanup can be done at the end.
8047
8048         * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
8049         (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
8050         (gst_task_get_state), (gst_task_start), (gst_task_pause):
8051         Oh boy.. Thanks for finding this, Thomas. 
8052
8053 2005-08-25  Stefan Kost  <ensonic@users.sf.net>
8054
8055         * docs/gst/gstreamer.types:
8056           added missing types
8057
8058 2005-08-25  Stefan Kost  <ensonic@users.sf.net>
8059
8060         * docs/gst/gstreamer-docs.sgml:
8061         * docs/gst/gstreamer-sections.txt:
8062         * docs/gst/tmpl/.cvsignore:
8063         * gst/gstbin.c:
8064         * gst/gstiterator.c:
8065         * gst/gstutils.c:
8066         * gst/registries/gstxmlregistry.h:
8067           added missing classes and symbols (123 more to go)
8068           removed removed symbols from section file
8069           fixed many doc-comments
8070
8071 2005-08-24  Wim Taymans  <wim@fluendo.com>
8072
8073         * check/generic/states.c: (GST_START_TEST):
8074         Make sure all tasks are stopped.
8075
8076         * check/gst/gstbin.c: (GST_START_TEST):
8077         Unref after usage for proper valgrinding.
8078
8079         * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
8080         Really wait for the task to stop before destroying the
8081         mutex.
8082
8083         * gst/gstqueue.c: (gst_queue_sink_activate_push),
8084         (gst_queue_src_activate_push):
8085         Small cleanups. Don't stop the task when we did not start
8086         it.
8087
8088         * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
8089         (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
8090         (gst_task_get_state), (gst_task_start), (gst_task_pause),
8091         (gst_task_join):
8092         * gst/gsttask.h:
8093         Protect the stream lock with the object lock.
8094         Disallow setting the stream lock when running.
8095         Add cleanup_all to wait for the threadpool to finish.
8096         Remove code to autoallocate a mutex if none was provided.
8097         Add _join() to wait for a task to stop.
8098         Protect the thread pool with a global lock.
8099
8100 2005-08-24  Wim Taymans  <wim@fluendo.com>
8101
8102         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
8103         (gst_base_sink_get_times), (gst_base_sink_do_sync),
8104         (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
8105         * gst/base/gstbasesink.h:
8106         Handle newsegment events correctly.
8107         Drop buffers out of the segment range.
8108
8109 2005-08-22  Andy Wingo  <wingo@pobox.com>
8110
8111         * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
8112         macro, implements an interface and gstimplementsinterface for a
8113         new type.
8114
8115 2005-08-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8116
8117         * check/Makefile.am:
8118         * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
8119           add a test that does a bunch of state changes on elements
8120           needs some fixing for valgrind
8121         * check/states/sinks.c: (gst_object_suite):
8122           whitespace
8123         * gst/gstcaps.h:
8124           add prototype for gst_caps_is_equal_fixed
8125         * gst/gstplugin.c:
8126         * gst/gstregistrypool.c:
8127           doc fixes
8128
8129 2005-08-24  Andy Wingo  <wingo@pobox.com>
8130
8131         * gst/gstquery.c (gst_query_new_convert): Spew if we try to
8132         convert a negative value. Doesn't make much sense. Mostly this is
8133         here to force callers to ensure -1 maps to -1.
8134
8135 2005-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
8136
8137         * docs/pwg/advanced-types.xml:
8138           Well done to Michael for catching my deliberate introduction
8139           of this spelling mistake. 
8140         * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
8141         * gst/gstelement.h:
8142           Add GST_ELEMENT_UNPARENTING to prevent races so that we can
8143           unlink pads before removing the element from the bin.
8144
8145 2005-08-24  Andy Wingo  <wingo@pobox.com>
8146
8147         * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
8148         the same thing as GST_DEBUG=*:4.
8149         (parse_debug_level, parse_debug_category): New helper parsers.
8150
8151 2005-08-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8152
8153         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
8154         (gst_base_transform_transform_size), (gst_base_transform_getcaps),
8155         (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
8156         (gst_base_transform_buffer_alloc),
8157         (gst_base_transform_handle_buffer):
8158           use gboolean return values and pointers to size so we can use the
8159           full GST_BUFFER_SIZE range (guint) for buffer sizes
8160           use GstPadDirection for transform_caps
8161         * gst/base/gstbasetransform.h:
8162           rename get_size to get_unit_size since that's what it is
8163         * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
8164           use GstPadDirection for transform_caps
8165         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
8166         * gst/gstutils.h:
8167           cleanup and debugging
8168
8169 2005-08-24  Stefan Kost  <ensonic@users.sf.net>
8170
8171         * gst/gstelement.c: (gst_element_class_init),
8172         (gst_element_set_state), (activate_pads),
8173         (gst_element_save_thyself):
8174         * tools/gst-compprep.c: (main):
8175         * tools/gst-inspect.c: (print_element_properties_info):
8176         * tools/gst-xmlinspect.c: (print_element_properties):
8177           Fixed long standing mem-leak
8178
8179 2005-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
8180
8181         * check/gst/gstbin.c: (GST_START_TEST):
8182         * gst/gstbin.c: (bin_bus_handler):
8183         * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
8184         (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
8185         (gst_message_new_warning), (gst_message_new_tag),
8186         (gst_message_new_state_changed), (gst_message_new_segment_start),
8187         (gst_message_new_segment_done), (gst_message_new_custom):
8188         * gst/gstmessage.h:
8189         * tools/gst-launch.c: (event_loop):
8190         * tools/gst-md5sum.c: (event_loop):
8191           Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
8192           that applications can sensibly post custom messages with references
8193           to their own objects.
8194
8195 2005-08-24  Andy Wingo  <wingo@pobox.com>
8196
8197         * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
8198         already.
8199
8200 2005-08-24  Wim Taymans  <wim@fluendo.com>
8201
8202         * gst/base/gstbasetransform.c: (gst_base_transform_init),
8203         (gst_base_transform_transform_caps),
8204         (gst_base_transform_transform_size),
8205         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
8206         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
8207         (gst_base_transform_handle_buffer):
8208         * gst/base/gstbasetransform.h:
8209         Many fixes and new features added by Thomas. Can now also do
8210         transforms with variable sizes and a custom fixate_caps function.
8211
8212 2005-08-24  Wim Taymans  <wim@fluendo.com>
8213
8214         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
8215         Some debugging.
8216
8217         * gst/gstclock.h:
8218         Cast to ClockTime before formatting to time.
8219
8220         * gst/gstutils.h:
8221         Cleanups.
8222
8223 2005-08-24  Stefan Kost  <ensonic@users.sf.net>
8224
8225         * check/gst-libs/controller.c: (GST_START_TEST),
8226         (gst_controller_suite):
8227         * docs/gst/tmpl/gstcaps.sgml:
8228         * docs/gst/tmpl/gstghostpad.sgml:
8229         * docs/gst/tmpl/gstquery.sgml:
8230         * docs/gst/tmpl/gstutils.sgml:
8231         * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
8232         (gst_object_sink_values), (gst_object_get_value_arrays),
8233         (gst_object_get_value_array):
8234           gracefully handle helper method calls to objects that are not beeing
8235           controlled, added test case for that          
8236
8237 2005-08-23  Wim Taymans  <wim@fluendo.com>
8238
8239         * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
8240         (gst_event_new_newsegment), (gst_event_parse_newsegment),
8241         (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
8242         (gst_event_parse_qos), (gst_event_new_seek),
8243         (gst_event_parse_seek):
8244         * gst/gstevent.h:
8245         Some more debugging output and doc cleanups.
8246
8247         * gst/gstqueue.c: (gst_queue_handle_sink_event):
8248         Fix possible deadlock.
8249
8250 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
8251
8252         * docs/gst/gstreamer-docs.sgml:
8253         * docs/gst/gstreamer-sections.txt:
8254         * docs/gst/gstreamer.types:
8255         * docs/gst/tmpl/.cvsignore:
8256         * gst/gstbin.h:
8257         * gst/gstbus.c:
8258         * gst/gstelement.c:
8259         * gst/gstevent.h:
8260           added 100 symbols from gstreamer-unused.txt to the right sections
8261           fixed more broken comments
8262           added GstBus to docs
8263
8264 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
8265
8266         * docs/gst/gstreamer-sections.txt:
8267         * docs/gst/tmpl/.cvsignore:
8268         * docs/gst/tmpl/gstbin.sgml:
8269         * docs/gst/tmpl/gstbuffer.sgml:
8270         * gst/base/gstbasesrc.c:
8271         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
8272         * gst/gstbuffer.c:
8273         * gst/gstbuffer.h:
8274         * tools/gst-launch.1.in:
8275           inlined more doc comments, added missing comments and fixed comments
8276           fixed typos
8277
8278 2005-08-23  Thomas Vander Stichele  <thomas at apestaart dot org>
8279
8280         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
8281           some debugging
8282         * gst/gstcaps.h:
8283           whitespace fixes
8284         * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
8285           more debugging
8286         * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
8287         * gst/gststructure.h:
8288           add a fixate function for booleans; add a FIXME that these func
8289           names should probably be gst_structure_fixate_*
8290
8291 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
8292
8293         * docs/gst/gstreamer-docs.sgml:
8294         * docs/gst/gstreamer-sections.txt:
8295         * gst/Makefile.am:
8296         * gst/gstbin.c: (gst_bin_get_type),
8297         (gst_bin_child_proxy_get_child_by_index),
8298         (gst_bin_child_proxy_get_children_count),
8299         (gst_bin_child_proxy_init):
8300         * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
8301         (gst_child_proxy_get_child_by_index),
8302         (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
8303         (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
8304         (gst_child_proxy_get), (gst_child_proxy_set_property),
8305         (gst_child_proxy_set_valist), (gst_child_proxy_set),
8306         (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
8307         (gst_child_proxy_base_init), (gst_child_proxy_get_type):
8308         * gst/gstchildproxy.h:
8309         * gst/parse/grammar.y:
8310         * tools/gst-inspect.c: (print_interfaces),
8311         (print_element_properties_info), (print_element_info):
8312           ported gstchildproxy over from 0.8
8313           ported gst-inspect fixes and enhancements over from 0.8
8314
8315 2005-08-22  Wim Taymans  <wim@fluendo.com>
8316
8317         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
8318         (gst_base_transform_handle_buffer):
8319         Also call the transform function if we have ANY caps.
8320
8321         * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
8322         Fix debug info.
8323
8324 2005-08-22  Jan Schmidt  <thaytan@mad.scientist.com>
8325
8326         * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
8327           Don't pretend to handle seek events if the source is not seekable
8328
8329 2005-08-22  Jan Schmidt  <thaytan@mad.scientist.com>
8330
8331         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
8332           Remove extra parameter to debug output
8333
8334         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
8335         (gst_base_src_do_seek), (gst_base_src_activate_push):
8336           Fix seek event handling.
8337
8338         * gst/gstpipeline.c: (gst_pipeline_change_state):
8339         * gst/gstqueue.c: (gst_queue_handle_sink_event),
8340         (gst_queue_src_activate_push):
8341           Don't start the src pad task on FLUSH_STOP if the pad
8342           isn't linked.
8343           Debug changes.
8344
8345 2005-08-22  Wim Taymans  <wim@fluendo.com>
8346
8347         * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
8348         Added check for gst_static_caps_get() refcounting.
8349
8350 2005-08-22  Wim Taymans  <wim@fluendo.com>
8351
8352         * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
8353         Make _static_caps_get() refcounting sane.
8354         
8355         * gst/gstelement.c: (gst_element_set_state):
8356         Add g_return_val_if_fail() to protect against segfaults.
8357
8358 2005-08-22  Stefan Kost  <ensonic@users.sf.net>
8359
8360         * docs/gst/tmpl/gstevent.sgml:
8361         * gst/gstevent.c:
8362         * gst/gstevent.h:
8363           inlined remaining docs, added missing doc comments
8364
8365 2005-08-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8366
8367         * check/gst/gstbin.c: (GST_START_TEST):
8368           since we don't know when preroll is done, use refcount range
8369           check for the sink
8370         * gst/check/gstcheck.h:
8371           add macro for checking refcount range
8372
8373 2005-08-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8374
8375         * check/Makefile.am:
8376           clean up environment for when registry gets built versus
8377           when actual tests are run; valgrind seems to not report
8378           leaks if GST_PLUGIN_PATH is set to some specific values
8379         * check/gst/gstbin.c: (GST_START_TEST):
8380           add more refcounting checks; maybe this exposes a
8381           preroll lock bug ?
8382         * common/check.mak:
8383         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
8384         * gst/check/gstcheck.h:
8385         * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
8386         (gst_bin_change_state):
8387         * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
8388           add/fix debugging/whitespace
8389
8390 2005-08-21  Jan Schmidt  <thaytan@mad.scientist.com>
8391
8392         * check/gst/gstevent.c: (event_probe), (test_event),
8393         (GST_START_TEST):
8394          Er, don't call gst_bin_watch_for_state_change you idiot.
8395
8396 2005-08-21  Jan Schmidt  <thaytan@mad.scientist.com>
8397
8398         * check/Makefile.am:
8399           Use CHECK_CFLAGS and CHECK_LIBS
8400         * check/gst/gstevent.c: (event_probe), (test_event),
8401         (GST_START_TEST):
8402           Don't leak events.
8403         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
8404         (gst_base_src_start), (gst_base_src_stop),
8405         (gst_base_src_activate_push), (gst_base_src_activate_pull),
8406         (gst_base_src_change_state):
8407           Sprinkle gst_base_src_stop liberally around error paths to fix
8408           problems reusing a source after failed state changes.
8409         * gst/base/gsttypefindhelper.c: (helper_find_peek),
8410         (helper_find_suggest), (gst_type_find_helper):
8411           Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
8412         * gst/gstevent.h:
8413         * docs/gst/tmpl/gstevent.sgml:
8414           Migrate part of the docs from the SGML file. Wait for ensonic to
8415           tell me how I did it wrong ;)
8416         * tools/gst-typefind.c: (main):
8417           Extra robustness to state changes between files.
8418
8419 2005-08-21  Thomas Vander Stichele  <thomas at apestaart dot org>
8420
8421         * check/Makefile.am:
8422           don't valgrind the controller test - it's leaking - Stefan, HELP
8423         * gst/check/gstcheck.c: (gst_check_message_error),
8424         (gst_check_chain_func), (gst_check_setup_element),
8425         (gst_check_teardown_element), (gst_check_setup_src_pad),
8426         (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
8427         (gst_check_teardown_sink_pad):
8428         * gst/check/gstcheck.h:
8429           add a bunch of methods to set up elements, and src and sink pads
8430         * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
8431         * check/elements/identity.c: (setup_identity), (cleanup_identity),
8432         (GST_START_TEST):
8433           use them
8434         * gst/gstmessage.c:
8435         * gst/gsttag.h:
8436           whitespace/doc fixes
8437
8438 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8439
8440         * gst/gstelement.h:
8441           make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
8442           be handled by the application and not always printed as well
8443
8444 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8445
8446         * check/Makefile.am:
8447           set GST_TOOLS_DIR
8448         * gst/check/gstcheck.c: (gst_check_message_error):
8449         * gst/check/gstcheck.h:
8450           add a fail_unless_equals_int
8451           add fail_unless for error messages
8452
8453 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8454
8455         * check/Makefile.am:
8456         * check/gst.supp:
8457         * common/Makefile.am:
8458         * common/check.mak:
8459         * common/gst.supp:
8460           factor out some of the common stuff so we can use it
8461
8462 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8463
8464         * check/Makefile.am:
8465         * check/gst/gstiterator.c: (GST_START_TEST):
8466         * check/gst/gstsystemclock.c: (GST_START_TEST),
8467         (gst_systemclock_suite):
8468         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
8469         * gst/gstclock.c:
8470           valgrind more tests
8471
8472 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8473
8474         * check/elements/.cvsignore:
8475         * check/elements/gstfakesrc.c:
8476           rename to name of element
8477         * check/elements/identity.c: (chain_func), (event_func),
8478         (setup_identity), (cleanup_identity), (GST_START_TEST),
8479         (identity_suite), (main):
8480           add a test for identity
8481         * check/Makefile.am:
8482         * pkgconfig/Makefile.am:
8483         * pkgconfig/gstreamer-check.pc.in:
8484         * pkgconfig/gstreamer-check-uninstalled.pc.in:
8485         * gst/check:
8486         * gst/Makefile.am:
8487         * configure.ac:
8488           move the check stuff to a library that gets installed
8489         * check/gst-libs/controller.c: (GST_START_TEST):
8490         * check/gst-libs/gdp.c:
8491         * check/gst/gst.c: (GST_START_TEST):
8492         * check/gst/gstbin.c:
8493         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
8494         * check/gst/gstbus.c:
8495         * check/gst/gstcaps.c: (GST_START_TEST):
8496         * check/gst/gstelement.c:
8497         * check/gst/gstghostpad.c:
8498         * check/gst/gstiterator.c:
8499         * check/gst/gstmessage.c:
8500         * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
8501         * check/gst/gstobject.c:
8502         * check/gst/gstpad.c: (GST_START_TEST):
8503         * check/gst/gststructure.c: (GST_START_TEST):
8504         * check/gst/gstsystemclock.c: (GST_START_TEST),
8505         (gst_systemclock_suite):
8506         * check/gst/gsttag.c: (gst_tag_suite):
8507         * check/gst/gstvalue.c:
8508         * check/pipelines/cleanup.c:
8509         * check/pipelines/simple_launch_lines.c:
8510         * check/states/sinks.c:
8511           change include statement
8512
8513         * docs/gst/gstreamer-sections.txt:
8514         * docs/gst/tmpl/gstpad.sgml:
8515           document more pad stuff
8516         * gst/gstminiobject.c: (gst_mini_object_ref),
8517         (gst_mini_object_unref):
8518           debug refcounting
8519
8520 2005-08-19  Stefan Kost  <ensonic@users.sf.net>
8521
8522         * docs/gst/tmpl/gst.sgml:
8523         * gst/gst.c:
8524           eliminate another tmpl file, fix spelling in the long-description
8525
8526 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
8527
8528         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
8529         (test_event), (timediff), (gstevents_suite):
8530           Should fix build on 64-bit arch's
8531
8532 2005-08-18  Andy Wingo  <wingo@pobox.com>
8533
8534         Make sure that when a pipeline goes to PLAYING, that data has
8535         actually hit the sink.
8536
8537         * check/states/sinks.c (test_sink): A sink that doesn't get any
8538         data shouldn't return SUCCESS for going to either PLAYING or
8539         PAUSED. Test also the return values on the way back down.
8540
8541         * gst/gstelement.c (gst_element_set_state): When changing the
8542         state of an element currently changing state asynchronously, go to
8543         lost-state after commiting the pending state. Makes future calls
8544         to get_state continue to return ASYNC.
8545
8546         * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
8547         ASYNC when going to PLAYING if we still don't have preroll, as can
8548         happen with live sources.
8549
8550 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
8551
8552         * docs/pwg/advanced-types.xml:
8553           Hack long paragraph into 2 chunks as a workaround for buggy
8554           jadetex version in sid and breezy that loops infinitely and
8555           eats all RAM.
8556
8557 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
8558
8559         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
8560         (test_event), (timediff), (gstevents_suite):
8561           Provide more error margin in clock measurements to allow for 
8562           g_get_current_time inaccuracies.
8563
8564 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
8565
8566         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
8567         (test_event), (timediff), (gstevents_suite):
8568            Fix error message output so I might be able to tell why the
8569            test works here but fails on the build farm.
8570
8571 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
8572
8573         * check/Makefile.am:
8574         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
8575         (test_event), (timediff), (gstevents_suite), (main):
8576           I wrote a test!
8577
8578         * docs/design/part-seeking.txt:
8579           Spelling correction
8580
8581         * docs/gst/tmpl/gstevent.sgml:
8582         * docs/gst/tmpl/gstfakesrc.sgml:
8583           Docs updates.
8584
8585         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
8586           Treat a buffer-without-newsegment the same as a receiving 
8587           a newsegment not in time format, and disable syncing to the clock
8588           with a warning.
8589
8590         * gst/gstbus.c: (gst_bus_set_sync_handler):
8591           Assert if anyone tries to replace the existing sync_handler for bus, 
8592           as only the owner should be setting it.
8593
8594         * gst/gstevent.h:
8595           Have a fixed set of custom event enums with events identified by
8596           their structure name (as in 0.8), rather than a free-for-all
8597           allowing collisions between enum values from different plugins.
8598
8599         * gst/gstpad.c: (gst_pad_class_init):
8600           Docs change.
8601           
8602         * gst/gstqueue.c: (gst_queue_handle_sink_event):
8603           Handle out-of-band downstream events from the sending thread.
8604
8605 2005-08-17  Andy Wingo  <wingo@pobox.com>
8606
8607         * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
8608         play-timeout==0 to mean no timeout at all. In that case, don't
8609         bother with a get_state or a warning, just return directly, even
8610         if it's ASYNC.
8611
8612         * gst/base/gstbasetransform.c: Debug changes.
8613
8614         * gst/gstutils.h:
8615         * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
8616         ensure bins post state change messages. A bit of a hack but I can't
8617         think of a way to avoid it.
8618
8619         * check/gst/gstbin.c (test_watch_for_state_change): Added test.
8620
8621 2005-08-16  Andy Wingo  <wingo@pobox.com>
8622
8623         * gst/base/gstadapter.h:
8624         * gst/base/gstadapter.c (gst_adapter_take): New function, like
8625         peek() but you own the data. Not terribly efficient atm.
8626
8627 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8628
8629         * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
8630         (gst_element_found_tags):
8631         * gst/gstutils.h:
8632           Add two utility functions for tag handling.
8633
8634 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8635
8636         * docs/manual/advanced-dataaccess.xml:
8637         * docs/manual/basics-helloworld.xml:
8638           Fix docs to use _bin_add() before _link(), which fixes the examples
8639           with recent core versions (reported by Madhan Raj M
8640           <raj_madan@rediffmail.com>, #313199).
8641
8642 2005-08-16  Wim Taymans  <wim@fluendo.com>
8643
8644         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
8645         Added subtract checks.
8646
8647         * docs/design/part-events.txt:
8648         Some more docs about newsegment
8649
8650         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
8651         Fix FIXME
8652
8653         * gst/gstcaps.c: (gst_caps_to_string):
8654         Add comments, cleanups.
8655         
8656         * gst/gstelement.c: (gst_element_save_thyself):
8657         cleanups
8658         
8659         * gst/gstvalue.c: (gst_value_collect_int_range),
8660         (gst_string_unwrap), (gst_value_union_int_int_range),
8661         (gst_value_union_int_range_int_range),
8662         (gst_value_intersect_int_int_range),
8663         (gst_value_intersect_int_range_int_range),
8664         (gst_value_intersect_double_double_range),
8665         (gst_value_intersect_double_range_double_range),
8666         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
8667         (gst_value_subtract_int_range_int),
8668         (gst_value_subtract_double_range_double),
8669         (gst_value_subtract_double_range_double_range),
8670         (gst_value_subtract_from_list), (gst_value_subtract_list),
8671         (gst_value_can_compare), (gst_value_compare_fraction):
8672         Cleanups, add comments, remove unneeded asserts.
8673
8674 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8675
8676         * tools/gst-launch.c: (event_loop):
8677           don't convert NULL structures to strings
8678
8679 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
8680
8681         * docs/gst/gstreamer-sections.txt:
8682           made some defines private
8683         * docs/gst/tmpl/gstconfig.sgml:
8684         * docs/gst/tmpl/gstqueue.sgml:
8685         * docs/gst/tmpl/gsttaglist.sgml:
8686         * docs/gst/tmpl/gsttypes.sgml:
8687         * docs/gst/tmpl/gstutils.sgml:
8688         * docs/pwg/appendix-porting.xml:
8689         * gst/base/gstbasesink.h:
8690         * gst/base/gstbasesrc.c:
8691         * gst/base/gstbasesrc.h:
8692         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
8693         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
8694         * gst/gstelement.c: (gst_element_class_init):
8695         * gst/gstpad.c: (gst_pad_class_init):
8696         * gst/gstqueue.c: (gst_queue_class_init):
8697         * gst/gstxml.c: (gst_xml_class_init):
8698           documented all undocumented signal inline
8699         * libs/gst/controller/gst-controller.h:
8700           added padding
8701
8702 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8703
8704         * docs/pwg/appendix-porting.xml:
8705           Document _set_link_function -> _set_setcaps_function.
8706
8707 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8708
8709         * check/Makefile.am:
8710           add a .check target for running the check
8711         * check/gst-libs/controller.c: (GST_START_TEST):
8712           cosmetic fixups
8713         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
8714           complete checks for gstbuffer; would be nice if I could get the
8715           gcov stuff to work so I can see if I actually completed gstbuffer.c
8716         * check/gstcheck.h:
8717           add ASSERT_BUFFER_REFCOUNT
8718
8719 2005-08-13  Tim-Philipp Müller  <tim at centricular dot net>
8720
8721         * docs/gst/gstreamer-sections.txt:
8722         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
8723         * gst/gsttag.h:
8724           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
8725           spew out a warning if a tag that is already registered
8726           is re-registered, unless it is re-registered with a 
8727           different type (#308438).
8728
8729 2005-08-12  Tim-Philipp Müller  <tim at centricular dot net>
8730
8731         * docs/pwg/appendix-porting.xml:
8732         * docs/pwg/building-state.xml:
8733           Add some paragraphs about state changes in 0.9 to the PWG
8734           and the porting guide, in particular about the new meaning
8735           of GST_STATE_PAUSED and how to write state change functions
8736           with concurrent access by multiple threads in mind.
8737
8738 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
8739
8740         * docs/gst/gstreamer-docs.sgml:
8741         * docs/libs/gstreamer-libs-docs.sgml:
8742           added deprecation and since indexes
8743         * libs/gst/controller/gst-controller.c:
8744         * libs/gst/controller/gst-helper.c:
8745           added since tags
8746
8747
8748 2005-08-11  Wim Taymans  <wim@fluendo.com>
8749
8750         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
8751         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
8752         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
8753         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
8754         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
8755         (gst_ghost_pad_set_target):
8756         Actually implement (re)setting the target on a ghostpad
8757         as described in the docs.
8758
8759 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
8760
8761         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
8762           Check whether GST_DEBUG_NO_COLOR environment variable is
8763           set and disable coloured debug output if that is the case.
8764
8765 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
8766
8767         * gst/base/gsttypefindhelper.c: (helper_find_peek),
8768         (gst_type_find_helper):
8769           The memory returned by gst_type_find_peek() needs to
8770           stay valid until the end of a typefind function, and
8771           typefind functions may keep results from different 
8772           offsets around, so we can't just unref the buffer from
8773           the previous _peek(), but have to save all buffers 
8774           returned by _peek() until typefinding is done and only
8775           free them then.
8776
8777 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
8778
8779         * docs/gst/gstreamer-sections.txt:
8780         * gst/gstutils.h:
8781           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
8782
8783 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8784
8785         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
8786           Fix a pretty good memleak.
8787
8788 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
8789
8790         * gst/gstiterator.h:
8791           Fix wrong include and 'make distcheck'.
8792
8793 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8794
8795         * gst/gstbin.c: (bin_bus_handler):
8796           Use gst_element_post_message() instead.
8797
8798 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
8799
8800         * gst/base/gstadapter.h:
8801         * gst/base/gstbasesink.h:
8802         * gst/base/gstbasesrc.h:
8803         * gst/base/gstbasetransform.h:
8804         * gst/base/gstcollectpads.h:
8805         * gst/base/gstpushsrc.h:
8806         * gst/gstiterator.h:
8807           Add padding to our base elements' class and instance structs and
8808           to GstIterator (you will need to rebuild all plugins and apps!)
8809
8810 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8811
8812         * gst/gstbin.c: (bin_bus_handler):
8813           Make default message forwarding from child->bus to bin->bus
8814           threadsafe and make it not emit warnings if the parent has no bus.
8815
8816 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8817
8818         * gst/gstelement.c: (activate_pads):
8819           On paused->ready, set pad->caps to NULL, as is the documented
8820           behaviour in this state change. Fixes playback of series of
8821           media files when visualization is enabled in Totem.
8822
8823 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
8824
8825         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
8826           Allow NULL as filter-caps (which means "any").
8827
8828 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
8829
8830         * docs/libs/gstreamer-libs-sections.txt:
8831         * libs/gst/controller/gst-controller.c:
8832         * libs/gst/controller/gst-controller.h:
8833         * libs/gst/controller/gst-helper.c:
8834           adding more entries to the docs and fix small doc-bugs
8835
8836 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
8837
8838         * docs/gst/gstreamer-docs.sgml:
8839         * docs/gst/gstreamer-sections.txt:
8840         * docs/gst/gstreamer.types:
8841         * docs/gst/tmpl/gstbasesink.sgml:
8842         * docs/gst/tmpl/gstbasesrc.sgml:
8843         * docs/gst/tmpl/gstbasetransform.sgml:
8844         * docs/gst/tmpl/gstfakesrc.sgml:
8845         * gst/base/gstcollectpads.c:
8846         * gst/base/gstcollectpads.h:
8847         * libs/gst/controller/gst-controller.c:
8848         * libs/gst/controller/gst-controller.h:
8849         * libs/gst/controller/gst-helper.c:
8850         * libs/gst/controller/gst-interpolation.c:
8851         * libs/gst/controller/lib.c:
8852           added long/short desc for controller docs
8853           added collectpads base class docs
8854           added correct includes to base-class docs
8855
8856 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
8857
8858         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
8859         (gst_test_mono_source_set_property),
8860         (gst_test_mono_source_class_init), (GST_START_TEST),
8861         (gst_controller_suite):
8862         * docs/gst/gstreamer-docs.sgml:
8863         * docs/gst/gstreamer-sections.txt:
8864         * docs/gst/gstreamer.types:
8865         * docs/libs/gstreamer-libs-docs.sgml:
8866         * docs/libs/gstreamer-libs-sections.txt:
8867         * gst/base/gstadapter.c:
8868         * libs/gst/controller/gst-controller.c:
8869         (gst_controlled_property_new), (gst_controlled_property_free),
8870         (gst_controller_new_valist),
8871         (gst_controller_remove_properties_valist),
8872         (gst_controller_sink_values), (_gst_controller_finalize):
8873         * libs/gst/controller/gst-controller.h:
8874         * libs/gst/controller/gst-helper.c:
8875         (gst_object_control_properties), (gst_object_uncontrol_properties),
8876         (gst_object_get_controller), (gst_object_set_controller),
8877         (gst_object_sink_values), (gst_object_get_value_arrays),
8878         (gst_object_get_value_array):
8879           more tests (and fixes) for the controller
8880           more docs for the controller
8881           integrated companies docs for the adapter 
8882
8883 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8884
8885         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
8886         (GST_START_TEST), (fakesrc_suite):
8887           add tests for sizetype
8888
8889 2005-08-04  Andy Wingo  <wingo@pobox.com>
8890
8891         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
8892         fixes buffer_alloc proxying among other things.
8893
8894         * gst/base/gstbasetransform.c:
8895         * gst/base/gstbasetransform.h:
8896         Revert patch to gstbasetransform from 7-28 removing
8897         delay_configure.
8898
8899         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
8900         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
8901         Semantics changed, should return not the size of the output buffer
8902         but the byte size of a buffer with a given caps.
8903
8904         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
8905         debug object.
8906         (gst_base_transform_configure_caps): Don't set out_size here: (in,
8907         out) are not the pad caps until setcaps finishes.
8908         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
8909         not-in-place case as well. Deal with changing from in-place to
8910         not-in-place within calling pad_alloc_buffer. Still a bit
8911         concerned about the overhead here...
8912
8913 2005-08-03  Andy Wingo  <wingo@pobox.com>
8914
8915         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
8916         fixating is an error.
8917
8918 2005-08-04  Edward Hervey  <edward@fluendo.com>
8919
8920         * gst/base/gstadapter.h: 
8921         Added gst_adapter_get_type() to the header
8922
8923 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
8924
8925         * check/Makefile.am:
8926         * check/gst-libs/controller.c:
8927         * libs/gst/controller/gst-controller.c:
8928         (gst_controller_new_valist):
8929           added check test suite for the controller
8930         * gst/base/gstpushsrc.c:
8931           fixed a doc typo
8932
8933 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
8934
8935         * docs/gst/Makefile.am:
8936         * docs/gst/gstreamer-docs.sgml:
8937         * docs/gst/gstreamer-sections.txt:
8938         * docs/gst/gstreamer.types:
8939         * docs/gst/tmpl/gstfakesrc.sgml:
8940         * gst/base/README:
8941         * gst/base/gstbasesink.c:
8942         * gst/base/gstbasesink.h:
8943         * gst/base/gstbasesrc.c:
8944         * gst/base/gstbasesrc.h:
8945         * gst/base/gstbasetransform.c:
8946         * gst/base/gstpushsrc.c:
8947         * gst/base/gstpushsrc.h:
8948           add short/long description docs to base classes
8949           add pushsrc to the docs
8950           remove consolidated doc fragments
8951
8952 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
8953
8954         * configure.ac:
8955         * docs/libs/Makefile.am:
8956         * docs/libs/gstreamer-libs-docs.sgml:
8957         * docs/libs/gstreamer-libs-sections.txt:
8958         * docs/libs/gstreamer-libs.types:
8959         * examples/Makefile.am:
8960         * examples/controller/.cvsignore:
8961         * examples/controller/Makefile.am:
8962         * examples/controller/audio-example.c: (main):
8963         * libs/gst/Makefile.am:
8964         * libs/gst/controller/.cvsignore:
8965         * libs/gst/controller/Makefile.am:
8966         * libs/gst/controller/gst-controller.c:
8967         (on_object_controlled_property_changed), (gst_timed_value_compare),
8968         (gst_timed_value_find),
8969         (gst_controlled_property_set_interpolation_mode),
8970         (gst_controlled_property_new), (gst_controlled_property_free),
8971         (gst_controller_find_controlled_property),
8972         (gst_controller_new_valist), (gst_controller_new),
8973         (gst_controller_remove_properties_valist),
8974         (gst_controller_remove_properties), (gst_controller_set),
8975         (gst_controller_set_from_list), (gst_controller_unset),
8976         (gst_controller_get), (gst_controller_get_all),
8977         (gst_controller_sink_values), (gst_controller_get_value_arrays),
8978         (gst_controller_get_value_array),
8979         (gst_controller_set_interpolation_mode),
8980         (_gst_controller_finalize), (_gst_controller_init),
8981         (_gst_controller_class_init), (gst_controller_get_type):
8982         * libs/gst/controller/gst-controller.h:
8983         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
8984         (g_object_uncontrol_properties), (g_object_get_controller),
8985         (g_object_set_controller), (g_object_sink_values),
8986         (g_object_get_value_arrays), (g_object_get_value_array):
8987         * libs/gst/controller/gst-interpolation.c:
8988         (gst_controlled_property_find_timed_value_node),
8989         (interpolate_none_get), (interpolate_trigger_get),
8990         (interpolate_trigger_get_value_array):
8991         * libs/gst/controller/lib.c: (gst_controller_init):
8992         * pkgconfig/Makefile.am:
8993         * pkgconfig/gstreamer-control-uninstalled.pc.in:
8994         * pkgconfig/gstreamer-control.pc.in:
8995         * testsuite/Makefile.am:
8996         * testsuite/controller/.cvsignore:
8997         * testsuite/controller/Makefile.am:
8998         * testsuite/controller/interpolator.c: (main):
8999           added controller code
9000           removed dparam pc files
9001
9002 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
9003         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
9004         (gst_collectpads_stop):
9005           Broadcast the condition when shutting down, to make sure we wake all
9006           threads up. Shut down pads on finalize, for safety.
9007
9008 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
9009         * gst/base/gstbasetransform.c: (gst_base_transform_init),
9010         (gst_base_transform_handle_buffer),
9011         (gst_base_transform_change_state):
9012           Handle PAUSED->READY->PAUSED transition after negotiation
9013           occurred already.
9014         * gst/gstmessage.c: (gst_message_init):
9015           Extra piece of debug for new messages.
9016
9017 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
9018
9019         * configure.ac:
9020         * docs/gst/tmpl/gstbasesrc.sgml:
9021         * docs/gst/tmpl/gstelement.sgml:
9022         * docs/gst/tmpl/gstevent.sgml:
9023         * docs/gst/tmpl/gstfakesrc.sgml:
9024         * docs/gst/tmpl/gstformat.sgml:
9025         * docs/gst/tmpl/gstghostpad.sgml:
9026         * docs/gst/tmpl/gstpad.sgml:
9027         * docs/gst/tmpl/gstquery.sgml:
9028         * docs/gst/tmpl/gststructure.sgml:
9029         * docs/gst/tmpl/gsttaglist.sgml:
9030         * docs/gst/tmpl/gstvalue.sgml:
9031         * docs/libs/gstreamer-libs-docs.sgml:
9032         * docs/libs/gstreamer-libs-sections.txt:
9033         * docs/libs/gstreamer-libs.types:
9034         * libs/gst/Makefile.am:
9035         * libs/gst/control/.cvsignore:
9036         * libs/gst/control/Makefile.am:
9037         * libs/gst/control/control.c:
9038         * libs/gst/control/control.h:
9039         * libs/gst/control/dparam.c:
9040         * libs/gst/control/dparam.h:
9041         * libs/gst/control/dparam_smooth.c:
9042         * libs/gst/control/dparam_smooth.h:
9043         * libs/gst/control/dparamcommon.h:
9044         * libs/gst/control/dparammanager.c:
9045         * libs/gst/control/dparammanager.h:
9046         * libs/gst/control/dplinearinterp.c:
9047         * libs/gst/control/dplinearinterp.h:
9048         * libs/gst/control/unitconvert.c:
9049         * libs/gst/control/unitconvert.h:
9050         * testsuite/Makefile.am:
9051         * testsuite/dynparams/.cvsignore:
9052         * testsuite/dynparams/Makefile.am:
9053         * testsuite/dynparams/dparamstest.c:
9054         * tools/Makefile.am:
9055         * tools/gst-inspect.c: (print_element_info), (main):
9056         * tools/gst-xmlinspect.c: (print_element_info), (main):
9057           deactivate and remove dparams (libgstcontrol)
9058
9059 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
9060
9061         * gst/elements/gsttypefindelement.c:
9062         (gst_type_find_element_have_type), (gst_type_find_element_init),
9063         (stop_typefinding), (gst_type_find_element_handle_event),
9064         (gst_type_find_element_chain), (gst_type_find_element_getrange):
9065         * gst/elements/gsttypefindelement.h:
9066           Set caps on all outgoing buffers, not just the first one.
9067
9068 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
9069
9070         * gst/elements/gsttypefindelement.c:
9071         (gst_type_find_element_have_type),
9072         (gst_type_find_element_check_set_buffer_caps),
9073         (gst_type_find_element_init), (stop_typefinding),
9074         (gst_type_find_element_handle_event),
9075         (gst_type_find_element_chain), (gst_type_find_element_getrange):
9076         * gst/elements/gsttypefindelement.h:
9077           Set caps on first outgoing buffer when we've found the type.
9078
9079 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
9080
9081         * docs/gst/gstreamer-docs.sgml:
9082         * docs/gst/gstreamer-sections.txt:
9083         * docs/gst/tmpl/gstscheduler.sgml:
9084         * docs/gst/tmpl/gstschedulerfactory.sgml:
9085           Remove some old cruft from docs.
9086
9087 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
9088
9089         * gst/gstpad.h:
9090           Fix inline docs for GstPadLinkReturn.
9091           
9092         * gst/gststructure.c: (gst_structure_has_name):
9093         * gst/gststructure.h:
9094         * docs/gst/gstreamer-sections.txt:
9095           New API: gst_structure_has_name().
9096
9097 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
9098
9099         * configure.ac:
9100           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
9101           and _LARGEFILE_SOURCE in config.h as required. Do not 
9102           export those flags in our .pc files any longer (#142209).
9103
9104           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
9105
9106         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
9107         (gst_file_sink_do_seek), (gst_file_sink_event),
9108         (gst_file_sink_get_current_offset), (gst_file_sink_render):
9109           Redo seek/tell calls with large file support in mind; add some
9110           debugging messages; add log message that tells us when large
9111           file support is unavailable or not enabled for some reason.
9112
9113         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
9114           Add log message that tells us when large file support 
9115           is unavailable or not enabled for some reason.
9116
9117 2005-07-29  Wim Taymans  <wim@fluendo.com>
9118
9119         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
9120         Added test for removing an element with ghostpad from a bin.
9121         Fixed test as current implementation does the right thing.
9122
9123         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
9124         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
9125         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
9126         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
9127         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
9128         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
9129         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
9130         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
9131         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
9132         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
9133         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
9134         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
9135         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
9136         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
9137         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
9138         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
9139         * gst/gstghostpad.h:
9140         Clean up ghostpads, remove properties for internal stuff.
9141         Make threadsafe.
9142         Fix refcounting.
9143         Prepare for switching targets, not all use cases work yet.
9144
9145 2005-07-29  Wim Taymans  <wim@fluendo.com>
9146
9147         * docs/design/part-gstghostpad.txt:
9148         Small update.
9149
9150         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
9151         (gst_bin_remove_func):
9152         Unlinking pads while holding the bin LOCK is not a good
9153         idea.
9154
9155         * gst/gstpad.c: (gst_pad_class_init),
9156         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
9157         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
9158         No prob setting template after creating the pad.
9159
9160 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
9161
9162         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
9163         (gst_bus_peek), (gst_bus_source_dispatch),
9164         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
9165         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
9166           gst_bus_poll may be called from other threads. Handle
9167           this nicely by not making poll_data disappear off the
9168           stack once gst_bus_poll returns.
9169           gst_bus_peek now increments the refcount on the returned
9170           message.
9171
9172 2005-07-29  Wim Taymans  <wim@fluendo.com>
9173
9174         * docs/design/part-gstghostpad.txt:
9175         Overview of current GhostPad datastructures and use
9176         cases for changing the target.
9177
9178 2005-07-28  Wim Taymans  <wim@fluendo.com>
9179
9180         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
9181         Added checks for hierarchy consistency whan adding linked
9182         elements to bins.
9183
9184         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
9185         Added check to test element scheduling without bin/pipeline.
9186
9187         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
9188         First add elements to bin, then link.
9189         
9190         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
9191         (gst_bin_remove_func):
9192         Unlink pads from elements added/removed from bin to maintain
9193         hierarchy consistency.
9194
9195 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9196
9197         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
9198         (gst_base_transform_handle_buffer):
9199         * gst/base/gstbasetransform.h:
9200           Remove broken delay_configure (fixes renegotiation of software
9201           scaling pipelines); remove some leftover printf()s.
9202
9203 2005-07-28  Wim Taymans  <wim@fluendo.com>
9204
9205         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
9206         Added some more tests for wrong hierarchy
9207
9208         * docs/design/part-overview.txt:
9209         Some updates.
9210
9211         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
9212         Cleanups.
9213
9214         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
9215         (gst_element_dispose):
9216         Some more cleanups.
9217
9218         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
9219         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
9220         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
9221         (gst_pad_set_caps), (gst_pad_send_event):
9222         Check for correct hierarchy when linking pads. Moving to
9223         strict requirement for ghostpads when linking elements in
9224         different bins.
9225
9226         * gst/gstpad.h:
9227         Clean ups. Added WRONG_HIERARCHY return value.
9228
9229 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9230
9231         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
9232           Better debug if no transform is possible.
9233
9234 2005-07-27  Wim Taymans  <wim@fluendo.com>
9235
9236         * docs/random/wtay/network-transp:
9237         Some old doc I had.
9238
9239 2005-07-27  Wim Taymans  <wim@fluendo.com>
9240
9241         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
9242         (gst_dp_event_from_packet):
9243         Fix serialization of seek events.
9244
9245 2005-07-27  Wim Taymans  <wim@fluendo.com>
9246
9247         * check/gst-libs/gdp.c: (GST_START_TEST):
9248         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
9249         Fix compilation and fix event serialization.
9250
9251 2005-07-27  Wim Taymans  <wim@fluendo.com>
9252
9253         * CHANGES-0.9:
9254         * docs/design/part-TODO.txt:
9255         * docs/design/part-events.txt:
9256         Some docs updates
9257
9258         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9259         (gst_base_sink_event), (gst_base_sink_do_sync),
9260         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
9261         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
9262         (gst_base_src_do_seek), (gst_base_src_event_handler),
9263         (gst_base_src_loop):
9264         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
9265         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
9266         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
9267         (gst_base_transform_event), (gst_base_transform_handle_buffer),
9268         (gst_base_transform_set_passthrough),
9269         (gst_base_transform_is_passthrough):
9270         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
9271         * gst/elements/gstfilesink.c: (gst_file_sink_event):
9272         Event updates.
9273
9274         * gst/gstbuffer.h:
9275         Use faster casts.
9276
9277         * gst/gstelement.c: (gst_element_seek):
9278         * gst/gstelement.h:
9279         Update gst_element_seek.
9280
9281         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
9282         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
9283         (gst_event_new_flush_start), (gst_event_new_flush_stop),
9284         (gst_event_new_eos), (gst_event_new_newsegment),
9285         (gst_event_parse_newsegment), (gst_event_new_tag),
9286         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
9287         (gst_event_parse_qos), (gst_event_new_seek),
9288         (gst_event_parse_seek), (gst_event_new_navigation):
9289         * gst/gstevent.h:
9290         Make GstEvent use GstStructure. Add parsing code, make sure the
9291         API is sufficiently generic.
9292         Mark possible directions of events and serialization.
9293
9294         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
9295         (_gst_message_copy), (gst_message_new_segment_start),
9296         (gst_message_new_segment_done), (gst_message_new_custom),
9297         (gst_message_parse_segment_start),
9298         (gst_message_parse_segment_done):
9299         Small cleanups.
9300
9301         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
9302         (gst_pad_set_caps), (gst_pad_send_event):
9303         Update for new events. 
9304         Catch events sent in wrong directions.
9305
9306         * gst/gstqueue.c: (gst_queue_link_src),
9307         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
9308         (gst_queue_handle_src_query):
9309         Event updates.
9310
9311         * gst/gsttag.c:
9312         * gst/gsttag.h:
9313         Remove event code from this file.
9314
9315         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
9316         (gst_dp_event_from_packet):
9317         Event updates.
9318
9319 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9320
9321         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
9322         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
9323         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
9324           Make debugging actually useful.
9325
9326 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9327
9328         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
9329         (gst_pad_fixate_caps):
9330           Implement default fixation once again, so that gst_pad_fixate()
9331           actually does anything at all. This probably needs to be some
9332           sort of a last resort, and use profile-based fixation first, but
9333           since that doesn't exist yet, this is the best we have. Fixes
9334           visualization in Totem.
9335
9336 2005-07-22  Wim Taymans  <wim@fluendo.com>
9337
9338         * docs/design/part-events.txt:
9339         Small update.
9340
9341         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9342         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
9343         (gst_base_sink_activate_pull):
9344         Some more comments.
9345
9346         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
9347         (gst_fake_src_create):
9348         Fix handoff marshall.
9349
9350         * gst/elements/gstidentity.c: (gst_identity_class_init),
9351         (gst_identity_transform_ip):
9352         We're a real inplace element.
9353
9354         * gst/gstbus.c: (gst_bus_post):
9355         Added some comments.
9356
9357         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
9358         * tests/muxing/case1.c: (main):
9359         * tests/sched/dynamic-pipeline.c: (main):
9360         * tests/sched/interrupt1.c: (main):
9361         * tests/sched/interrupt2.c: (main):
9362         * tests/sched/interrupt3.c: (main):
9363         * tests/sched/runxml.c: (main):
9364         * tests/sched/sched-stress.c: (main):
9365         * tests/seeking/seeking1.c: (event_received), (main):
9366         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
9367         (main):
9368         * tests/threadstate/threadstate3.c: (main):
9369         * tests/threadstate/threadstate4.c: (main):
9370         * tests/threadstate/threadstate5.c: (main):
9371         Fix the tests.
9372
9373 2005-07-21  Wim Taymans  <wim@fluendo.com>
9374
9375         * docs/design/part-seeking.txt:
9376         Some small additions.
9377
9378         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9379         (gst_base_sink_get_times), (gst_base_sink_do_sync),
9380         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
9381         * gst/base/gstbasesink.h:
9382         discont values are gint64, handle the math correctly.
9383
9384         * gst/base/gstbasesrc.c: (gst_base_src_loop):
9385         Make the basesrc report error if the source pad is not linked.
9386
9387         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
9388         (gst_queue_loop), (gst_queue_handle_src_query),
9389         (gst_queue_src_activate_push):
9390         Make queue collect data even if the srcpad is not linked.
9391         Start pushing out data as soon as it is linked.
9392
9393         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
9394         * gst/gstutils.h:
9395         Added gst_flow_get_name() to ease error reporting.
9396
9397 2005-07-20  Wim Taymans  <wim@fluendo.com>
9398
9399         * gst/gstmessage.c: (gst_message_new_segment_start),
9400         (gst_message_new_segment_done), (gst_message_parse_segment_start),
9401         (gst_message_parse_segment_done):
9402         * gst/gstmessage.h:
9403         Added a bunch of messages for advanced seeking.
9404
9405         * gst/parse/grammar.y:
9406         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
9407         (gst_dpman_state_changed):
9408         Fix some new-pad -> pad-added signals
9409
9410 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9411
9412         * docs/manual/appendix-porting.xml:
9413         * docs/pwg/appendix-porting.xml:
9414           Document new-pad/state-change signal renames and the FixedList
9415           type rename.
9416
9417 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9418
9419         * docs/manual/advanced-autoplugging.xml:
9420         * docs/manual/basics-helloworld.xml:
9421         * docs/manual/basics-pads.xml:
9422         * docs/random/ds/0.9-suggested-changes:
9423         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
9424         * gst/gstelement.h:
9425         * gst/gstevent.h:
9426         * gst/gstformat.h:
9427         * gst/gstquery.h:
9428         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9429         (gst_structure_parse_array), (gst_structure_parse_value):
9430         * gst/gstvalue.c: (gst_type_is_fixed),
9431         (gst_value_list_prepend_value), (gst_value_list_append_value),
9432         (gst_value_list_get_size), (gst_value_list_get_value),
9433         (gst_value_transform_array_string), (gst_value_serialize_array),
9434         (gst_value_deserialize_array), (gst_value_intersect_array),
9435         (gst_value_is_fixed), (_gst_value_initialize):
9436         * gst/gstvalue.h:
9437           GstElement::new-pad -> pad-added, GstElement::state-change ->
9438           state-changed, GstValueFixedList -> GstValueArray, add format and
9439           flags as their own arguments in gst_element_seek() (should improve
9440           "bindeability"), remove function generators since they don't work
9441           under a whole bunch of compilers (they were deprecated already
9442           anyway).
9443
9444 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9445
9446         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
9447         (_gst_debug_register_funcptr):
9448         * gst/gstinfo.h:
9449           Fix illegal cast on some platforms (#309253).
9450
9451 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9452
9453         * gst/gstmessage.c: (gst_message_new_custom):
9454         * gst/gstmessage.h:
9455           Add _new_custom, make _new_application a macro to _new_custom.
9456
9457 2005-07-20  Wim Taymans  <wim@fluendo.com>
9458
9459         * gst/base/gstbasesrc.c: (gst_base_src_init),
9460         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
9461         * gst/base/gstbasesrc.h:
9462         Add a gboolean to decide when to push out a discont.
9463
9464         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
9465         (gst_queue_loop), (gst_queue_handle_src_query),
9466         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
9467         (gst_queue_set_property), (gst_queue_get_property):
9468         Some cleanups.
9469
9470         * tests/threadstate/threadstate1.c: (main):
9471         Make a thread test compile and run... very silly..
9472
9473
9474 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9475
9476         * docs/manual/appendix-porting.xml:
9477           Mention removal of libgstgconf-0.9.la and existence of gconf
9478           elements.
9479
9480 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9481
9482         * docs/pwg/advanced-clock.xml:
9483         * docs/pwg/appendix-porting.xml:
9484         * docs/pwg/intro-preface.xml:
9485         * docs/pwg/other-base.xml:
9486         * docs/pwg/other-manager.xml:
9487         * docs/pwg/other-nton.xml:
9488         * docs/pwg/other-ntoone.xml:
9489         * docs/pwg/other-oneton.xml:
9490         * docs/pwg/pwg.xml:
9491           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
9492           demuxer), remove n-to-n (was never written), fix some code examples
9493           and links and update the porting section to include all this.
9494
9495 2005-07-19  Wim Taymans  <wim@fluendo.com>
9496
9497         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
9498         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
9499         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
9500         (gst_queue_src_activate_push), (gst_queue_change_state),
9501         (gst_queue_get_property):
9502         * gst/gstqueue.h:
9503         Propagate GstFlowReturn more intelligently upstream and output
9504         an ERROR/EOS when streaming stopped due to fatal error.
9505
9506 2005-07-19  Wim Taymans  <wim@fluendo.com>
9507
9508         * tools/gst-launch.c: (check_intr), (event_loop), (main):
9509         Don't block forever for the state change to complete, the
9510         pipeline already did with a sensible timeout.
9511
9512 2005-07-19  Wim Taymans  <wim@fluendo.com>
9513
9514         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
9515         Make sure we never call the create function is we
9516         got deactivated.
9517
9518 2005-07-19  Andy Wingo  <wingo@pobox.com>
9519
9520         * gst/parse/parse.l: Attempt to solve bug #172815.
9521
9522 2005-07-19  Wim Taymans  <wim@fluendo.com>
9523
9524         * docs/design/part-clocks.txt:
9525         * docs/design/part-events.txt:
9526         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
9527         Small docs updates.
9528         Only update the seeking values when we are not
9529         busy streaming.
9530
9531 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
9532
9533         * gst/base/gstbasesrc.c: (gst_base_src_loop):
9534           Oops, ignore the result of gst_pad_push_event here.
9535
9536 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
9537
9538         * gst/base/gstbasesrc.c: (gst_base_src_loop),
9539         (gst_base_src_activate_push):
9540           Send discont event from the loop function, as pads
9541           aren't activated yet in the activate_push handler.
9542
9543         * gst/gstbin.c: (bin_bus_handler):
9544           Don't leak element name.
9545
9546 2005-07-18  Andy Wingo  <wingo@pobox.com>
9547
9548         * configure.ac: Use AS_LIBTOOL_TAGS.
9549
9550 2005-07-18  Wim Taymans  <wim@fluendo.com>
9551
9552         * docs/gst/gstreamer.types:
9553         Remove deleted types.
9554
9555 2005-07-18  Wim Taymans  <wim@fluendo.com>
9556
9557         * check/elements/gstfakesrc.c: (GST_START_TEST):
9558         * configure.ac:
9559         * gst/Makefile.am:
9560         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
9561         (init_popt_callback):
9562         * gst/gst.h:
9563         * gst/gst_private.h:
9564         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
9565         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
9566         * gst/gstbin.h:
9567         * gst/gstbus.h:
9568         * gst/gstconfig.h.in:
9569         * gst/gstelement.c: (gst_element_class_init),
9570         (gst_element_set_base_time), (gst_element_get_base_time),
9571         (iterator_fold_with_resync), (gst_element_change_state),
9572         (gst_element_dispose), (gst_element_get_bus):
9573         * gst/gstelement.h:
9574         * gst/gstelementfactory.h:
9575         * gst/gsterror.c: (_gst_core_errors_init):
9576         * gst/gsterror.h:
9577         * gst/gstevent.h:
9578         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
9579         * gst/gstindex.c:
9580         * gst/gstinfo.c: (_gst_debug_init):
9581         * gst/gstmessage.c: (_gst_message_copy):
9582         * gst/gstmessage.h:
9583         * gst/gstminiobject.h:
9584         * gst/gstobject.c:
9585         * gst/gstobject.h:
9586         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
9587         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
9588         * gst/gstpad.h:
9589         * gst/gstparse.h:
9590         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
9591         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
9592         (gst_pipeline_get_last_stream_time):
9593         * gst/gstpipeline.h:
9594         * gst/gstpluginfeature.h:
9595         * gst/gstquery.h:
9596         * gst/gstscheduler.c:
9597         * gst/gstscheduler.h:
9598         * gst/gststructure.h:
9599         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
9600         (gst_task_finalize), (gst_task_func), (gst_task_create),
9601         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
9602         (gst_task_stop), (gst_task_pause):
9603         * gst/gsttask.h:
9604         * gst/gsttypefind.h:
9605         * gst/gsttypes.h:
9606         * gst/registries/gstlibxmlregistry.c: (load_feature),
9607         (gst_xml_registry_load), (gst_xml_registry_save_feature):
9608         * gst/registries/gstxmlregistry.c:
9609         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
9610         * gst/schedulers/threadscheduler.c:
9611         * libs/gst/control/dparammanager.h:
9612         * tools/gst-inspect.c: (print_element_list),
9613         (print_plugin_features), (print_element_features):
9614         * tools/gst-xmlinspect.c: (print_element_list),
9615         (print_plugin_info), (main):
9616         Removed plugable schedulers.
9617         Removed Scheduler/Manager from elements.
9618         Removed gsttypes.h, rearranged includes.
9619         Removed dependency pad<->element, element<>pipeline, and
9620         various others,  fix includes.
9621         implement gst_pad_get_parent() with gst_object_get_parent()
9622         Make GstTask sefcontained.
9623         Fix _get_state() on GstBin, it did not return ASYNC with a 0
9624         timeout.
9625         Fix endless loop in iterator_fold_with_resync.
9626
9627
9628 2005-07-18  Wim Taymans  <wim@fluendo.com>
9629
9630         * gst/Makefile.am:
9631         * gst/gstarch.h:
9632         Remove old file.
9633
9634 2005-07-18  Wim Taymans  <wim@fluendo.com>
9635
9636         * gst/Makefile.am:
9637         No more cothreads.h
9638
9639 2005-07-18  Wim Taymans  <wim@fluendo.com>
9640
9641         * gst/cothreads.c:
9642         * gst/cothreads.h:
9643         Let's remove these.
9644
9645 2005-07-18  Wim Taymans  <wim@fluendo.com>
9646
9647         * docs/design/part-dynamic.txt:
9648         * docs/design/part-events.txt:
9649         * docs/design/part-seeking.txt:
9650         Some more docs in the works.
9651
9652         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
9653         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
9654         (gst_base_transform_setcaps), (gst_base_transform_get_size),
9655         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
9656         (gst_base_transform_handle_buffer),
9657         (gst_base_transform_sink_activate_push),
9658         (gst_base_transform_src_activate_pull),
9659         (gst_base_transform_set_passthrough),
9660         (gst_base_transform_is_passthrough):
9661         Refcounting fixes.
9662
9663         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
9664         Cleanups.
9665
9666         * gst/gstevent.c: (gst_event_finalize):
9667         Set SRC to NULL.
9668
9669         * gst/gstutils.c: (gst_element_unlink),
9670         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
9671         (gst_pad_proxy_setcaps):
9672         * gst/gstutils.h:
9673         Add _get_parent_element() to get a pads parent as an element.
9674
9675 2005-07-18  Wim Taymans  <wim@fluendo.com>
9676
9677         * check/gst/gstbin.c: (GST_START_TEST):
9678         Remove bogus test.
9679
9680 2005-07-18  Wim Taymans  <wim@fluendo.com>
9681
9682         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
9683         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
9684         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
9685         (gst_base_sink_event), (gst_base_sink_do_sync),
9686         (gst_base_sink_chain), (gst_base_sink_loop),
9687         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
9688         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
9689         Refcounting fixes.
9690         Fix logic for returning ASYNC when not prerolled.
9691
9692 2005-07-18  Wim Taymans  <wim@fluendo.com>
9693
9694         * gst/gstqueue.c: (gst_queue_handle_sink_event):
9695         Fix nasty refcount bug.
9696
9697 2005-07-16 Philippe Khalaf <burger@speedy.org>
9698
9699         * gst/elements/gstfdsrc.c:
9700         * gst/elements/gstfdsrc.h:
9701         * gst/elements/gstelements.c:
9702         * gst/elements/Makefile.am:
9703         Ported fdsrc to 0.9.
9704
9705 2005-07-16  Wim Taymans  <wim@fluendo.com>
9706
9707         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9708         (gst_base_sink_do_sync):
9709         Fix compile error.
9710
9711 2005-07-16  Wim Taymans  <wim@fluendo.com>
9712
9713         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
9714         (gst_base_sink_event), (gst_base_sink_get_times),
9715         (gst_base_sink_do_sync), (gst_base_sink_change_state):
9716         * gst/base/gstbasesink.h:
9717         Store and use discont values when syncing buffers as described
9718         in design docs.
9719         
9720         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
9721         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
9722         (gst_base_src_activate_push):
9723         Push discont event when starting.
9724
9725         * gst/elements/gstidentity.c: (gst_identity_transform):
9726         Small cleanups.
9727
9728         * gst/gstbin.c: (gst_bin_change_state):
9729         Small cleanups in base_time  distribution.
9730
9731         * gst/gstelement.c: (gst_element_set_base_time),
9732         (gst_element_get_base_time), (gst_element_change_state):
9733         * gst/gstelement.h:
9734         Added methods for the base_time of the element.
9735         Some MT fixes.
9736
9737         * gst/gstpipeline.c: (gst_pipeline_send_event),
9738         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
9739         (gst_pipeline_get_last_stream_time):
9740         * gst/gstpipeline.h:
9741         MT fixes.
9742         Handle seeking as described in design doc, remove stream_time
9743         hack.
9744         Cleanups clock and stream_time selection code. Added accessors
9745         for the stream_time.
9746         
9747
9748 2005-07-16  Andy Wingo  <wingo@pobox.com>
9749
9750         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
9751         (#305291).
9752
9753 2005-07-16  Wim Taymans  <wim@fluendo.com>
9754
9755         * check/gst/gstbin.c: (GST_START_TEST):
9756         Make elements silent as the deep_notify refs the
9757         parent, which might make the test fail.
9758
9759         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
9760         Don't hold the lock for too long.
9761
9762 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
9763
9764         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
9765           Don't unref the caps we passed to gst_caps_make_writable() after
9766           passing them. gst_caps_make_writable() will do that for us.
9767
9768 2005-07-15  Andy Wingo  <wingo@pobox.com>
9769
9770         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
9771         (#157311).
9772
9773         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
9774         own marshalling function for the handoff signal. Properly type the
9775         buffer as a buffer. Fixes some warnings. Should do a more general
9776         solution.
9777         (gst_identity_class_init): Plug into the right marshaller.
9778
9779 2005-07-15  Wim Taymans  <wim@fluendo.com>
9780
9781         * docs/design/part-TODO.txt:
9782         * docs/design/part-clocks.txt:
9783         * docs/design/part-element-sink.txt:
9784         * docs/design/part-events.txt:
9785         * docs/design/part-gstpipeline.txt:
9786         Updated docs, mostly DISCONT related.
9787
9788 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
9789
9790         * docs/pwg/building-pads.xml:
9791           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
9792
9793 2005-07-15  Andy Wingo  <wingo@pobox.com>
9794
9795         * tools/gst-typefind.c: Update, add copyright block.
9796
9797         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
9798         Normalize and truncate caps before fixation.
9799
9800         * gst/gstcaps.h:
9801         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
9802         discards all but the first structure from its argument.
9803
9804 2005-07-15  Wim Taymans  <wim@fluendo.com>
9805
9806         * gst/base/gstbasetransform.c: (gst_base_transform_init),
9807         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
9808         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
9809         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
9810         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
9811         (gst_base_transform_chain), (gst_base_transform_change_state),
9812         (gst_base_transform_set_passthrough),
9813         (gst_base_transform_is_passthrough):
9814         * gst/base/gstbasetransform.h:
9815         Make passthrough work using the bufferpools.
9816         Changed API a bit, subclasses have to write into a buffer
9817         provided by the base class.
9818         More debug info in nego functions.
9819         
9820         * gst/elements/gstidentity.c: (gst_identity_init),
9821         (gst_identity_transform):
9822         Port to new base class.
9823
9824 2005-07-15  Wim Taymans  <wim@fluendo.com>
9825
9826         * gst/gstmessage.c: (gst_message_new_state_changed):
9827         * tools/gst-launch.c: (event_loop), (main):
9828         Totally dump messages in -launch with the -m option.
9829         Fix message name for State messages,
9830
9831 2005-07-14  Wim Taymans  <wim@fluendo.com>
9832
9833         * gst/base/gstbasesrc.c: (gst_base_src_loop):
9834         Post error messages on errors.
9835
9836 2005-07-14  Wim Taymans  <wim@fluendo.com>
9837
9838         * gst/gstcaps.c: (gst_caps_do_simplify):
9839         Remove debug info.
9840
9841         * gst/gsterror.h:
9842         Define error for stream stopped.
9843
9844         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
9845         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
9846         Do proper return values.
9847
9848         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
9849         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
9850         (gst_pad_get_range):
9851         Better return values.
9852
9853         * gst/gstpad.h:
9854         Reorganise return values, add macro to check for fatal errors.
9855
9856         * gst/gstqueue.c: (gst_queue_chain):
9857         Return proper GstFlowReturn values,
9858
9859 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9860
9861         * docs/gst/gstreamer-sections.txt:
9862         * docs/gst/gstreamer.types:
9863         * docs/gst/tmpl/gst.sgml:
9864         * docs/gst/tmpl/gstbasesink.sgml:
9865         * docs/gst/tmpl/gstbasesrc.sgml:
9866         * docs/gst/tmpl/gstbasetransform.sgml:
9867         * docs/gst/tmpl/gstbin.sgml:
9868         * docs/gst/tmpl/gstbuffer.sgml:
9869         * docs/gst/tmpl/gstcaps.sgml:
9870         * docs/gst/tmpl/gstclock.sgml:
9871         * docs/gst/tmpl/gstcompat.sgml:
9872         * docs/gst/tmpl/gstconfig.sgml:
9873         * docs/gst/tmpl/gstelement.sgml:
9874         * docs/gst/tmpl/gstelementdetails.sgml:
9875         * docs/gst/tmpl/gstelementfactory.sgml:
9876         * docs/gst/tmpl/gstenumtypes.sgml:
9877         * docs/gst/tmpl/gsterror.sgml:
9878         * docs/gst/tmpl/gstevent.sgml:
9879         * docs/gst/tmpl/gstfakesink.sgml:
9880         * docs/gst/tmpl/gstfakesrc.sgml:
9881         * docs/gst/tmpl/gstfilesink.sgml:
9882         * docs/gst/tmpl/gstfilesrc.sgml:
9883         * docs/gst/tmpl/gstfilter.sgml:
9884         * docs/gst/tmpl/gstformat.sgml:
9885         * docs/gst/tmpl/gstghostpad.sgml:
9886         * docs/gst/tmpl/gstimplementsinterface.sgml:
9887         * docs/gst/tmpl/gstindex.sgml:
9888         * docs/gst/tmpl/gstindexfactory.sgml:
9889         * docs/gst/tmpl/gstinfo.sgml:
9890         * docs/gst/tmpl/gstiterator.sgml:
9891         * docs/gst/tmpl/gstmacros.sgml:
9892         * docs/gst/tmpl/gstmemchunk.sgml:
9893         * docs/gst/tmpl/gstminiobject.sgml:
9894         * docs/gst/tmpl/gstobject.sgml:
9895         * docs/gst/tmpl/gstpad.sgml:
9896         * docs/gst/tmpl/gstpadtemplate.sgml:
9897         * docs/gst/tmpl/gstparse.sgml:
9898         * docs/gst/tmpl/gstpipeline.sgml:
9899         * docs/gst/tmpl/gstplugin.sgml:
9900         * docs/gst/tmpl/gstpluginfeature.sgml:
9901         * docs/gst/tmpl/gstquery.sgml:
9902         * docs/gst/tmpl/gstqueue.sgml:
9903         * docs/gst/tmpl/gstregistry.sgml:
9904         * docs/gst/tmpl/gstregistrypool.sgml:
9905         * docs/gst/tmpl/gstscheduler.sgml:
9906         * docs/gst/tmpl/gstschedulerfactory.sgml:
9907         * docs/gst/tmpl/gststructure.sgml:
9908         * docs/gst/tmpl/gstsystemclock.sgml:
9909         * docs/gst/tmpl/gsttaglist.sgml:
9910         * docs/gst/tmpl/gsttagsetter.sgml:
9911         * docs/gst/tmpl/gsttrace.sgml:
9912         * docs/gst/tmpl/gsttrashstack.sgml:
9913         * docs/gst/tmpl/gsttypefind.sgml:
9914         * docs/gst/tmpl/gsttypefindfactory.sgml:
9915         * docs/gst/tmpl/gsttypes.sgml:
9916         * docs/gst/tmpl/gsturihandler.sgml:
9917         * docs/gst/tmpl/gsturitype.sgml:
9918         * docs/gst/tmpl/gstutils.sgml:
9919         * docs/gst/tmpl/gstvalue.sgml:
9920         * docs/gst/tmpl/gstversion.sgml:
9921         * docs/gst/tmpl/gstxml.sgml:
9922         * docs/libs/tmpl/gstcontrol.sgml:
9923         * docs/libs/tmpl/gstdataprotocol.sgml:
9924         * docs/libs/tmpl/gstdparam.sgml:
9925         * docs/libs/tmpl/gstdplinint.sgml:
9926         * docs/libs/tmpl/gstdpman.sgml:
9927         * docs/libs/tmpl/gstdpsmooth.sgml:
9928         * docs/libs/tmpl/gstgetbits.sgml:
9929         * docs/libs/tmpl/gstunitconvert.sgml:
9930         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
9931         (gst_push_src_base_init), (gst_push_src_class_init),
9932         (gst_push_src_init), (gst_push_src_create):
9933         * gst/base/gstpushsrc.h:
9934         * gst/elements/gstelements.c:
9935         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
9936         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
9937         (gst_fake_sink_init), (gst_fake_sink_set_property),
9938         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
9939         (gst_fake_sink_event), (gst_fake_sink_preroll),
9940         (gst_fake_sink_render), (gst_fake_sink_change_state):
9941         * gst/elements/gstfakesink.h:
9942         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
9943         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
9944         (gst_fake_src_base_init), (gst_fake_src_class_init),
9945         (gst_fake_src_init), (gst_fake_src_event_handler),
9946         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
9947         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
9948         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
9949         (gst_fake_src_create_buffer), (gst_fake_src_create),
9950         (gst_fake_src_start), (gst_fake_src_stop):
9951         * gst/elements/gstfakesrc.h:
9952         * gst/elements/gstfilesink.c: (_do_init),
9953         (gst_file_sink_base_init), (gst_file_sink_class_init),
9954         (gst_file_sink_init), (gst_file_sink_dispose),
9955         (gst_file_sink_set_location), (gst_file_sink_set_property),
9956         (gst_file_sink_get_property), (gst_file_sink_open_file),
9957         (gst_file_sink_close_file), (gst_file_sink_query),
9958         (gst_file_sink_event), (gst_file_sink_render),
9959         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
9960         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
9961         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
9962         * gst/elements/gstfilesink.h:
9963         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
9964         (gst_file_src_class_init), (gst_file_src_init),
9965         (gst_file_src_finalize), (gst_file_src_set_location),
9966         (gst_file_src_set_property), (gst_file_src_get_property),
9967         (gst_file_src_map_region), (gst_file_src_map_small_region),
9968         (gst_file_src_create_mmap), (gst_file_src_create_read),
9969         (gst_file_src_create), (gst_file_src_is_seekable),
9970         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
9971         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
9972         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
9973         (gst_file_src_uri_handler_init):
9974         * gst/elements/gstfilesrc.h:
9975           more autistic cleanliness in functions/names/defines
9976
9977 2005-07-13  Andy Wingo  <wingo@pobox.com>
9978
9979         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
9980         source couldn't negotiate.
9981
9982         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
9983         connections again.
9984
9985         * gst/gstutils.h:
9986         * gst/gstutils.c (gst_element_link_pads_filtered): New old
9987         function. I am channeling Hades. Put your boots on suckers!!!
9988
9989 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9990
9991         * testsuite/caps/Makefile.am:
9992         * testsuite/caps/value_compare.c:
9993         * testsuite/caps/value_intersect.c:
9994         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
9995           move two testsuite apps over to the check dir
9996
9997 2005-07-12  Wim Taymans  <wim@fluendo.com>
9998
9999         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
10000         Added more debug info in the negotiate process.
10001
10002         * gst/gstmessage.h:
10003         Prepare for segment playback.
10004
10005         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
10006         Better debugging.
10007
10008         * gst/gstutils.c:
10009         Some more docs.
10010
10011         * tools/gst-launch.c: (main):
10012         NULL pipeline on errors.
10013
10014 2005-07-12  Andy Wingo  <wingo@pobox.com>
10015
10016         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
10017         not it comes from a malloc region. Make sure our copy gets freed.
10018
10019 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10020
10021         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
10022         * check/gst/gstmessage.c: (GST_START_TEST):
10023         * check/gst/gststructure.c: (GST_START_TEST),
10024         (gst_structure_suite), (main):
10025           more testing
10026         * gst/gstelement.c: (gst_element_message_full):
10027           clean up GError and debug string now that they get copied
10028         * gst/gstmessage.c: (gst_message_new_error),
10029         (gst_message_new_warning), (gst_message_parse_error),
10030         (gst_message_parse_warning):
10031           use GST_TYPE_G_ERROR for structure_new, and take copies of
10032           arguments, so that we don't mess up refcounting
10033
10034 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10035
10036         * check/Makefile.am:
10037           add per-test valgrind targets
10038         * check/gst-libs/gdp.c: (GST_START_TEST),
10039         (gst_data_protocol_suite), (main):
10040           clean up
10041
10042 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10043
10044         * check/Makefile.am:
10045           instate more valgrindable tests
10046         * check/elements/gstfakesrc.c: (chain_func), (event_func),
10047         (GST_START_TEST), (fakesrc_suite):
10048         * check/gst/gstpad.c: (GST_START_TEST):
10049         * check/gst/gststructure.c: (GST_START_TEST):
10050           fix test leaks
10051         * docs/gst/tmpl/gstminiobject.sgml:
10052         * gst/gstpad.c: (gst_pad_finalize):
10053           fix the static mutex leak
10054
10055 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10056
10057         * check/Makefile.am:
10058           add two more tests for valgrinding
10059         * check/gst/gstvalue.c: (GST_START_TEST):
10060           test refcount of deserialized buffer, found a leak
10061         * docs/gst/gstreamer-docs.sgml:
10062         * docs/gst/gstreamer-sections.txt:
10063         * docs/gst/gstreamer.types:
10064         * docs/gst/tmpl/gstminiobject.sgml:
10065           add miniobject to docs
10066         * gst/gstminiobject.c:
10067           add some docs
10068         * gst/gstvalue.c: (gst_value_deserialize_buffer),
10069         (gst_string_unwrap):
10070           fix a hard-to-find invalid write for one of the tests
10071           fix a leak for deserialized buffers
10072
10073 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10074
10075         * docs/pwg/advanced-events.xml:
10076         * docs/pwg/advanced-request.xml:
10077         * docs/pwg/advanced-scheduling.xml:
10078         * docs/pwg/appendix-porting.xml:
10079         * docs/pwg/building-boiler.xml:
10080         * docs/pwg/intro-preface.xml:
10081         * docs/pwg/other-ntoone.xml:
10082           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
10083           of example code and explanation for pad activation, loop() and
10084           getrange() functions and a bit more. Remove old comments pointing
10085           to loop-functions.
10086         * examples/pwg/Makefile.am:
10087           Add loop/getrange examples.
10088
10089 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10090
10091         * configure.ac:
10092           check for valgrind binary + some fixes
10093         * check/gst.supp:
10094           valgrind suppressions for the tests
10095         * check/Makefile.am:
10096           add a valgrind: target that valgrinds the unit tests
10097         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
10098         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
10099         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
10100         * check/gst/gstghostpad.c:
10101           added some cleanup
10102         * check/gst/gstdata.c:
10103           removed
10104         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
10105         (thread_unref), (gst_mini_object_suite), (main):
10106           added
10107         * gst/gst.c: (gst_deinit):
10108         * gst/gst.h:
10109           add a method to clean up.
10110         * gst/gstsystemclock.c: (gst_system_clock_dispose),
10111         (gst_system_clock_obtain):
10112           allow for disposing the system clock.
10113         * tools/gst-launch.c: (main):
10114           deinit
10115
10116 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10117
10118         * docs/gst/tmpl/gstbasesrc.sgml:
10119         * docs/gst/tmpl/gstfakesrc.sgml:
10120         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
10121         (gst_base_src_init), (gst_base_src_set_property),
10122         (gst_base_src_get_property), (gst_base_src_get_range),
10123         (gst_base_src_start):
10124         * gst/base/gstbasesrc.h:
10125           add num-buffers property
10126         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
10127         (gst_fakesrc_init), (gst_fakesrc_set_property),
10128         (gst_fakesrc_get_property), (gst_fakesrc_create),
10129         (gst_fakesrc_start):
10130           remove num-buffers property
10131
10132 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10133
10134         * docs/gst/gstreamer-sections.txt:
10135         * docs/gst/tmpl/gstbasesink.sgml:
10136         * docs/gst/tmpl/gstbasesrc.sgml:
10137         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
10138         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
10139         (gst_base_sink_finalize), (gst_base_sink_set_clock),
10140         (gst_base_sink_set_property), (gst_base_sink_get_property),
10141         (gst_base_sink_handle_object), (gst_base_sink_event),
10142         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
10143         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
10144         (gst_base_sink_loop), (gst_base_sink_deactivate),
10145         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
10146         (gst_base_sink_change_state):
10147         * gst/base/gstbasesink.h:
10148         * gst/base/gstbasesrc.h:
10149         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
10150         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
10151         (gst_filesink_init):
10152           more macro splitting
10153
10154 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10155
10156         * gst/gstelement.c: (gst_element_get_bus):
10157           add debug
10158         * tools/gst-launch.c: (check_intr), (event_loop):
10159           fix bus leaks
10160
10161 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10162
10163         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
10164           fix a caps leak
10165
10166 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10167
10168         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
10169         (gst_base_src_finalize):
10170           add finalize method and clean up properly
10171         * gst/gstpipeline.c: (gst_pipeline_dispose):
10172           add debug
10173
10174 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10175
10176         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
10177         (gst_bin_suite):
10178           add more things to check
10179         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
10180         * gst/gstelement.c:
10181           more debug
10182
10183 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10184
10185         * check/elements/gstfakesrc.c: (chain_func), (event_func),
10186         (GST_START_TEST), (fakesrc_suite):
10187         * check/gst-libs/gdp.c: (GST_START_TEST):
10188         * check/gst/gst.c: (GST_START_TEST):
10189         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
10190         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
10191         * check/gst/gstbus.c: (GST_START_TEST):
10192         * check/gst/gstcaps.c: (GST_START_TEST):
10193         * check/gst/gstdata.c: (GST_START_TEST):
10194         * check/gst/gstelement.c: (GST_START_TEST):
10195         * check/gst/gstghostpad.c: (GST_START_TEST):
10196         * check/gst/gstiterator.c: (GST_START_TEST):
10197         * check/gst/gstmessage.c: (GST_START_TEST):
10198         * check/gst/gstobject.c: (GST_START_TEST):
10199         * check/gst/gstpad.c: (GST_START_TEST):
10200         * check/gst/gststructure.c: (GST_START_TEST):
10201         * check/gst/gstsystemclock.c: (GST_START_TEST),
10202         (gst_systemclock_suite):
10203         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
10204         * check/gst/gstvalue.c: (GST_START_TEST):
10205         * check/pipelines/cleanup.c: (GST_START_TEST):
10206         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
10207         * check/states/sinks.c: (GST_START_TEST):
10208         * check/gstcheck.c: (gst_check_init):
10209         * check/gstcheck.h:
10210           add debugging category
10211           use GST_START_TEST now, so we add a debug line
10212
10213 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10214
10215         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
10216           add test for state change message on a bin
10217         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
10218           add another test
10219         * gst/gstbin.c: (gst_bin_init):
10220         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
10221         * gst/gstelement.c: (gst_element_post_message),
10222         (gst_element_set_state):
10223         * gst/gstelementfactory.c: (gst_element_factory_create):
10224         * gst/gstmessage.c: (gst_message_new):
10225         * gst/gstscheduler.c:
10226           various debugging additions and cleanups
10227
10228 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10229
10230         * check/Makefile.am:
10231         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
10232         (main):
10233           adding tests for elements
10234         * gst/gstelement.c: (gst_element_dispose):
10235
10236 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10237
10238         * gst/registries/gstlibxmlregistry.c: (load_feature):
10239           plug more leaks.  A simple gst_init() now is leakfree, yay.
10240
10241 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10242
10243         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
10244         (gst_xml_registry_load):
10245           plug another memleak
10246
10247 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10248
10249         * configure.ac:
10250           use GST_SET_ERROR_CFLAGS
10251         * docs/faq/cvs.xml:
10252           change to ERROR_CFLAGS
10253
10254 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10255
10256         * configure.ac:
10257           make GST_ERROR_CFLAGS overridable and re-enable Werror
10258         * docs/faq/cvs.xml:
10259           add a note about error CFLAGS
10260         * docs/gst/tmpl/gstfakesrc.sgml:
10261         * gst/elements/gstfakesrc.c:
10262           comment out some unused code
10263         * gst/gst.c: (split_and_iterate):
10264         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
10265         (load_feature):
10266           plug some memleaks
10267
10268 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10269
10270         * common/Makefile.am:
10271         * common/gtk-doc.mak:
10272         * docs/gst/Makefile.am:
10273           factor out gtk-doc.mak
10274
10275 2005-07-07  Wim Taymans  <wim@fluendo.com>
10276
10277         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
10278         (gst_thread_scheduler_dispose):
10279         Unlock the STREAM_LOCK completely.
10280
10281 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10282
10283         * check/Makefile.am:
10284         * check/elements/.cvsignore:
10285         * check/elements/gstfakesrc.c: (chain_func), (event_func),
10286         (START_TEST), (fakesrc_suite), (main):
10287         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
10288         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
10289         (gst_fakesrc_create), (gst_fakesrc_start):
10290         * gst/elements/gstfakesrc.h:
10291           adding a first element test
10292
10293 2005-07-07  Andy Wingo  <wingo@pobox.com>
10294
10295         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
10296         debug message.
10297
10298 2005-07-07  Wim Taymans  <wim@fluendo.com>
10299
10300         * gst/gstquery.c:
10301         * gst/gstquery.h:
10302         Remove old types
10303
10304 2005-07-07  Wim Taymans  <wim@fluendo.com>
10305
10306         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
10307         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
10308         Allow subclasses to implement their own negotiation.
10309
10310 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
10311
10312         * docs/design/part-gstbin.txt:
10313         * docs/design/part-gstpipeline.txt:
10314           Update design notes to reflect the movement of
10315           responsibility for bus handling from GstPipeline to
10316           GstBin
10317
10318 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
10319
10320         * configure.ac:
10321           Remove unnecessary queue2/3/4 examples.
10322
10323 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
10324
10325         * examples/Makefile.am:
10326         * examples/helloworld/helloworld.c: (event_loop), (main):
10327         * examples/queue/queue.c: (event_loop), (main):
10328         * examples/queue2/queue2.c: (main):
10329           Update a couple of the examples to work again.
10330
10331         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
10332         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
10333          Spelling corrections and extra debug.
10334         
10335         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
10336         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
10337         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
10338         * gst/gstbin.h:
10339         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
10340         (gst_pipeline_change_state):
10341         * gst/gstpipeline.h:
10342           Move the bus handler for children to the GstBin, and create a
10343           separate bus for receiving messages from children to the one the
10344           bus sends 'upwards' on.
10345
10346 2005-07-06  Wim Taymans  <wim@fluendo.com>
10347
10348         * gst/base/README:
10349         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
10350         (gst_base_sink_handle_object), (gst_base_sink_loop),
10351         (gst_base_sink_change_state):
10352         * gst/base/gstbasesink.h:
10353         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
10354         (gst_base_src_init), (gst_base_src_setcaps),
10355         (gst_base_src_getcaps), (gst_base_src_loop),
10356         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
10357         (gst_base_src_start), (gst_base_src_change_state):
10358         * gst/base/gstbasesrc.h:
10359         Make basesrc negotiate.
10360         Handle the case where preroll fails in basesink.
10361         Update README.
10362
10363 2005-07-06  Wim Taymans  <wim@fluendo.com>
10364
10365         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
10366         Implement the fixate function.
10367         Clean up acceptcaps.
10368
10369 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10370
10371         * docs/pwg/building-filterfactory.xml:
10372         * docs/pwg/pwg.xml:
10373           Remove never-written filter-factory chapter; I'll add the various
10374           base classes to part 4 ("other element types") later on.
10375
10376 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10377
10378         * docs/pwg/advanced-negotiation.xml:
10379         * docs/pwg/building-boiler.xml:
10380         * docs/pwg/building-pads.xml:
10381         * docs/pwg/pwg.xml:
10382         * examples/pwg/Makefile.am:
10383           Add a chapter on caps negotiation, simplify the original code
10384           samples a bit w.r.t. caps negotiation, add link to the advanced
10385           section. Add a bunch of examples showing different use cases of
10386           different types of caps negotiation. Upstream renegotiation isn't
10387           fully documented yet since nobody knows how that works.
10388
10389 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10390
10391         * check/gst/gstpad.c:
10392         * check/gstcheck.c:
10393         * gst/gstpad.c: (gst_pad_get_internal_links_default):
10394           if pad has no parent, return NULL as list of internal links
10395
10396 2005-07-05  Andy Wingo  <wingo@pobox.com>
10397
10398         * gst/elements/gstfilesrc.c:
10399         * gst/elements/gstfakesrc.c: 
10400         * gst/base/gstpushsrc.c:
10401         * gst/base/gstbasesrc.h: 
10402         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
10403         
10404 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
10405
10406         * Makefile.am:
10407           better report generation target (lcov needs a patch)
10408
10409 2005-07-05  Andy Wingo  <wingo@pobox.com>
10410
10411         * gst/elements, testsuite: Null if we got it...
10412
10413 2005-07-05  Wim Taymans  <wim@fluendo.com>
10414
10415         * configure.ac:
10416         * libs/gst/dataprotocol/Makefile.am:
10417         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
10418         * libs/gst/dataprotocol/dataprotocol.h:
10419         * pkgconfig/Makefile.am:
10420         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
10421         * pkgconfig/gstreamer-dataprotocol.pc.in:
10422         Ported dataprotol to 0.9. 
10423         Added pkgconfig files.
10424
10425 2005-07-05  Andy Wingo  <wingo@pobox.com>
10426
10427         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
10428         Default to returning TRUE for the case when tranform_caps returns
10429         a fixed caps, like for identity or volume.
10430
10431         * check/gst/gstbus.c (pound_bus_with_messages): 
10432         * check/gst/gstmessage.c (START_TEST): 
10433         * check/pipelines/simple_launch_lines.c (got_handoff): Application
10434         message API change.
10435
10436         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
10437         logic weaks here: always run transform_caps, trying passthrough
10438         operation only if the original caps intersects with the transform.
10439
10440         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
10441         source and sink caps.
10442
10443         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
10444         Intersect the peer caps with the pad template before going into
10445         transform_caps.
10446         (gst_base_transform_transform_caps): More debugging.
10447
10448         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
10449         src argument.
10450
10451 2005-07-04  Edward Hervey  <edward@fluendo.com>
10452
10453         * gst/gstutils.c:
10454         * gst/gstutils.h:
10455         (gst_pad_add_*_probe): now returns the signal id for better wrapping
10456         in bindings.
10457
10458 2005-07-04  Andy Wingo  <wingo@pobox.com>
10459
10460         * check/gst/gstpad.c: Only set explicit caps on pads.
10461
10462 2005-07-01  Andy Wingo  <wingo@pobox.com>
10463
10464         * tests/network-clock.scm: Commentary update.
10465
10466         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
10467         Didn't really make sense, not implementable with basetransform,
10468         etc.
10469         (gst_identity_transform): Unref inbuf via make_writable. Feeble
10470         attempt at implementing the sync property, needs an unlock method.
10471
10472         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
10473         New func, by default returns the same caps (the identity
10474         transformation).
10475         (gst_base_transform_getcaps): Uses transform_caps to return
10476         something sensible.
10477         (gst_base_transform_setcaps): Complicated logic to get caps on
10478         both pads, even if they are different, and to call set_caps once
10479         for every time both pads get their caps set.
10480         (gst_base_transform_handle_buffer): Give the ref to the transform
10481         function. Allows in-place modification of the buffer.
10482
10483         * gst/base/gstbasetransform.h (transform_caps): New class method.
10484         Given caps on one side, what can I do on the other.
10485         (set_caps): Take two caps, one for each side of the element.
10486
10487         * gst/gstpad.h:
10488         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
10489         caps in place. This is safe because we can check the mutability of
10490         the caps, and a good idea because fixate functions are just called
10491         as a matter of last resort. (Not actually implemented.)
10492         (gst_pad_set_caps): If the caps we're setting is actually the same
10493         as the existing pad caps, just update the pointer without calling
10494         setcaps. Assert that caps is either NULL or fixed, as per the
10495         docs.
10496
10497         * gst/gstghostpad.c: Update for fixate changes.
10498
10499 2005-07-02  Andy Wingo  <wingo@pobox.com>
10500
10501         * gst/gstcaps.c:
10502         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
10503         two refcounts makes it immutable, which is enough. Doc more.
10504
10505 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
10506
10507         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
10508           Put the mini_object into GValue as a mini_object,
10509           not a gpointer, since that's how we declared
10510           the signal.
10511
10512 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10513
10514         * examples/pwg/Makefile.am:
10515           Fix buildbot again.
10516
10517 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10518
10519         * docs/pwg/building-testapp.xml:
10520           Add extra check.
10521         * examples/pwg/Makefile.am:
10522           Fix buildbot.
10523
10524 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10525
10526         * configure.ac:
10527         * examples/Makefile.am:
10528         * examples/pwg/Makefile.am:
10529         * examples/pwg/extract.pl:
10530           Enable building the PWG examples.
10531         * docs/pwg/advanced-interfaces.xml:
10532           Add URI interface stub.
10533         * docs/pwg/advanced-types.xml:
10534         * docs/pwg/other-autoplugger.xml:
10535         * docs/pwg/appendix-porting.xml:
10536         * docs/pwg/pwg.xml:
10537           Add porting guide (mostly stubs), remove autoplugging (see ADM).
10538         * docs/pwg/building-boiler.xml:
10539         * docs/pwg/building-chainfn.xml:
10540         * docs/pwg/building-pads.xml:
10541         * docs/pwg/building-props.xml:
10542         * docs/pwg/building-state.xml:
10543         * docs/pwg/building-testapp.xml:
10544           Update the building-*.xml parts for 0.9 changes. All examples
10545           code blocks compile in examples/pwg/*.
10546
10547 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10548
10549         * docs/manual/advanced-autoplugging.xml:
10550         * docs/manual/appendix-checklist.xml:
10551         * docs/manual/appendix-integration.xml:
10552         * docs/manual/highlevel-components.xml:
10553           Fix playbin/decodebin examples, update docs a bit, mention bus
10554           instead of signals in various places, mention kmplayer and
10555           kaffeine since they have a working GStreamer backend in the KDE
10556           section.
10557
10558 2005-06-30  Wim Taymans  <wim@fluendo.com>
10559
10560         * CHANGES-0.9:
10561         * docs/design/draft-ghostpads.txt:
10562         * docs/design/draft-push-pull.txt:
10563         * docs/design/draft-query.txt:
10564         * docs/design/part-TODO.txt:
10565         * docs/design/part-query.txt:
10566         Added CHANGES-0.9 doc, updated status of other docs.
10567         
10568         * gst/gstquery.h:
10569         Remove "hmm" macro
10570
10571 2005-06-30  Wim Taymans  <wim@fluendo.com>
10572
10573         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
10574         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
10575         (gst_base_sink_change_state):
10576         * gst/base/gstbasesink.h:
10577         Some tweaks, only EOS and a buffer complete a preroll.
10578
10579 2005-06-30  Andy Wingo  <wingo@pobox.com>
10580
10581         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
10582         activate_push down to the internal pad as well.
10583
10584 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
10585
10586         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10587
10588         * gst/gsttaginterface.c:
10589           Some documentation fixes (#307394 and #307397).
10590
10591 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
10592
10593         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10594
10595         * gst/gstvalue.c: (gst_value_intersect_list):
10596           Fix memleak (#309125).
10597
10598 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10599
10600         * docs/manual/advanced-dataaccess.xml:
10601           Fix fakesrc example to compile; doesn't work, bug somewhere...?
10602         * docs/manual/basics-pads.xml:
10603           Add reference for filtered caps to above chapter.
10604
10605 2005-06-30  Wim Taymans  <wim@fluendo.com>
10606
10607         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
10608         (gst_bin_change_state):
10609         Probes are gone.
10610         Lame attempt at making the state change function a bit
10611         more readable.
10612
10613 2005-06-30  Wim Taymans  <wim@fluendo.com>
10614
10615         * docs/design/part-clocks.txt:
10616         * docs/design/part-element-sink.txt:
10617         * docs/design/part-events.txt:
10618         * docs/design/part-preroll.txt:
10619         * docs/design/part-states.txt:
10620         Some more tweeks and additions to the docs.
10621
10622 2005-06-30  Wim Taymans  <wim@fluendo.com>
10623
10624         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
10625         (default_have_data), (gst_pad_class_init), (gst_pad_init),
10626         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
10627         (gst_pad_check_pull_range), (gst_pad_get_range),
10628         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
10629         * gst/gstpad.h:
10630         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
10631         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
10632         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
10633         (gst_pad_remove_buffer_probe):
10634         Removed atomic operations, use existing LOCK.
10635         Move exception handling out of main code path.
10636
10637 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10638
10639         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
10640         (silly_return_true_function), (gst_pad_class_init),
10641         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
10642         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
10643         (gst_pad_send_event):
10644           Fix accumulator, add default value by using _emitv() instead
10645           of _emit() for signal emission.
10646
10647 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10648
10649         * docs/manual/advanced-dataaccess.xml:
10650         * examples/manual/Makefile.am:
10651           Add probe example.
10652         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
10653           Make work (??).
10654
10655 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
10656
10657         * gst/elements/gstfilesink.c: (gst_filesink_render):
10658           Simplify code so that we don't have to handle short
10659           writes and return GST_FLOW_ERROR if an error occured.
10660
10661 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10662
10663         * docs/gst/gstreamer-docs.sgml:
10664           Remove probes more.
10665
10666 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10667
10668         * docs/gst/gstreamer-sections.txt:
10669         * docs/gst/tmpl/gstpad.sgml:
10670         * docs/gst/tmpl/gstprobe.sgml:
10671         * gst/Makefile.am:
10672         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
10673         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
10674         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
10675         (gst_pad_push_event), (gst_pad_send_event):
10676         * gst/gstpad.h:
10677         * gst/gstutils.c: (gst_pad_add_data_probe),
10678         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
10679         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
10680         (gst_pad_remove_buffer_probe):
10681         * gst/gstutils.h:
10682           Remove old probes, add new g-signal-based probes and some utility
10683           functions.
10684
10685 2005-06-29  Edward Hervey  <edward@fluendo.com>
10686
10687         * gst/gstelementfactory.c:
10688         * gst/gstutils.h:
10689         * gst/gstutils.c:
10690         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
10691         the definition to the header file.
10692
10693 2005-06-29  Andy Wingo  <wingo@pobox.com>
10694
10695         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
10696         plugins from the source directory.
10697
10698 2005-06-29  Wim Taymans  <wim@fluendo.com>
10699
10700         * docs/gst/tmpl/gstbuffer.sgml:
10701         * docs/gst/tmpl/gstclock.sgml:
10702         Some fixings for blantently wrong text.
10703
10704 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10705
10706         * check/Makefile.am:
10707         * gst/gst.c: (add_path_func), (init_pre):
10708         * gst/gstregistry.c: (gst_registry_add_path):
10709           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
10710           only scan the GST_PLUGIN_PATH locations, and not add
10711           system locations
10712
10713 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10714
10715         * docs/gst/gstreamer-sections.txt:
10716         * docs/gst/tmpl/gstbasesrc.sgml:
10717         * gst/gstelement.c:
10718         * gst/gstelement.h:
10719         * gst/gstevent.c:
10720         * gst/gstutils.c:
10721           doc fixes
10722
10723 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10724
10725         * docs/manual/advanced-autoplugging.xml:
10726           Fix autoplugging example.
10727
10728 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10729
10730         * docs/manual/advanced-autoplugging.xml:
10731         * docs/manual/mime-world.fig:
10732           Try to get autoplugging working, fix type detection. Fix text
10733           in hello-world image.
10734
10735 2005-06-29  Wim Taymans  <wim@fluendo.com>
10736
10737         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
10738         (gst_base_sink_change_state):
10739         Small debug line.
10740
10741         * gst/gstclock.h:
10742         map SIGNAL and BROADCAST to the right function.
10743
10744         * gst/gstobject.h:
10745         Remove redundant braces.
10746
10747         * gst/gstpad.c: (gst_pad_set_caps):
10748         Don't call setcaps function when reseting caps to NULL.
10749
10750         * gst/gstsystemclock.c: (gst_system_clock_dispose),
10751         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
10752         (gst_system_clock_id_unschedule):
10753         Use BROADCAST as this is what we do.
10754
10755 2005-06-29  Wim Taymans  <wim@fluendo.com>
10756
10757         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
10758         We are actually prerolling before commiting the state
10759         change. 
10760
10761 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
10762
10763         * docs/manual/advanced-clocks.xml:
10764         * docs/manual/advanced-interfaces.xml:
10765         * docs/manual/advanced-metadata.xml:
10766         * docs/manual/advanced-position.xml:
10767         * docs/manual/advanced-schedulers.xml:
10768         * docs/manual/advanced-threads.xml:
10769         * docs/manual/appendix-porting.xml:
10770         * docs/manual/basics-bins.xml:
10771         * docs/manual/basics-bus.xml:
10772         * docs/manual/basics-elements.xml:
10773         * docs/manual/basics-helloworld.xml:
10774         * docs/manual/basics-pads.xml:
10775         * docs/manual/highlevel-components.xml:
10776         * docs/manual/manual.xml:
10777         * docs/manual/thread.fig:
10778           Update (until threads/scheduling) Application Development Manual;
10779           remove GstThread, add GstBus, add simple porting checklist, add
10780           documentation for tag writing, clocks, make all examples until this
10781           part compile and run.
10782         * examples/manual/Makefile.am:
10783           Update from changes to Application Development Manual; add bus
10784           example, remove thread example.
10785
10786 2005-06-28  Wim Taymans  <wim@fluendo.com>
10787
10788         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
10789         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
10790         (gst_bus_source_dispatch):
10791         Add debugging messages.
10792         Make internal methods static.
10793         Handle the case where the bus is flushed in the handler.
10794         
10795         * gst/gstelement.c: (gst_element_get_bus):
10796         Fix refcount in _get_bus();
10797
10798         * gst/gstpipeline.c: (gst_pipeline_change_state),
10799         (gst_pipeline_get_clock_func):
10800         Clock refcounting fixes.
10801         Handle the case where preroll timed out more gracefully.
10802         
10803         * gst/gstsystemclock.c: (gst_system_clock_dispose):
10804         Clean up the internal thread in dispose. This is needed
10805         for subclasses that actually get disposed.
10806         
10807         * gst/schedulers/threadscheduler.c:
10808         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
10809         (gst_thread_scheduler_dispose):
10810         Free thread pool in dispose.
10811
10812 2005-06-28  Andy Wingo  <wingo@pobox.com>
10813
10814         * tests/network-clock-utils.scm (debug, print-event): New utils.
10815
10816         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
10817         (*packet-loss*): Unified loss probability.
10818         (network-time): Report out-of-band events.
10819
10820         * tests/plot-data: Add support for out-of-band events. Hack it
10821         into this script instead of passing it down the pipe; should fix
10822         this later.
10823
10824 2005-06-28  Wim Taymans  <wim@fluendo.com>
10825
10826         * docs/gst/gstreamer.types:
10827         * docs/gst/tmpl/gstbasesrc.sgml:
10828         * docs/gst/tmpl/gstpad.sgml:
10829         Docs fixes.
10830
10831 2005-06-28  Wim Taymans  <wim@fluendo.com>
10832
10833         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
10834         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
10835         (gst_proxy_pad_do_fixatecaps):
10836         Correctly proxy the check_pull_range function.
10837
10838 2005-06-28  Andy Wingo  <wingo@pobox.com>
10839
10840         * tests/network-clock.scm: Removed need for slib.
10841         
10842 2005-06-28  Wim Taymans  <wim@fluendo.com>
10843
10844         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
10845         (gst_basesink_preroll_queue_flush):
10846         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
10847         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
10848         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
10849         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
10850         (gst_proxy_pad_set_property):
10851         * gst/gstpad.c:
10852         * gst/gstpad.h:
10853         * gst/gstqueue.c: (gst_queue_init):
10854         The deprecated pad loop function is removed now.
10855
10856 2005-06-28  Andy Wingo  <wingo@pobox.com>
10857
10858         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
10859         New parameters, simulate network packet loss.
10860
10861         * tests/network-clock-utils.scm: Initialize the RNG.
10862
10863 2005-06-28  Wim Taymans  <wim@fluendo.com>
10864
10865         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
10866         (gst_basesink_event), (gst_basesink_deactivate):
10867         Flushing the preroll queue always needs to unlock the waiters.
10868
10869 2005-06-28  Edward Hervey  <edward@fluendo.com>
10870
10871         * gst/gstpipeline.c: (gst_pipeline_send_event): 
10872         Wheen a seek was successful on a pipeline, set the stream_time to the
10873         seek offset in order to have a synchronized stream_time.
10874
10875 2005-06-28  Wim Taymans  <wim@fluendo.com>
10876
10877         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
10878         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
10879         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
10880         (gst_proxy_pad_do_fixatecaps):
10881         Call wrapper function instead of just calling the function
10882         pointers. This takes care of any locking and whatmore.
10883
10884 2005-06-28  Wim Taymans  <wim@fluendo.com>
10885
10886         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
10887         (gst_pad_pull_range):
10888         * gst/gstpad.h:
10889         CONNECTED -> LINKED.
10890
10891 2005-06-28  Andy Wingo  <wingo@pobox.com>
10892
10893         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
10894         source-munging commit!!!
10895
10896         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
10897         (gst_object_sink): Take gpointer arguments, not GstObject --
10898         avoids casts. Like GLib.
10899
10900         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
10901         activate.
10902
10903 2005-06-27  Andy Wingo  <wingo@pobox.com>
10904
10905         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
10906         remaining buffer.
10907
10908         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
10909         returns a sorted copy of the trace list.
10910         (gst_alloc_trace_print_live): New API, only prints traces with
10911         live objects. Sort the list.
10912         (gst_alloc_trace_print_all): Sort the list.
10913         (gst_alloc_trace_print): Align columns.
10914
10915         * gst/elements/gstttypefindelement.c:
10916         * gst/elements/gsttee.c:
10917         * gst/base/gstbasesrc.c:
10918         * gst/base/gstbasesink.c:
10919         * gst/base/gstbasetransform.c:
10920         * gst/gstqueue.c: Adapt for pad activation changes.
10921
10922         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
10923         sched.
10924         (gst_pipeline_dispose): Drop ref on sched.
10925
10926         * gst/gstpad.c (gst_pad_init): Set the default activate func.
10927         (gst_pad_activate_default): Push mode by default.
10928         (pre_activate_switch, post_activate_switch): New stubs, things to
10929         do before and after switching activation modes on pads.
10930         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
10931         the pad's activate function to choose which mode to activate.
10932         Shortcut on deactivation and call the right function directly.
10933         (gst_pad_activate_pull): New API, (de)activates a pad in pull
10934         mode.
10935         (gst_pad_activate_push): New API, same for push mode.
10936         (gst_pad_set_activate_function) 
10937         (gst_pad_set_activatepull_function) 
10938         (gst_pad_set_activatepush_function): Setters for new API.
10939
10940         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
10941         Trace all miniobjects.
10942         (gst_mini_object_make_writable): Unref the arg if we copy, like
10943         gst_caps_make_writable.
10944
10945         * gst/gstmessage.c (_gst_message_initialize): No trace init.
10946
10947         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
10948         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
10949         Adapt for new pad API.
10950
10951         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
10952
10953         * gst/gstelement.h:
10954         * gst/gstelement.c (gst_element_iterate_src_pads) 
10955         (gst_element_iterate_sink_pads): New API functions.
10956         
10957         * gst/gstelement.c (iterator_fold_with_resync): New utility,
10958         should fold into gstiterator.c in some form.
10959         (gst_element_pads_activate): Simplified via use of fold and
10960         delegation of decisions to gstpad->activate.
10961
10962         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
10963         help in debugging.
10964
10965         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
10966         class once in init, like gstmessage. Didn't run into this issue
10967         but it seems correct. Don't initialize a trace, gstminiobject does
10968         that.
10969
10970         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
10971         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
10972         to the bus.
10973         (assert_live_count): New util function, uses alloc traces to check
10974         cleanup.
10975
10976         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
10977         To be modified when unlink drops the internal pad.
10978
10979 2005-06-27  Wim Taymans  <wim@fluendo.com>
10980
10981         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
10982         (gst_bin_change_state):
10983         Cleanup the get_state() function a little, make sure it
10984         iterates the same set of elements.
10985         Added stub iterate_state_order().
10986
10987 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
10988
10989         * docs/gst/gstreamer-docs.sgml:
10990         * docs/gst/gstreamer-sections.txt:
10991         * docs/gst/gstreamer.types:
10992         * docs/gst/tmpl/gstbasesink.sgml:
10993         * docs/gst/tmpl/gstbasesrc.sgml:
10994         * docs/gst/tmpl/gstbasetransform.sgml:
10995         * docs/gst/tmpl/gstelement.sgml:
10996         * docs/gst/tmpl/gstiterator.sgml:
10997         * gst/base/gstbasesrc.c:
10998         * gst/base/gstbasesrc.h:
10999         * gst/base/gstbasetransform.h:
11000         * gst/gstelement.c:
11001         * gst/gstiterator.h:
11002           adding basetransform and iterator docs
11003
11004 2005-06-27  Andy Wingo  <wingo@pobox.com>
11005
11006         * docs/design/part-activation.txt: Notes on how activation should
11007         work -- not quite implemented yet.
11008
11009 2005-06-25  Wim Taymans  <wim@fluendo.com>
11010
11011         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
11012         At least get the chain function correct, needs more
11013         fixing.
11014
11015 2005-06-25  Wim Taymans  <wim@fluendo.com>
11016
11017         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
11018         (gst_basesink_handle_object), (gst_basesink_event),
11019         (gst_basesink_do_sync), (gst_basesink_handle_event),
11020         (gst_basesink_change_state):
11021         * gst/gsttask.h:
11022         Right, two problems here: ghostpads don't take locks and
11023         glib _rec_mutex_lock_full() with depth==0 still locks.
11024         Catch illegal locking and g_warn them.
11025
11026 2005-06-25  Wim Taymans  <wim@fluendo.com>
11027
11028         * check/states/sinks.c: (START_TEST), (gst_object_suite):
11029         Have to check for completion now...
11030
11031 2005-06-25  Wim Taymans  <wim@fluendo.com>
11032
11033         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
11034         (gst_basesink_handle_object), (gst_basesink_event),
11035         (gst_basesink_do_sync), (gst_basesink_handle_event),
11036         (gst_basesink_change_state):
11037         * gst/gstpad.h:
11038         Unlock STREAM_LOCK whatever the recursion was.
11039
11040 2005-06-25  Wim Taymans  <wim@fluendo.com>
11041
11042         * gst/base/gstbasesink.c: (gst_basesink_set_property),
11043         (gst_basesink_preroll_queue_empty),
11044         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
11045         (gst_basesink_event), (gst_basesink_do_sync),
11046         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
11047         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
11048         (gst_basesink_change_state):
11049         Reworked the base sink, handle event and buffer serialisation
11050         correctly and removed possible deadlock.
11051         Handle EOS correctly.
11052
11053 2005-06-25  Wim Taymans  <wim@fluendo.com>
11054
11055         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
11056         (gst_pipeline_change_state):
11057         * tools/gst-launch.c: (check_intr), (event_loop), (main):
11058         Allow elements to post EOS in the state change function.
11059         Fix up -launch, make it exit the poll loop when the
11060         pipeline actually changed state.
11061         Fix up warning parsing in -launch.
11062
11063 2005-06-25  Wim Taymans  <wim@fluendo.com>
11064
11065         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
11066         (gst_tee_sink_activate):
11067         Core takes STREAM_LOCK for us now.
11068
11069 2005-06-25  Wim Taymans  <wim@fluendo.com>
11070
11071         * gst/gstelement.c: (gst_element_get_state_func),
11072         (gst_element_set_state):
11073         * gst/gstelement.h:
11074         * gst/gstmessage.c: (gst_message_parse_error),
11075         (gst_message_parse_warning):
11076         Keep track of current target state while performing a state
11077         change so that subclasses can do something interesting.
11078         Fix parsing of warning/error messages when GError is NULL.
11079
11080 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11081
11082         * docs/gst/Makefile.am:
11083         * docs/gst/gstreamer-docs.sgml:
11084         * docs/gst/gstreamer-sections.txt:
11085         * docs/gst/gstreamer.types:
11086         * docs/gst/tmpl/gstbasesink.sgml:
11087         * docs/gst/tmpl/gstbasesrc.sgml:
11088         * docs/gst/tmpl/gstbin.sgml:
11089         * docs/gst/tmpl/gstcompat.sgml:
11090         * docs/gst/tmpl/gstfakesink.sgml:
11091         * docs/gst/tmpl/gstfakesrc.sgml:
11092         * docs/gst/tmpl/gstfilesink.sgml:
11093         * docs/gst/tmpl/gstfilesrc.sgml:
11094         * docs/gst/tmpl/gstindex.sgml:
11095         * docs/manual/appendix-quotes.xml:
11096         * gst/base/gstbasesrc.h:
11097         * gst/elements/gstfakesrc.h:
11098         * gst/gstmessage.h:
11099           start pulling in base classes and elements in our docs
11100
11101 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
11102
11103         * docs/gst/Makefile.am:
11104         * docs/libs/Makefile.am:
11105           fixed make distcheck with gtk-doc 1.3
11106
11107 2005-06-23  Wim Taymans  <wim@fluendo.com>
11108
11109         * gst/gstelement.c: (gst_element_get_state_func),
11110         (gst_element_set_state), (gst_element_change_state):
11111         When the state did not change, also report NO_PREROLL
11112         when it matters.
11113
11114 2005-06-23  Wim Taymans  <wim@fluendo.com>
11115
11116         * gst/gstpad.c: (gst_pad_event_default):
11117         * gst/gstqueue.c: (gst_queue_loop):
11118         No unsafe task pausing please.
11119
11120 2005-06-23  Wim Taymans  <wim@fluendo.com>
11121
11122         * gst/schedulers/threadscheduler.c:
11123         (gst_thread_scheduler_task_start),
11124         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
11125         Ref the task before pushing it on the threadpool. This
11126         makes sure that we have a ref when the threadfunction is
11127         actually called.
11128
11129 2005-06-23  Andy Wingo  <wingo@pobox.com>
11130
11131         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
11132         offset is greater than the file's size.
11133
11134         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
11135         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
11136         * gst/gstobject.c (gst_object_class_init): Make the class lock
11137         recursive. Wim won't let me drop deep_notify. Decodebin works
11138         again, whoopdy doo.
11139
11140         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
11141         internal pad, and hacks accordingly. Doesn't do it on the target
11142         pad because we change its caps. Probably catches all cases of
11143         interest tho.
11144         (gst_ghost_pad_set_property): Connect to notify::caps as
11145         appropritate.
11146
11147         * tests/network-clock.scm (plot-simulation): Pipe data to the
11148         elite python skript.
11149
11150         * tests/network-clock-utils.scm (define-parameter): New macro,
11151         defines a parameter that can be set via the command line.
11152         (set-parameter!, parse-parameter-arguments): Command line args
11153         parser.
11154
11155         * tests/plot-data: Simple matplotlib-based plotter, takes input on
11156         stdin.
11157
11158 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
11159
11160         * gst/elements/gsttypefindelement.c:
11161         (gst_type_find_element_handle_event):
11162           Don't restart typefinding on a discont.
11163         * gst/gstelement.c: (gst_element_set_state):
11164           Debug spelling fix.
11165         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
11166           Allow changing mode of an active pad.
11167           Debug output fixes.
11168         * gst/registries/gstlibxmlregistry.c: (load_feature):
11169           Don't cast a static pad template to a normal pad template.
11170
11171 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11172
11173         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
11174         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
11175           remove gst_strtoll completely, since it didn't actually do
11176           anything more than what g_ascii_strtoull already does.
11177           check for range errors when deserializing
11178           do a cast for the unsigned cases; but further fixing needs
11179           a decision on what the interpretation of "(int)" and
11180           deserialization should be for values that fall outside the
11181           type's boundaries (ie, refuse, or interpret as casting)
11182
11183 2005-06-23  Wim Taymans  <wim@fluendo.com>
11184
11185         * check/Makefile.am:
11186         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
11187         * docs/design/part-live-source.txt:
11188         * docs/design/part-states.txt:
11189         * gst/base/gstbasesrc.c: (gst_basesrc_init),
11190         (gst_basesrc_set_live), (gst_basesrc_is_live),
11191         (gst_basesrc_get_range), (gst_basesrc_activate),
11192         (gst_basesrc_change_state):
11193         * gst/base/gstbasesrc.h:
11194         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
11195         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
11196         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
11197         * gst/gstelement.c: (gst_element_get_state_func),
11198         (gst_element_set_state):
11199         * gst/gstelement.h:
11200         * gst/gsttypes.h:
11201         * tools/gst-launch.c: (event_loop), (main):
11202         Added support for live sources and other elements that
11203         cannot do preroll.
11204         Updated design docs, added live-source design doc.
11205         Implemented live source functionality in basesrc
11206         Fix error condition in _bin_get_state()
11207         Implement live source handling in -launch.
11208         Added check for live sources.
11209         Fixed case in GstBin where elements were changed state
11210         multiple times.
11211
11212
11213 2005-06-23  Andy Wingo  <wingo@pobox.com>
11214
11215         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
11216         borken refcounting.
11217
11218         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
11219         gst_caps_replace takes care of this for us.
11220
11221         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
11222         gst_pad_set_caps on the target, not just its setcaps() function.
11223
11224         * tests/network-clock.scm: 
11225         * tests/network-clock-utils.scm: A network clock simulator.
11226         Something of an algorithmic testbed before doing something in C.
11227
11228 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11229
11230         * check/Makefile.am:
11231         * check/gst/capslist.h:
11232           copy over from 0.8, and add two with bitmasks specified with
11233           (int) 0xFF...
11234         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
11235           add test to parse everything from capslist.h
11236         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
11237         (main):
11238           add test for structure deserialization
11239         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
11240           add tests for deserialization of strings to int types
11241         * gst/gststructure.c: (gst_structure_nth_field_name):
11242         * gst/gststructure.h:
11243           add a way to get the name of a field referenced by index
11244         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
11245           instead of checking if the resulting long long lies between
11246           min and max, we check if the long long would fit into
11247           a number of bytes for the final type.
11248           This fixes cases where a string represents 2^32 - 1, which
11249           when cast to int would be the (valid) -1, but is bigger than
11250           G_MAXINT
11251
11252 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11253
11254         * gst/parse/grammar.y:
11255           add a log line for type deserialization
11256
11257 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11258
11259         * check/gst/gstvalue.c: (START_TEST):
11260         * gst/gstvalue.c: (gst_value_deserialize):
11261           return long long, not int, so gint64 deserialization actually
11262           works.  Is there any flag that makes the compiler check this ?
11263           Fixes #308559
11264
11265 2005-06-22  Wim Taymans  <wim@fluendo.com>
11266
11267         * gst/gstbuffer.h:
11268         Added convenience macros for setting buffers in GValue.
11269
11270 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
11271
11272         * check/gst/.cvsignore:
11273         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
11274           add a test deserializing int64, and comment part out because
11275           it fails, yay !
11276
11277 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
11278
11279         * check/Makefile.am:
11280         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
11281         * testsuite/Makefile.am:
11282         * testsuite/caps/Makefile.am:
11283         * testsuite/caps/value_serialize.c:
11284         * testsuite/test_gst_init.c:
11285           move a value_serialize test over
11286
11287 2005-06-20  Wim Taymans  <wim@fluendo.com>
11288
11289         * gst/gstpad.c:
11290         Small doc updates.
11291         
11292         * gst/gstvalue.c: (gst_value_compare_buffer),
11293         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
11294         (gst_value_compare_flags), (gst_value_serialize_flags),
11295         (gst_value_deserialize_flags), (_gst_value_initialize):
11296         Fix serialisation of buffers, they are not boxed types anymore
11297
11298 2005-06-20  Wim Taymans  <wim@fluendo.com>
11299
11300         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
11301         Testcase to show error in buffer-on-caps serialisation.
11302
11303 2005-06-20  Andy Wingo  <wingo@pobox.com>
11304
11305         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
11306         will be adding to later.
11307
11308         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
11309         if its socks fill with rocks.
11310         (gst_system_clock_obtain): Set the name on object construction.
11311         Avoid double-checked locking.
11312
11313 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
11314
11315         * gst/gsturi.c: (gst_element_make_from_uri):
11316           Fix potential endless loop.
11317
11318 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11319
11320         * check/Makefile.am:
11321           add gsttag
11322         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
11323         (main):
11324           move over from testsuite dir and clean up
11325         * configure.ac:
11326         * gst/gsttag.c:
11327         * testsuite/Makefile.am:
11328         * testsuite/tags/.cvsignore:
11329         * testsuite/tags/Makefile.am:
11330         * testsuite/tags/merge.c:
11331           remove testsuite/tags
11332
11333 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11334
11335         * docs/gst/gstreamer-sections.txt:
11336         * docs/gst/tmpl/gstenumtypes.sgml:
11337         * win32/gstenumtypes.c:
11338           clean up documentation build a little
11339
11340 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11341
11342         * check/gstcheck.h:
11343           add macros for checking refcounts on objects and caps
11344         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
11345           add some more unit tests
11346         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
11347         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
11348           fix leaked refcounts (I hope :)) so unittest works
11349         * gst/gstpad.h:
11350           whitespace removal
11351
11352 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11353
11354         * configure.ac: back to HEAD
11355
11356 === release 0.9.1 ===
11357
11358 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11359
11360         * NEWS:
11361         * RELEASE:
11362           updated
11363
11364 2005-06-17  Andy Wingo  <wingo@pobox.com>
11365
11366         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
11367         assert; it's always possible that the pad gets deactivated in
11368         between the checks in gstpad.c and the implementation. Rely on
11369         finish_preroll() to return a FLUSHING or similar instead of on the
11370         assert.
11371         
11372         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
11373         clock and post an EOS message if we come out of finish_preroll in
11374         the playing state.
11375
11376 2005-06-16  David Schleef  <ds@schleef.org>
11377
11378         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
11379         (gst_capsfilter_set_property): Allow NULL as possible value
11380         for filter_caps property, indicating GST_CAPS_ANY.
11381
11382 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11383
11384         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
11385           fix debug output
11386         * gst/schedulers/Makefile.am:
11387           use libgst prefix
11388         * gstreamer.spec.in:
11389           fix spec for it
11390
11391 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11392
11393         * gstreamer.spec.in:
11394           clean up
11395
11396 2005-06-08  Andy Wingo  <wingo@pobox.com>
11397
11398         * gst/gstutils.c: RPAD fixes all around.
11399         (gst_element_link_pads): Refcounting fixes.
11400
11401         * tools/gst-inspect.c:
11402         * tools/gst-xmlinspect.c:
11403         * parse/grammar.y:
11404         * gst/base/gsttypefindhelper.c:
11405         * gst/base/gstbasesink.c:
11406         * gst/gstqueue.c: RPAD fixes.
11407
11408         * gst/gstghostpad.h:
11409         * gst/gstghostpad.c: New ghost pad implementation as full proxy
11410         pads. The tricky thing is they provide both source and sink
11411         interfaces, since they proxy the internal pad for the external
11412         pad, and vice versa. Implement with lower-level ProxyPad objects,
11413         with the interior proxy pad as a child of the exterior ghost pad.
11414         Should write a doc on this.
11415         
11416         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
11417         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
11418         gst_object API.
11419         
11420         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
11421         pads are real pads. No ghost pads in this file. Not documenting
11422         the myriad s/RPAD/PAD/ and REALIZE fixes.
11423         (gst_pad_class_init): Add properties for "direction" and
11424         "template". Both are construct-only, so they can't change during
11425         the life of the pad. Fixes properly deriving from GstPad.
11426         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
11427         derived objects, just set properties when creating the objects via
11428         g_object_new.
11429         (gst_pad_get_parent): Implement as a function, return NULL if the
11430         parent is not an element.
11431         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
11432         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
11433         
11434         * gst/gstobject.c (gst_object_class_init): Make name a construct
11435         property. Don't set it in the object init.
11436
11437         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
11438         with UNKNOWN direction.
11439         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
11440         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
11441         (gst_element_remove_pad): Remove ghost-pad special cases.
11442         (gst_element_pads_activate): Remove rpad cruft.
11443
11444         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
11445         catch the pad's-parent-not-an-element case.
11446
11447         * gst/gst.h: Include gstghostpad.h.
11448
11449         * gst/gst.c (init_post): No more real, ghost pads.
11450
11451         * gst/Makefile.am: Add gstghostpad.[ch].
11452
11453         * check/Makefile.am:
11454         * check/gst/gstbin.c:
11455         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
11456         into a bin creates ghost pads, and that the refcounts are right.
11457         Partly moved from gstbin.c.
11458
11459 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11460
11461         * check/gst-libs/.cvsignore:
11462         * check/gst/.cvsignore:
11463         * check/pipelines/.cvsignore:
11464           ignore more
11465         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
11466         (START_TEST), (cleanup_suite), (main):
11467           add some tests related to cleanup after running pipelines
11468
11469 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11470
11471         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
11472           add a testsuite for GstBuffer
11473
11474 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11475
11476         * gst/gstminiobject.h:
11477           add defines for accessing the refcount
11478
11479 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
11480
11481         * Makefile.am: added support for html unit test coverage reports
11482
11483 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
11484
11485         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
11486           Free existing caps if the capsfilter changes. Add a FIXME about
11487           setting those caps on the pads.
11488
11489         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
11490           Before adding a ghost pad to a parent bin, check that there isn't
11491           already one for the element on the bin. Prevents infinite recursion
11492           when using decodebin in parse pipelines. Andy says he'll rewrite the
11493           way this works anyway, so ignore the hack.
11494
11495 2005-06-02  Andy Wingo  <wingo@pobox.com>
11496
11497         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
11498         file size, pass it on to the type find helper.
11499
11500         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
11501         segment_start and segment_end properly according to the seek
11502         method. Segment_end is still a bit flaky because offset can be
11503         negative for CUR and END cases, but it takes -1 as an "unset"
11504         value.
11505
11506 2005-06-02  Wim Taymans  <wim@fluendo.com>
11507
11508         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
11509         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
11510         (gst_basesink_activate):
11511         * gst/base/gstbasesink.h:
11512         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
11513         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
11514         (gst_pad_query), (gst_pad_start_task):
11515         * gst/gstpad.h:
11516         * gst/gstqueue.c: (gst_queue_bufferalloc),
11517         (gst_queue_handle_sink_event), (gst_queue_chain):
11518         Bufferalloc: return GstFlowReturn to more accuratly report
11519         why allocation failed.
11520
11521 2005-06-02  Wim Taymans  <wim@fluendo.com>
11522
11523         * gst/gstpipeline.c: (gst_pipeline_send_event):
11524         Take snapshot of state without blocking.
11525
11526 2005-06-02  Wim Taymans  <wim@fluendo.com>
11527
11528         * docs/design/part-TODO.txt:
11529         * docs/design/part-caps.txt:
11530         * docs/design/part-clocks.txt:
11531         * docs/design/part-negotiation.txt:
11532         * docs/design/part-preroll.txt:
11533         Small doc updates 
11534
11535 2005-05-30  Wim Taymans  <wim@fluendo.com>
11536
11537         * gst/elements/gstidentity.c: (gst_identity_event),
11538         (gst_identity_transform), (gst_identity_get_property):
11539         Protect last_message property as it is accessed from
11540         multiple threads.
11541
11542 2005-05-30  Wim Taymans  <wim@fluendo.com>
11543
11544         * gst/gstelement.c: (gst_element_init),
11545         (gst_element_pads_activate), (gst_element_change_state):
11546         Slicker pad activation code.
11547
11548 2005-05-30  Wim Taymans  <wim@fluendo.com>
11549
11550         * gst/Makefile.am:
11551         * gst/gstelement.h:
11552         * gst/gstelementfactory.h:
11553         * gst/gsttypes.h:
11554         Move elementfactory methods to separate .h file.
11555
11556 2005-05-30  Wim Taymans  <wim@fluendo.com>
11557
11558         * docs/design/part-overview.txt:
11559         * gst/gstsystemclock.h:
11560         Small typo fixes, doc updates.
11561
11562 2005-05-30  Wim Taymans  <wim@fluendo.com>
11563
11564         * gst/gst.c: (gst_init_get_popt_table), (init_post),
11565         (init_popt_callback):
11566         Remove cpu-opt flag.
11567
11568 2005-05-30  Wim Taymans  <wim@fluendo.com>
11569
11570         * gst/gstbuffer.c: (gst_subbuffer_finalize),
11571         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
11572         * gst/gstbuffer.h:
11573         Avoid typechecking in places where not needed.
11574         Added accessor for malloc_data.
11575
11576 2005-05-30  Wim Taymans  <wim@fluendo.com>
11577
11578         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
11579         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
11580         (gst_pad_configure_sink), (gst_pad_configure_src),
11581         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
11582         (gst_pad_start_task):
11583         Propagate errors from _set_caps() in configure_src/sink
11584         functions instead of returning TRUE.
11585         FLUSH events can travel up and downstream
11586
11587
11588 2005-05-30  Wim Taymans  <wim@fluendo.com>
11589
11590         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
11591         (gst_basesink_activate):
11592         Handle EOS in preroll.
11593
11594 2005-05-30  Wim Taymans  <wim@fluendo.com>
11595
11596         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
11597         (gst_queue_loop), (gst_queue_handle_src_event):
11598         Remove old pieces of code
11599         Flushing the queue in an upstream event is a very bad idea.
11600
11601 2005-05-26  Andy Wingo  <wingo@pobox.com>
11602
11603         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
11604         gst_value_set_mini_object so as to add a ref on the object (which
11605         will be removed when the value is unset).
11606
11607         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
11608         arg type in ::handoff.
11609
11610         * gst/gstelement.c (gst_element_change_state): Also deactivate
11611         pads in READY->NULL, just in case the element didn't make it to
11612         PAUSED. Wingo tested, Wim approved.
11613
11614 2005-05-26  Wim Taymans  <wim@fluendo.com>
11615
11616         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
11617         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
11618         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
11619         A flushing pad cannot be used to alloc_buffer from.
11620
11621 2005-05-26  Wim Taymans  <wim@fluendo.com>
11622
11623         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
11624         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
11625         (gst_bus_source_dispatch), (gst_bus_source_finalize),
11626         (gst_bus_create_watch), (gst_bus_add_watch_full):
11627         * gst/gstbus.h:
11628         Implement a real GSource and use g_main_context_wakeup() to
11629         signal new messages instead of the socketpair.
11630
11631 2005-05-25  Wim Taymans  <wim@fluendo.com>
11632
11633         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
11634         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
11635         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
11636         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
11637         (gst_pad_send_event), (gst_pad_start_task):
11638         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
11639         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
11640         (gst_queue_sink_activate), (gst_queue_src_activate),
11641         (gst_queue_change_state):
11642         * gst/gstqueue.h:
11643         Fix state changes for non sinks. We now change sinks, then elements
11644         with unconnected srcpads, then the rest.
11645         More efficient queue unlocking in flush and state changes.
11646         Set the pad activate mode even if it does not have an activate
11647         function.
11648
11649 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
11650
11651         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
11652           Don't go in pull mode for non-seekable sources.
11653         * gst/elements/gsttypefindelement.h:
11654         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
11655         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
11656         (free_entry), (stop_typefinding),
11657         (gst_type_find_element_handle_event), (find_peek),
11658         (gst_type_find_element_chain), (do_pull_typefind),
11659         (gst_type_find_element_change_state):
11660           Allow typefinding (w/o seeking) in push-mode, simplified version
11661           of what was in 0.8.
11662         * gst/gstutils.c: (gst_buffer_join):
11663         * gst/gstutils.h:
11664           gst_buffer_join() from 0.8.
11665
11666 2005-05-25  Wim Taymans  <wim@fluendo.com>
11667
11668         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
11669         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
11670         (gst_pad_send_event), (gst_pad_start_task):
11671         Disable attempt at mode switching until it is figured out.
11672
11673 2005-05-25  Wim Taymans  <wim@fluendo.com>
11674
11675         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
11676         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
11677         (gst_basesink_finish_preroll), (gst_basesink_chain),
11678         (gst_basesink_loop), (gst_basesink_activate),
11679         (gst_basesink_change_state):
11680         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
11681         (gst_basesrc_get_range), (gst_basesrc_loop),
11682         (gst_basesrc_activate):
11683         * gst/elements/gsttee.c: (gst_tee_sink_activate):
11684         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
11685         (gst_real_pad_init), (gst_real_pad_set_property),
11686         (gst_real_pad_get_property), (gst_pad_set_active),
11687         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
11688         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
11689         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
11690         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
11691         (gst_pad_event_default_dispatch), (gst_pad_event_default),
11692         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
11693         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
11694         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
11695         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
11696         (gst_pad_stop_task):
11697         * gst/gstpad.h:
11698         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
11699         (gst_queue_loop), (gst_queue_src_activate):
11700         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
11701         (gst_task_get_state):
11702         * gst/gsttask.h:
11703         * gst/schedulers/threadscheduler.c:
11704         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
11705         Implement gst_pad_pause/start/stop_task(), take STREAM lock
11706         in task function.
11707         Remove ACTIVE pad flag, use FLUSHING everywhere
11708         Added _pad_chain(), _pad_get_range() to call chain/getrange 
11709         functions.
11710         Add locks around IS_FLUSHING when reading.
11711         Take STREAM lock in chain(), get_range() functions so plugins
11712         don't need to take it anymore.
11713         
11714
11715
11716 2005-05-25  Wim Taymans  <wim@fluendo.com>
11717
11718         * tools/gst-launch.c: (event_loop):
11719         Unref message after using its contents instead of
11720         before.
11721
11722 2005-05-24  Wim Taymans  <wim@fluendo.com>
11723
11724         * docs/design/draft-ghostpads.txt:
11725         * docs/design/draft-push-pull.txt:
11726         * docs/design/draft-query.txt:
11727         * docs/design/part-overview.txt:
11728         Docs updates, added general overview doc.
11729
11730 2005-05-21  David Schleef  <ds@schleef.org>
11731
11732         * docs/gst/tmpl/old/GstBin.sgml:
11733         * docs/gst/tmpl/old/GstBuffer.sgml:
11734         * docs/gst/tmpl/old/GstCaps.sgml:
11735         * docs/gst/tmpl/old/GstClock.sgml:
11736         * docs/gst/tmpl/old/GstCompat.sgml:
11737         * docs/gst/tmpl/old/GstData.sgml:
11738         * docs/gst/tmpl/old/GstElement.sgml:
11739         * docs/gst/tmpl/old/GstEvent.sgml:
11740         * docs/gst/tmpl/old/GstIndex.sgml:
11741         * docs/gst/tmpl/old/GstStructure.sgml:
11742         * docs/gst/tmpl/old/GstTag.sgml:
11743         * docs/gst/tmpl/old/cothreads.sgml:
11744         * docs/gst/tmpl/old/cothreads_compat.sgml:
11745         * docs/gst/tmpl/old/gettext.sgml:
11746         * docs/gst/tmpl/old/gobject2gtk.sgml:
11747         * docs/gst/tmpl/old/grammar.tab.sgml:
11748         * docs/gst/tmpl/old/gst-i18n-app.sgml:
11749         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
11750         * docs/gst/tmpl/old/gst_private.sgml:
11751         * docs/gst/tmpl/old/gstaggregator.sgml:
11752         * docs/gst/tmpl/old/gstarch.sgml:
11753         * docs/gst/tmpl/old/gstatomic_impl.sgml:
11754         * docs/gst/tmpl/old/gstbufferstore.sgml:
11755         * docs/gst/tmpl/old/gstdata_private.sgml:
11756         * docs/gst/tmpl/old/gstdisksink.sgml:
11757         * docs/gst/tmpl/old/gstdisksrc.sgml:
11758         * docs/gst/tmpl/old/gstelementfactory.sgml:
11759         * docs/gst/tmpl/old/gstextratypes.sgml:
11760         * docs/gst/tmpl/old/gstfakesink.sgml:
11761         * docs/gst/tmpl/old/gstfakesrc.sgml:
11762         * docs/gst/tmpl/old/gstfdsink.sgml:
11763         * docs/gst/tmpl/old/gstfdsrc.sgml:
11764         * docs/gst/tmpl/old/gstfilesink.sgml:
11765         * docs/gst/tmpl/old/gstfilesrc.sgml:
11766         * docs/gst/tmpl/old/gsthttpsrc.sgml:
11767         * docs/gst/tmpl/old/gstidentity.sgml:
11768         * docs/gst/tmpl/old/gstindexfactory.sgml:
11769         * docs/gst/tmpl/old/gstmarshal.sgml:
11770         * docs/gst/tmpl/old/gstmd5sink.sgml:
11771         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
11772         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
11773         * docs/gst/tmpl/old/gstpadtemplate.sgml:
11774         * docs/gst/tmpl/old/gstpipefilter.sgml:
11775         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
11776         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
11777         * docs/gst/tmpl/old/gstshaper.sgml:
11778         * docs/gst/tmpl/old/gstspider.sgml:
11779         * docs/gst/tmpl/old/gstspideridentity.sgml:
11780         * docs/gst/tmpl/old/gststatistics.sgml:
11781         * docs/gst/tmpl/old/gsttee.sgml:
11782         * docs/gst/tmpl/old/gsttimecache.sgml:
11783         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
11784         * docs/gst/tmpl/old/gstxmlregistry.sgml:
11785         * docs/gst/tmpl/old/gthread-cothreads.sgml:
11786         * docs/gst/tmpl/old/types.sgml:
11787           I didn't intend to add these or check them in.
11788
11789 2005-05-19  David Schleef  <ds@schleef.org>
11790
11791         * configure.ac: Use -no-common everywhere.  In a sane world, it
11792           would be the default in libtool, because without it, you can't
11793           build DLLs on Windows.
11794         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
11795         * docs/gst/gstreamer-sections.txt:
11796         * docs/gst/tmpl/gstcpu.sgml:
11797         * docs/gst/tmpl/gstdata.sgml:
11798         * docs/gst/tmpl/gstthread.sgml:
11799
11800 2005-05-19  David Schleef  <ds@schleef.org>
11801
11802         * gst/gstminiobject.c: (gst_value_set_mini_object),
11803         (gst_value_take_mini_object), (gst_value_get_mini_object):
11804         * gst/gstminiobject.h: Add GValue set/get functions.
11805
11806 2005-05-19  Wim Taymans  <wim@fluendo.com>
11807
11808         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
11809         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
11810         (gst_subbuffer_init), (gst_buffer_is_span_fast):
11811         * gst/gstbuffer.h:
11812         * gst/gstbus.c: (gst_bus_post):
11813         * gst/gstelement.c: (gst_element_get_random_pad):
11814         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
11815         Make subbufer unref the parent in finalize.
11816         some more debugging info.
11817
11818
11819 2005-05-19  Wim Taymans  <wim@fluendo.com>
11820
11821         * gst/base/gstbasesink.c: (gst_basesink_class_init),
11822         (gst_basesink_init), (gst_basesink_finalize),
11823         (gst_basesink_activate), (gst_basesink_change_state):
11824         Don't free preroll queue too early.
11825
11826 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
11827
11828         * gst/Makefile.am:
11829         * gst/ROADMAP:
11830           Hi, I'm outdated. Please shoot me.
11831
11832 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
11833
11834         * gst/gstpipeline.c: (gst_pipeline_send_event):
11835           Do not access variables after they have been deleted.
11836
11837 2005-05-19  Wim Taymans  <wim@fluendo.com>
11838
11839         * tools/gst-inspect.c: (print_plugin_features):
11840         A plugin feature does unfortunatly not use the
11841         object name yet...
11842
11843 2005-05-18  Wim Taymans  <wim@fluendo.com>
11844
11845         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
11846         Port _span() functions to new subbuffers.
11847
11848 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
11849
11850         * gst/gstbin.c: (gst_bin_add_func):
11851           Fix clock settery in bins when adding kids after the clock has
11852           been selected.
11853
11854 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
11855
11856         * gst/elements/gstidentity.c: (gst_identity_class_init):
11857           Workaround until signals support GstMiniObject.
11858
11859 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
11860
11861         * gst/gstbuffer.c:
11862         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
11863
11864 2005-05-18  Wim Taymans  <wim@fluendo.com>
11865
11866         * gst/base/Makefile.am:
11867         * gst/base/gstadapter.c: (gst_adapter_base_init),
11868         (gst_adapter_class_init), (gst_adapter_init),
11869         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
11870         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
11871         (gst_adapter_flush), (gst_adapter_available),
11872         (gst_adapter_available_fast):
11873         * gst/base/gstadapter.h:
11874         Ported and added adapter to the base classes.
11875
11876 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11877
11878         * gst/gst.c:
11879         * gst/gstmessage.c:
11880           Make sure the class is reffed/unreffed once before threads can be
11881           used.  Fixes #304551.
11882
11883 2005-05-17  Wim Taymans  <wim@fluendo.com>
11884
11885         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
11886         (gst_basesink_chain_unlocked), (gst_basesink_activate):
11887         * gst/gstminiobject.c: (gst_mini_object_get_type),
11888         (gst_mini_object_free):
11889         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
11890         (gst_pad_push), (gst_pad_push_event):
11891         * gst/gstqueue.c: (gst_queue_change_state):
11892         Don't queue buffers in basesink when we are flushing.
11893         Unref buffer when flushing in basesink.
11894         Flush queue when going to READY
11895         Unref buffer when _push() returns an error.
11896         Don't free MiniObject instance when refcount is incremented
11897         in _finalize() so that we can recover objects.
11898
11899 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11900
11901         * docs/manual/advanced-schedulers.xml:
11902         * docs/manual/appendix-checklist.xml:
11903         * docs/pwg/advanced-clock.xml:
11904         * docs/pwg/advanced-interfaces.xml:
11905         * docs/pwg/advanced-request.xml:
11906         * docs/pwg/advanced-types.xml:
11907         * docs/pwg/intro-preface.xml:
11908         * examples/plugins/example.c: (gst_example_get_type),
11909         (gst_example_class_init), (gst_example_chain),
11910         (gst_example_set_property), (gst_example_get_property),
11911         (gst_example_change_state), (plugin_init):
11912         * examples/plugins/example.h:
11913           small doc fixes
11914
11915 2005-05-17  Wim Taymans  <wim@fluendo.com>
11916
11917         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
11918         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
11919         * gst/gstqueue.c: (gst_queue_change_state):
11920         Clear queue when going to READY.
11921         Remove IN_SETCAPS flag too.
11922
11923 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
11924
11925         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
11926           Remove implicit cast from gboolean to GstElementStateReturn;
11927           make sure we still return failure in paused => ready case if
11928           the parent class fails to change state and our own stop 
11929           vfunc succeeds.
11930
11931 2005-05-17  Wim Taymans  <wim@fluendo.com>
11932
11933         * tools/gst-launch.c: (event_loop):
11934         Message was unreffed too soon.
11935
11936 2005-05-16  Andy Wingo  <wingo@pobox.com>
11937
11938         * gst/gstbin.c (sink_iterator_filter): Err... um...
11939
11940         * check/gst/gstbin.c (test_ghost_pads): New test for the
11941         ghosting-if-elements-not-in-same-bin behavior.
11942
11943 2005-05-16  David Schleef  <ds@schleef.org>
11944
11945         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
11946         accessing refcount directly.
11947
11948 2005-05-15  David Schleef  <ds@schleef.org>
11949
11950         * check/Makefile.am: remove GstData checks
11951         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
11952         * gst/Makefile.am: add miniobject, remove data
11953         * gst/gst.h: add miniobject, remove data
11954         * gst/gstdata.c: remove
11955         * gst/gstdata.h: remove
11956         * gst/gstdata_private.h: remove
11957         * gst/gsttypes.h: remove GstEvent and GstMessage
11958         * gst/gstelement.c: (gst_element_post_message): fix for API changes
11959         * gst/gstmarshal.list: change BOXED -> OBJECT
11960
11961         Implement GstMiniObject.
11962         * gst/gstminiobject.c:
11963         * gst/gstminiobject.h:
11964
11965         Modify to be subclasses of GstMiniObject.
11966         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
11967         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
11968         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
11969         (gst_subbuffer_get_type), (gst_subbuffer_init),
11970         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
11971         (gst_buffer_span):
11972         * gst/gstbuffer.h:
11973         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
11974         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
11975         (_gst_event_copy), (gst_event_new):
11976         * gst/gstevent.h:
11977         * gst/gstmessage.c: (_gst_message_initialize),
11978         (gst_message_get_type), (gst_message_class_init),
11979         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
11980         (gst_message_new), (gst_message_new_error),
11981         (gst_message_new_warning), (gst_message_new_tag),
11982         (gst_message_new_state_changed), (gst_message_new_application):
11983         * gst/gstmessage.h:
11984         * gst/gstprobe.c: (gst_probe_perform),
11985         (gst_probe_dispatcher_dispatch):
11986         * gst/gstprobe.h:
11987         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
11988         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
11989         (_gst_query_copy), (gst_query_new):
11990
11991         Update elements for GstData -> GstMiniObject changes
11992         * gst/gstquery.h:
11993         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
11994         (gst_queue_chain), (gst_queue_loop):
11995         * gst/elements/gstbufferstore.c:
11996         (gst_buffer_store_add_buffer_func),
11997         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
11998         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
11999         (gst_fakesink_render):
12000         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
12001         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
12002         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
12003         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
12004         (gst_filesrc_create_read):
12005         * gst/elements/gstidentity.c: (gst_identity_class_init):
12006         * gst/elements/gsttypefindelement.c:
12007         (gst_type_find_element_src_event), (free_entry_buffers),
12008         (gst_type_find_element_handle_event):
12009         * libs/gst/dataprotocol/dataprotocol.c:
12010         (gst_dp_header_from_buffer):
12011         * libs/gst/dataprotocol/dataprotocol.h:
12012         * libs/gst/dataprotocol/dp-private.h:
12013
12014 2005-05-15  David Schleef  <ds@schleef.org>
12015
12016         * gst/elements/gstelements.c: Don't include headers that were
12017         just removed.
12018
12019 2005-05-15  David Schleef  <ds@schleef.org>
12020
12021         * gst/elements/Makefile.am: Remove some elements that don't
12022         need to be in the core (or even exist at all).
12023         * gst/elements/gstaggregator.c:
12024         * gst/elements/gstaggregator.h:
12025         * gst/elements/gstmd5sink.c:
12026         * gst/elements/gstmd5sink.h:
12027         * gst/elements/gstmultifilesrc.c:
12028         * gst/elements/gstmultifilesrc.h:
12029         * gst/elements/gstpipefilter.c:
12030         * gst/elements/gstpipefilter.h:
12031         * gst/elements/gstshaper.c:
12032         * gst/elements/gstshaper.h:
12033         * gst/elements/gststatistics.c:
12034         * gst/elements/gststatistics.h:
12035         * po/POTFILES.in: Remove above files.
12036
12037 2005-05-14  Andy Wingo  <wingo@pobox.com>
12038
12039         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
12040         so as to get the refs right.
12041         (sink_iterator_filter): New function, wraps bin_element_is_sink,
12042         unreffing objects that don't pass the filter.
12043
12044         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
12045         gst_element_set_bus.
12046         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
12047         normal cases, this will destroy the bus.
12048
12049         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
12050         object.
12051
12052         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
12053         has no sinks.
12054
12055 2005-05-13  Andy Wingo  <wingo@pobox.com>
12056
12057         * gst/gstutils.c (gst_element_link_pads): Instead of calling
12058         gst_pad_link, call pad_link_maybe_ghosting,
12059         (pad_link_maybe_ghosting): Links pads, making sure that the
12060         elements being linked are in the same bin.
12061         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
12062         Helpers for pad_link_maybe_ghosting.
12063
12064 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
12065
12066         * configure.ac:
12067           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
12068
12069 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
12070
12071         * docs/design/part-element-source.txt:
12072           Mention GstPushSrc
12073
12074 2005-05-12  Wim Taymans  <wim@fluendo.com>
12075
12076         * gst/base/gstbasesink.c: (gst_basesink_init),
12077         (gst_basesink_activate):
12078         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
12079         (gst_basesrc_is_seekable):
12080         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
12081         (bin_element_is_sink), (gst_bin_change_state):
12082         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
12083         * gst/gstelement.h:
12084         Identify sinks by their flag to avoid overly complicated
12085         checks (fow now).
12086         Do state changes even for elements not reachable from the
12087         sinks.
12088         BaseSink is a sink now :)
12089         Some more debugging info in the basesrc.
12090
12091
12092 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
12093
12094         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
12095           Implement _query on a bin, similar to _send_event.
12096
12097 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
12098
12099         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
12100           Discont event offset format should be GST_FORMAT_BYTES,
12101           not GST_FORMAT_TIME.
12102
12103 2005-05-12  Wim Taymans  <wim@fluendo.com>
12104
12105         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
12106         Same fix as Ronald's but without the signal. 
12107
12108 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
12109
12110         * gst/gstutils.c: (gst_element_query_position):
12111           No, an element is not a pad.
12112
12113 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
12114
12115         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
12116         (gst_bin_get_state):
12117           If a child is removed from a bin while we remove the child from
12118           the bin and while we're retrieving its state, signal this to the
12119           get_state function so we abort the wait (instead of waiting for
12120           a timeout) and can immediately re-iterate over all other elements.
12121
12122 2005-05-12  Wim Taymans  <wim@fluendo.com>
12123
12124         * gst/base/Makefile.am:
12125         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
12126         (gst_basesrc_start):
12127         * gst/base/gstbasesrc.h:
12128         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
12129         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
12130         (gst_pushsrc_init), (gst_pushsrc_create):
12131         * gst/base/gstpushsrc.h:
12132         Added is_seekable to BaseSrc
12133         Added simple PushSrc.
12134
12135 2005-05-11  Wim Taymans  <wim@fluendo.com>
12136
12137         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
12138         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
12139         (gst_element_link_pads), (gst_element_query_position),
12140         (gst_element_query_convert), (intersect_caps_func),
12141         (gst_pad_query_position), (gst_pad_query_convert):
12142         Fix refcounting in utils function.
12143         No point in trying to activate a pad when it's added, it could
12144         be added from the state change function and then we deadlock, the
12145         element has to decide what to do.
12146
12147 2005-05-10  Andy Wingo  <wingo@pobox.com>
12148
12149         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
12150         *all* the arguments.
12151
12152         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
12153         stream lock if it's a FLUSH_DONE; normal flushes don't get the
12154         lock (according to the docs -- if this is wrong change the docs).
12155
12156         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
12157         flush messages in the NULL state.
12158
12159         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
12160         message immediately and return.
12161         (gst_bus_set_flushing): New function. If a bus is flushing, it
12162         flushes out any queued messages and immediately unrefs new
12163         messages. This is so when an element goes to NULL, all of the
12164         unhandled messages coming from it can be freed, and their
12165         references to the element dropped. In other words: message source
12166         ref considered harmful :P
12167
12168         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
12169         we're finished with it.
12170
12171         * gst/gstmessage.c (gst_message_new_state_changed): 
12172
12173 2005-05-10  Wim Taymans  <wim@fluendo.com>
12174
12175         * gst/gstvalue.c: (gst_value_compare_flags),
12176         (gst_value_serialize_flags), (gst_value_deserialize_flags),
12177         (_gst_value_initialize):
12178         Added flags serialize/deserialize/compare code.
12179
12180 2005-05-09  Andy Wingo  <wingo@pobox.com>
12181
12182         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
12183         Intersect the peer's caps with our caps.
12184
12185 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
12186
12187         * gst/base/gsttypefindhelper.c: (helper_find_peek):
12188         * gst/elements/gsttypefindelement.c: (find_peek):
12189           Handle negative offsets better. Fixes decodebin.
12190
12191 2005-05-09  Wim Taymans  <wim@fluendo.com>
12192
12193         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
12194         (gst_base_transform_event):
12195         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
12196         Implement accept_caps.
12197         Fix silly lock/unlock mismatch in base class.
12198
12199 2005-05-09  Wim Taymans  <wim@fluendo.com>
12200
12201         * docs/design/draft-push-pull.txt:
12202         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
12203         * gst/elements/gstfilesink.c: (gst_filesink_init),
12204         (gst_filesink_query):
12205         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
12206         (gst_type_find_handle_src_query), (find_element_get_length):
12207         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
12208         * gst/gstelement.h:
12209         * gst/gstmessage.c:
12210         * gst/gstmessage.h:
12211         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
12212         (gst_real_pad_get_caps_unlocked),
12213         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
12214         (gst_pad_event_default_dispatch), (gst_pad_event_default),
12215         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
12216         (gst_real_pad_dispose), (gst_real_pad_finalize),
12217         (gst_pad_load_and_link), (gst_pad_save_thyself),
12218         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
12219         (gst_pad_check_pull_range), (gst_pad_pull_range),
12220         (gst_pad_template_get_type), (gst_pad_template_class_init),
12221         (gst_pad_template_init), (gst_pad_template_dispose),
12222         (name_is_valid), (gst_static_pad_template_get),
12223         (gst_pad_template_new), (gst_static_pad_template_get_caps),
12224         (gst_pad_template_get_caps), (gst_pad_set_element_private),
12225         (gst_pad_get_element_private), (gst_pad_start_task),
12226         (gst_pad_pause_task), (gst_pad_stop_task),
12227         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
12228         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
12229         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
12230         (gst_ghost_pad_new):
12231         * gst/gstpad.h:
12232         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
12233         (gst_query_new_position), (gst_query_set_position),
12234         (gst_query_parse_position), (gst_query_new_convert),
12235         (gst_query_set_convert), (gst_query_parse_convert):
12236         * gst/gstquery.h:
12237         * gst/gstqueryutils.c:
12238         * gst/gstqueryutils.h:
12239         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12240         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
12241         (gst_queue_handle_src_query):
12242         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
12243         (gst_element_query_position), (gst_element_query_convert),
12244         (intersect_caps_func), (gst_pad_query_position),
12245         (gst_pad_query_convert):
12246         * gst/gstutils.h:
12247         * tools/gst-inspect.c: (print_pad_info):
12248         * tools/gst-xmlinspect.c: (print_element_info):
12249         Remove old query functions. Ported old code.
12250         Added position/convert helper functions to gstutils.
12251         Reordered gstpad.c code, grouping relevant things.
12252         Remove gst_message_new(), always need to speficy a specific
12253         message.
12254
12255
12256 2005-05-09  Andy Wingo  <wingo@pobox.com>
12257
12258         * gst/gstiterator.h: Add some includes.
12259
12260         * gst/gstqueryutils.h: Include more headers.
12261
12262         * gst/gstpad.h:
12263         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
12264         some uses of gst_pad_query.
12265
12266         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
12267         NULL out parameters.
12268         (gst_query_new_position): New proc, allocates a new position
12269         query.
12270
12271         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
12272         gstqueryutils.c to the build.
12273
12274         * gst/gststructure.c (gst_structure_set_valist): Implement with
12275         the generic G_VALUE_COLLECT.
12276         
12277 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
12278
12279         * gst/Makefile.am: (gst_headers):
12280         Added gstqueryutils.h to the list of headers to install, that was
12281         a 'nachty' move wingo :)
12282
12283 2005-05-06  Andy Wingo  <wingo@pobox.com>
12284
12285         * gst/gstquery.h
12286         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
12287         GstData, init a memchunk.
12288         (standard_definitions): Add a few query types, deprecate a few.
12289         (gst_query_get_type): New proc.
12290         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
12291         implementation.
12292         (gst_query_new_application, gst_query_get_structure): New public
12293         procs.
12294
12295         * docs/design/draft-query.txt: Removed LINKS from the query types,
12296         because all the rest can be dispatched to other pads -- seemed
12297         ugly to have a query that couldn't be dispatched. internal_links
12298         is fine as a pad method.
12299
12300         * gst/gstpad.h: Add query2 as a pad method, add the new functions
12301         in gstpad.c, but maintain binary compatibility for the moment.
12302         Will fix before 0.9 is out.
12303
12304         * gst/gstqueryutils.c: 
12305         * gst/gstqueryutils.h: New files, implement 3 methods for each
12306         query type: parse_query, parse_response, and set. Probably need an
12307         allocator as well.
12308
12309         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
12310
12311         * gst/elements/gstfilesink.c (gst_filesink_query2):
12312         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
12313         query_types, and formats methods.
12314
12315         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
12316         (gst_pad_set_query2_function): New functions.
12317         (gst_real_pad_init): Set query2_default as the default query2
12318         function. Basically just dispatches to internally linked pads.
12319
12320         Needs review!
12321         
12322         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
12323         without using the atomic operations. Only one thread can possibly
12324         be accessing the data at this point. Changed so as to avoid
12325         gst_atomic operations.
12326
12327 2005-05-06  Wim Taymans  <wim@fluendo.com>
12328
12329         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
12330         Also set caps if we use the fallback buffer alloc.
12331
12332 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
12333
12334         * docs/gst/Makefile.am:
12335         * docs/gst/gstreamer-docs.sgml:
12336         * docs/gst/gstreamer-sections.txt:
12337         * docs/gst/tmpl/gstatomic.sgml:
12338         * docs/gst/tmpl/gstmemchunk.sgml:
12339         * testsuite/elements/struct_i386.h:
12340         * win32/GStreamer.vcproj:
12341         * win32/Makefile:
12342           Purge GstAtomic stuff from docs and win32 makefiles as well
12343
12344 2005-05-06  Wim Taymans  <wim@fluendo.com>
12345
12346         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
12347         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
12348         * gst/gstpad.c: (gst_pad_peer_get_caps):
12349         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12350         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
12351         (gst_queue_src_activate), (gst_queue_change_state):
12352         * gst/gstqueue.h:
12353         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
12354         (intersect_caps_func):
12355         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
12356         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
12357         Some fixes for the peer_get_caps() change.
12358
12359 2005-05-06  Wim Taymans  <wim@fluendo.com>
12360
12361         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
12362         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
12363         (gst_basesink_activate):
12364         Actually do something with error codes returned from the push
12365         functions.
12366
12367 2005-05-06  Wim Taymans  <wim@fluendo.com>
12368
12369         * docs/design/part-element-sink.txt:
12370         * docs/design/part-element-source.txt:
12371         * gst/base/gstbasesink.c: (gst_basesink_class_init),
12372         (gst_basesink_event), (gst_basesink_activate):
12373         * gst/base/gstbasesink.h:
12374         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
12375         (gst_basesrc_activate):
12376         * gst/base/gstbasesrc.h:
12377         * gst/gstelement.c: (gst_element_pads_activate):
12378         Some more documentation.
12379         Fixed scheduling decision in _pads_activate().
12380
12381 2005-05-05  Andy Wingo  <wingo@pobox.com>
12382
12383         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
12384         the test suite.
12385
12386 2005-05-05  Wim Taymans  <wim@fluendo.com>
12387
12388         * gst/base/Makefile.am:
12389         * gst/base/gstbasesink.h:
12390         * gst/base/gstbasesrc.c: (gst_basesrc_init),
12391         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
12392         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
12393         (gst_collectpads_class_init), (gst_collectpads_init),
12394         (gst_collectpads_finalize), (gst_collectpads_new),
12395         (gst_collectpads_set_function), (gst_collectpads_add_pad),
12396         (find_pad), (gst_collectpads_remove_pad),
12397         (gst_collectpads_is_active), (gst_collectpads_collect),
12398         (gst_collectpads_collect_range), (gst_collectpads_start),
12399         (gst_collectpads_stop), (gst_collectpads_peek),
12400         (gst_collectpads_pop), (gst_collectpads_available),
12401         (gst_collectpads_read), (gst_collectpads_flush),
12402         (gst_collectpads_chain):
12403         * gst/base/gstcollectpads.h:
12404         * gst/elements/Makefile.am:
12405         * gst/elements/gstelements.c:
12406         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
12407         (gst_fakesink_get_times), (gst_fakesink_event),
12408         (gst_fakesink_preroll), (gst_fakesink_render):
12409         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
12410         (gst_filesink_init), (gst_filesink_set_location),
12411         (gst_filesink_open_file), (gst_filesink_close_file),
12412         (gst_filesink_pad_query), (gst_filesink_event),
12413         (gst_filesink_render), (gst_filesink_change_state):
12414         * gst/elements/gstfilesink.h:
12415         Added object to help in making collect pad based elements.
12416         Ported filesink.
12417         Make event function in sink baseclass return gboolean.
12418
12419 2005-05-05  Wim Taymans  <wim@fluendo.com>
12420
12421         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
12422         (gst_bin_get_by_name):
12423         * gst/gstbuffer.h:
12424         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
12425         (gst_clock_finalize):
12426         * gst/gstdata.c: (gst_data_replace):
12427         * gst/gstdata.h:
12428         * gst/gstelement.c: (gst_element_request_pad),
12429         (gst_element_pads_activate):
12430         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
12431         (gst_object_unref):
12432         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12433         (gst_pad_set_checkgetrange_function),
12434         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
12435         (gst_pad_check_pull_range), (gst_pad_pull_range),
12436         (gst_static_pad_template_get_caps), (gst_pad_start_task),
12437         (gst_pad_pause_task), (gst_pad_stop_task):
12438         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
12439         (gst_element_request_pad), (gst_pad_proxy_getcaps):
12440         Fix name lookup in GstBin.
12441         Added _data_replace() function and _buffer_replace()
12442         Use finalize method to clean up clock.
12443         Fix refcounting on request pads.
12444         Fix pad schedule mode error.
12445         Some more object refcounting debug info,
12446
12447
12448 2005-05-04  Andy Wingo <wingo@pobox.com>
12449
12450         * check/Makefile.am:
12451         * docs/gst/tmpl/gstatomic.sgml:
12452         * docs/gst/tmpl/gstplugin.sgml:
12453         * gst/base/gstbasesink.c: (gst_basesink_activate):
12454         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
12455         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
12456         (gst_basesrc_query), (gst_basesrc_set_property),
12457         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
12458         (gst_basesrc_activate):
12459         * gst/base/gstbasesrc.h:
12460         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
12461         (gst_base_transform_src_activate):
12462         * gst/elements/gstelements.c:
12463         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
12464         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
12465         * gst/elements/gsttee.c: (gst_tee_sink_activate):
12466         * gst/elements/gsttypefindelement.c: (find_element_get_length),
12467         (gst_type_find_element_checkgetrange),
12468         (gst_type_find_element_activate):
12469         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
12470         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
12471         (gst_caps_load_thyself):
12472         * gst/gstelement.c: (gst_element_pads_activate),
12473         (gst_element_save_thyself), (gst_element_restore_thyself):
12474         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
12475         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
12476         * gst/gstpad.h:
12477         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
12478         (gst_xml_parse_file), (gst_xml_parse_memory),
12479         (gst_xml_get_element), (gst_xml_make_element):
12480         * gst/indexers/gstfileindex.c: (gst_file_index_load),
12481         (_file_index_id_save_xml), (gst_file_index_commit):
12482         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
12483         (read_enum), (load_pad_template), (load_feature), (load_plugin),
12484         (load_paths):
12485         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
12486         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
12487         * tools/gst-complete.c: (main):
12488         * tools/gst-compprep.c: (main):
12489         * tools/gst-inspect.c: (print_element_properties_info):
12490         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
12491         * tools/gst-xmlinspect.c: (print_element_properties):
12492         GCC 4 fixen.
12493         
12494 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12495
12496         * gst/gstplugin.c: (gst_plugin_check_module),
12497         (gst_plugin_check_file), (gst_plugin_load_file):
12498             apply patch from #172526 to make register work on MacOSX
12499
12500 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12501
12502         * docs/gst/tmpl/gstconfig.sgml:
12503         * gst/gstconfig.h.in:
12504           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
12505         * testsuite/debug/printf_extension.c: (main):
12506           Do not use GST_PTR_FORMAT on pointers to types with
12507           sizeof < sizeof(gpointer).  Fixes test on 64-bit
12508         * testsuite/elements/property.h:
12509           use correct printf format
12510
12511 2005-05-02  Wim Taymans  <wim@fluendo.com>
12512
12513         * docs/design/draft-push-pull.txt:
12514         * docs/design/draft-query.txt:
12515         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
12516         (gst_basesrc_start):
12517         Added draft for new query API.
12518         Added draft for better selecting scheduling methods.
12519         Make basesrc ignore length if the subclass does not support
12520         it.
12521
12522 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12523
12524         * gst/Makefile.am:
12525           possible fixes for automake-1.5 - _LIBADD is reserved
12526
12527 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12528
12529         * docs/faq/Makefile.am:
12530         * docs/manual/Makefile.am:
12531         * docs/manuals.mak:
12532         * docs/pwg/Makefile.am:
12533         * gst/Makefile.am:
12534           possible fixes for automake-1.5
12535
12536 2005-04-28  Wim Taymans  <wim@fluendo.com>
12537
12538         * gst/base/gstbasesink.c: (gst_basesink_base_init),
12539         (gst_basesink_pad_getcaps), (gst_basesink_init),
12540         (gst_basesink_do_sync):
12541         * gst/gstclock.c: (gst_clock_entry_new):
12542         * gst/gstevent.c: (gst_event_discont_get_value):
12543         * gst/gstpipeline.c: (pipeline_bus_handler),
12544         (gst_pipeline_change_state):
12545         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
12546         Better debugging of clocking info.
12547         Allow NULL values when getting discont values.
12548
12549 2005-04-27  Wim Taymans  <wim@fluendo.com>
12550
12551         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
12552         * check/gst/gstpad.c: (gst_pad_suite):
12553         Increase timeout for checks.
12554
12555 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12556
12557         * check/Makefile.am:
12558           fix the broken rule for cleanup.  Apparently this rule is
12559           only needed on FC2, so maybe this warrants further autotool
12560           inspection.
12561
12562 2005-04-26  Wim Taymans  <wim@fluendo.com>
12563
12564         * gst/gsttrashstack.h:
12565         Ooohh. a nasty one! After having a failed pop() from the stack,
12566         it's possible that the stack is empty. In that case, don't
12567         follow the NULL pointer.
12568
12569 2005-04-25  Wim Taymans  <wim@fluendo.com>
12570
12571         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12572         (gst_pad_set_checkgetrange_function),
12573         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
12574         (gst_pad_check_pull_range), (gst_pad_pull_range),
12575         (gst_static_pad_template_get_caps), (gst_pad_start_task),
12576         (gst_pad_pause_task), (gst_pad_stop_task):
12577         * gst/gstplugin.c: (gst_plugin_load):
12578         * gst/gstplugin.h:
12579         Remove gst_library_load as it does more harm than good with
12580         the new g_module flags.
12581         Revert bogus caps template check in pad linking, pad caps
12582         are important when linking not the template, which is more
12583         general than the current caps.
12584
12585 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
12586
12587         * gst/autoplug/.cvsignore:
12588         * gst/autoplug/Makefile.am:
12589         * gst/autoplug/gstsearchfuncs.c:
12590         * gst/autoplug/gstsearchfuncs.h:
12591         * gst/autoplug/gstspider.c:
12592         * gst/autoplug/gstspider.h:
12593         * gst/autoplug/gstspideridentity.c:
12594         * gst/autoplug/gstspideridentity.h:
12595         * gst/autoplug/spidertest.c:
12596           Die, spider, die.
12597
12598 2005-04-25  Wim Taymans  <wim@fluendo.com>
12599
12600         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12601         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
12602         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
12603         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
12604         * gst/gstpad.h:
12605         Added stubs for unimplemented functions. 
12606
12607 2005-04-24  David Schleef  <ds@schleef.org>
12608
12609         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
12610         please fix.
12611
12612 2005-04-24  David Schleef  <ds@schleef.org>
12613
12614         Convert everything from GstAtomicInt to g_atomic_int_*, and
12615         remove gstatomic.
12616         * gst/Makefile.am:
12617         * gst/gstatomic.c:
12618         * gst/gstatomic.h:
12619         * gst/gstatomic_impl.h:
12620         * gst/gstbuffer.c:
12621         * gst/gstcaps.c:
12622         * gst/gstcaps.h:
12623         * gst/gstclock.c:
12624         * gst/gstclock.h:
12625         * gst/gstdata.c:
12626         * gst/gstdata.h:
12627         * gst/gstdata_private.h:
12628         * gst/gstevent.c:
12629         * gst/gstinfo.c:
12630         * gst/gstinfo.h:
12631         * gst/gstmessage.c:
12632         * gst/gstobject.c:
12633         * gst/gstobject.h:
12634         * gst/gststructure.c:
12635         * gst/gststructure.h:
12636         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
12637         * gst/gstutils.h:
12638
12639 2005-04-24  David Schleef  <ds@schleef.org>
12640
12641         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
12642         make the regressions tests work.  Remove some code that is no
12643         longer true.
12644         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
12645         Disable warning for pads without templates.
12646
12647 2005-04-24  David Schleef  <ds@schleef.org>
12648
12649         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
12650         functions that handle filtered links.
12651         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
12652         removed functions.
12653         * gst/gstutils.c: Fix/remove utility functions that handle
12654         filtered caps.
12655         * gst/gstutils.h:
12656         * gst/gstvalue.c: Add serialization/deserialization of caps
12657         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
12658         requires fixing so that the filter caps notation creates
12659         a capsfilter element and sets the filter_caps property.  I
12660         think everyone probably wants to keep the shorthand notation.
12661         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
12662         * docs/gst/tmpl/gstpad.sgml:
12663
12664         * gst/elements/gstelements.c: Register capsfilter element.
12665         * gst/Makefile.am: fix spacing
12666         * docs/random/ds/0.9-suggested-changes: random
12667
12668 2005-04-23  David Schleef  <ds@schleef.org>
12669
12670         * gst/elements/Makefile.am:
12671         * gst/elements/gstcapsfilter.c: New element that acts like an
12672         identity, but filters caps.  Will eventually replace filtered
12673         caps in pad linking.
12674         * gst/gstutils.c: (gst_element_create_all_pads): New function
12675         to create all the ALWAYS pads that are registered with an
12676         element class.  This functionality should eventually be
12677         merged in with GstElement initialization.
12678         * gst/gstutils.h:
12679         * testsuite/trigger/README: part of trigger test code that should
12680         have been checked in a long time ago.
12681
12682 2005-04-23  David Schleef  <ds@schleef.org>
12683
12684         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
12685         needed with new versions of libtool (nobody will confirm this),
12686         and hard to carry around.
12687         * gst/autoplug/Makefile.am:
12688         * gst/base/Makefile.am:
12689         * gst/elements/Makefile.am:
12690         * gst/indexers/Makefile.am:
12691         * gst/schedulers/Makefile.am:
12692         * libs/gst/bytestream/Makefile.am:
12693         * libs/gst/control/Makefile.am:
12694         * libs/gst/dataprotocol/Makefile.am:
12695         * libs/gst/getbits/Makefile.am:
12696
12697 2005-04-21  Wim Taymans  <wim@fluendo.com>
12698
12699         * docs/design/draft-push-pull.txt:
12700         * docs/design/part-MT-refcounting.txt:
12701         * docs/design/part-TODO.txt:
12702         * docs/design/part-caps.txt:
12703         * docs/design/part-events.txt:
12704         * docs/design/part-gstbus.txt:
12705         * docs/design/part-gstpipeline.txt:
12706         * docs/design/part-messages.txt:
12707         * docs/design/part-push-pull.txt:
12708         * docs/design/part-query.txt:
12709         Some more docs.
12710
12711 2005-04-21  Wim Taymans  <wim@fluendo.com>
12712
12713         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
12714         (gst_message_new), (gst_message_new_error),
12715         (gst_message_new_warning), (gst_message_new_tag),
12716         (gst_message_new_state_changed), (gst_message_new_application),
12717         (gst_message_get_structure):
12718         * gst/gstmessage.h:
12719         * gst/gststructure.c: (gst_structure_set_parent_refcount),
12720         (gst_structure_copy_conditional):
12721         Use parent refcount in GstMessage to ensure GstStructure
12722         consistency.
12723         Cleaned up headers a bit.
12724         
12725
12726 2005-04-20  Wim Taymans  <wim@fluendo.com>
12727
12728         * gst/base/gstbasesink.c: (gst_basesink_base_init),
12729         (gst_basesink_pad_getcaps), (gst_basesink_init),
12730         (gst_basesink_chain_unlocked):
12731         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
12732         (gst_type_find_helper):
12733         * gst/elements/gsttypefindelement.c:
12734         (gst_type_find_element_have_type), (gst_type_find_element_init),
12735         (stop_typefinding), (gst_type_find_element_handle_event),
12736         (find_suggest), (gst_type_find_element_chain),
12737         (gst_type_find_element_checkgetrange),
12738         (gst_type_find_element_getrange), (do_typefind),
12739         (gst_type_find_element_activate):
12740         * gst/gstbuffer.c: (_gst_buffer_sub_free),
12741         (gst_buffer_default_free), (gst_buffer_default_copy),
12742         (gst_buffer_set_caps):
12743         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
12744         (gst_caps_replace):
12745         * gst/gstmessage.c: (gst_message_new),
12746         (gst_message_new_state_changed):
12747         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12748         (gst_pad_set_checkgetrange_function),
12749         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
12750         (gst_pad_set_caps), (gst_pad_check_pull_range),
12751         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
12752         * gst/gstpad.h:
12753         * gst/gsttypefind.c: (gst_type_find_register):
12754         Make gst_caps_replace() work like other _replace() functions.
12755         Use _caps_replace() where possible.
12756         Make sure _message_new() initialises its field.
12757         Add gst_static_pad_template_get_caps()
12758
12759
12760 2005-04-18  Andy Wingo  <wingo@pobox.com>
12761
12762         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
12763         on the peer, not the pad. I think that was a typo. Pass an extra
12764         arg to see if random access is possible. Activate the pads as
12765         PULL_RANGE if possible.
12766
12767         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
12768
12769         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
12770         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
12771         to PROP_....
12772
12773 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
12774
12775         * docs/faq/using.xml:
12776           Add note on gstreamer-properties (#154996).
12777
12778 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
12779
12780         * docs/random/bbb/optional-properties:
12781           Some analysis on optional properties.
12782
12783 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
12784
12785         * docs/gst/tmpl/gstelementfactory.sgml:
12786         * gst/gstelement.h:
12787         * gst/gstelementfactory.c: (gst_element_factory_init),
12788         (gst_element_factory_cleanup), (gst_element_register),
12789         (__gst_element_factory_add_static_pad_template),
12790         (gst_element_factory_get_static_pad_templates),
12791         (gst_element_factory_can_src_caps),
12792         (gst_element_factory_can_sink_caps):
12793         * gst/registries/Makefile.am:
12794         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
12795         (gst_xml_registry_class_init), (gst_xml_registry_init),
12796         (gst_xml_registry_new), (gst_xml_registry_set_property),
12797         (gst_xml_registry_get_property), (get_time), (make_dir),
12798         (gst_xml_registry_get_perms_func),
12799         (plugin_times_older_than_recurse), (plugin_times_older_than),
12800         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
12801         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
12802         (add_to_char_array), (read_string), (read_uint), (read_enum),
12803         (load_pad_template), (load_feature), (load_plugin), (load_paths),
12804         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
12805         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
12806         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
12807         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
12808         (gst_xml_registry_rebuild):
12809         * gst/registries/gstlibxmlregistry.h:
12810         * tools/gst-compprep.c: (main):
12811         * tools/gst-inspect.c: (print_pad_templates_info):
12812         * tools/gst-xmlinspect.c: (print_element_info):
12813           Use libxml2 for registry parsing, use staticpadtemplates in
12814           elementfactories. Makes gst_init() +/- 10x faster.
12815
12816 2005-04-12  Wim Taymans  <wim@fluendo.com>
12817
12818         * gst/base/Makefile.am:
12819         * gst/base/gstbasesink.c: (gst_basesink_base_init),
12820         (gst_basesink_pad_getcaps), (gst_basesink_init),
12821         (gst_basesink_event), (gst_basesink_change_state):
12822         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
12823         (gst_basesrc_init), (gst_basesrc_query),
12824         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
12825         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
12826         (gst_basesrc_check_get_range), (gst_basesrc_loop),
12827         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
12828         (gst_basesrc_stop), (gst_basesrc_activate),
12829         (gst_basesrc_change_state):
12830         * gst/base/gsttypefindhelper.c: (helper_find_peek),
12831         (helper_find_suggest), (gst_type_find_helper):
12832         * gst/base/gsttypefindhelper.h:
12833         * gst/elements/Makefile.am:
12834         * gst/elements/gstelements.c:
12835         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
12836         (gst_fakesink_get_times), (gst_fakesink_event),
12837         (gst_fakesink_preroll), (gst_fakesink_render):
12838         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
12839         (gst_fakesrc_init), (gst_fakesrc_event_handler),
12840         (gst_fakesrc_get_property), (gst_fakesrc_create),
12841         (gst_fakesrc_start), (gst_fakesrc_stop):
12842         * gst/elements/gstfakesrc.h:
12843         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
12844         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
12845         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
12846         (gst_filesrc_create_read), (gst_filesrc_create),
12847         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
12848         (gst_filesrc_start):
12849         * gst/elements/gsttypefindelement.c:
12850         (gst_type_find_element_have_type), (gst_type_find_element_init),
12851         (start_typefinding), (stop_typefinding), (push_buffer_store),
12852         (gst_type_find_element_handle_event),
12853         (gst_type_find_element_chain),
12854         (gst_type_find_element_checkgetrange),
12855         (gst_type_find_element_getrange), (do_typefind),
12856         (gst_type_find_element_activate),
12857         (gst_type_find_element_change_state):
12858         * gst/elements/gsttypefindelement.h:
12859         * gst/gstpipeline.c: (pipeline_bus_handler):
12860         Added typefind helper.
12861         Small preroll fix in the base sink.
12862         Disable typefind code in basesrc.
12863         Crude port of typefindelement.
12864         Fakesrc cleanups.
12865
12866
12867 2005-04-11  Wim Taymans  <wim@fluendo.com>
12868
12869         * check/gst/gstbus.c: (gstbus_suite):
12870         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
12871         * check/gstcheck.h:
12872           Fix up the timeout so that the test does not fail.
12873
12874 2005-04-06  Wim Taymans  <wim@fluendo.com>
12875
12876         * gst/base/README:
12877         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
12878         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
12879         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
12880         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
12881         (gst_basesrc_check_get_range), (gst_basesrc_loop),
12882         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
12883         (gst_basesrc_stop), (gst_basesrc_activate),
12884         (gst_basesrc_change_state), (basesrc_find_peek),
12885         (basesrc_find_suggest), (gst_basesrc_type_find):
12886         * gst/base/gstbasesrc.h:
12887         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
12888         (gst_filesrc_class_init), (gst_filesrc_init),
12889         (gst_filesrc_finalize), (gst_filesrc_set_location),
12890         (gst_filesrc_set_property), (gst_filesrc_get_property),
12891         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
12892         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
12893         (gst_filesrc_create_read), (gst_filesrc_create),
12894         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
12895         * gst/elements/gstfilesrc.h:
12896         * gst/gstelement.c: (gst_element_get_state_func),
12897         (gst_element_lost_state), (gst_element_pads_activate):
12898         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12899         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
12900         (gst_pad_pull_range):
12901         * gst/gstpad.h:
12902         More work on the generic source base class, implement seeking,
12903         query.
12904         Make filesrc extend the base source class.
12905         Added gst_pad_set_checkgetrange_function to GstPad.
12906
12907 2005-04-06  Andy Wingo  <wingo@pobox.com>
12908
12909         * pkgconfig/gstreamer-base.pc.in:
12910         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
12911
12912         * pkgconfig/Makefile.am:
12913         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
12914
12915 2005-04-04  Wim Taymans  <wim@fluendo.com>
12916
12917         * gst/base/Makefile.am:
12918         * gst/base/README:
12919         * gst/base/gstbasesink.c: (gst_basesink_base_init),
12920         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
12921         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
12922         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
12923         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
12924         (gst_basesrc_base_init), (gst_basesrc_class_init),
12925         (gst_basesrc_init), (gst_basesrc_get_formats),
12926         (gst_basesrc_get_query_types), (gst_basesrc_query),
12927         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
12928         (gst_basesrc_set_property), (gst_basesrc_get_property),
12929         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
12930         (gst_basesrc_loop), (gst_basesrc_activate),
12931         (gst_basesrc_change_state):
12932         * gst/base/gstbasesrc.h:
12933         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
12934         (gst_fakesrc_class_init), (gst_fakesrc_init),
12935         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
12936         (gst_fakesrc_get_property), (gst_fakesrc_create):
12937         * gst/elements/gstfakesrc.h:
12938         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
12939         (gst_filesrc_open_file), (gst_filesrc_loop),
12940         (gst_filesrc_activate), (filesrc_find_peek),
12941         (gst_filesrc_type_find):
12942         Made base source class, make fakesrc extend it.
12943         Add comments to basesink class.
12944         Some filesrc cleanup.
12945
12946 2005-03-31  David Schleef  <ds@schleef.org>
12947
12948         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
12949         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
12950         expected to link against libgstreamer.
12951         * gst/base/Makefile.am: link against libgstreamer
12952         * gst/elements/Makefile.am: same
12953
12954 2005-03-31  Andy Wingo  <wingo@pobox.com>
12955
12956         * tests/instantiate/Makefile.am:
12957         * tests/instantiate/caps.c: Add test to test speed of caps copy
12958         and free.
12959
12960         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
12961         GMemChunk to be fair.
12962
12963         * gst/gsttrashstack.h: Remove warning about using the fallback
12964         trash stack implementation, it's still faster than malloc.
12965
12966 2005-03-30  Andy Wingo  <wingo@pobox.com>
12967
12968         * tests/complexity.c: Add a copyright.
12969
12970 2005-03-31  Wim Taymans  <wim@fluendo.com>
12971
12972         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
12973         (gst_base_transform_class_init), (gst_base_transform_init),
12974         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
12975         (gst_base_transform_get_property),
12976         (gst_base_transform_sink_activate),
12977         (gst_base_transform_src_activate),
12978         (gst_base_transform_change_state):
12979         * gst/base/gstbasetransform.h:
12980         * gst/elements/gstidentity.c: (gst_identity_class_init),
12981         (gst_identity_event), (gst_identity_check_perfect),
12982         (gst_identity_transform), (gst_identity_start),
12983         (gst_identity_stop):
12984         Added start/stop methods to transform base class so subclasses 
12985         don't need to deal with state changes even.
12986
12987 2005-03-31  Wim Taymans  <wim@fluendo.com>
12988
12989         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
12990         (gst_event_new_discontinuous), (gst_event_discont_get_value):
12991         * gst/gstevent.h:
12992         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
12993         (gst_pad_pull_range):
12994         Added rate to the discont event to prepare for variable speed
12995         and reverse playback.
12996
12997 2005-03-29  David Schleef  <ds@schleef.org>
12998
12999         * configure.ac:
13000         * testsuite/trigger/Makefile.am:
13001         * testsuite/trigger/trigger.c: A little example program to show
13002         how trigger-based elements can work.
13003
13004 2005-03-29  Wim Taymans  <wim@fluendo.com>
13005
13006         * gst/base/Makefile.am:
13007         * gst/base/README:
13008         * gst/base/gstbasesink.c: (gst_basesink_get_type),
13009         (gst_basesink_base_init), (gst_basesink_class_init),
13010         (gst_basesink_pad_getcaps), (gst_basesink_init),
13011         (gst_basesink_activate), (gst_basesink_change_state):
13012         * gst/base/gstbasesink.h:
13013         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
13014         (gst_base_transform_base_init), (gst_base_transform_finalize),
13015         (gst_base_transform_class_init), (gst_base_transform_init),
13016         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
13017         (gst_base_transform_event), (gst_base_transform_getrange),
13018         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
13019         (gst_base_transform_set_property),
13020         (gst_base_transform_get_property),
13021         (gst_base_transform_sink_activate),
13022         (gst_base_transform_src_activate),
13023         (gst_base_transform_change_state):
13024         * gst/base/gstbasetransform.h:
13025         * gst/elements/gstidentity.c: (gst_identity_finalize),
13026         (gst_identity_class_init), (gst_identity_init),
13027         (gst_identity_event), (gst_identity_check_perfect),
13028         (gst_identity_transform), (gst_identity_set_property),
13029         (gst_identity_get_property), (gst_identity_change_state):
13030         * gst/elements/gstidentity.h:
13031         * gst/gstelement.c: (gst_element_get_state_func),
13032         (gst_element_lost_state), (gst_element_pads_activate):
13033         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
13034         (gst_pad_check_pull_range), (gst_pad_pull_range):
13035         * gst/gstpad.h:
13036         Simplify pad activation.
13037         Added function to check if pull_range can be performed.
13038         Error out when pulling inactive or flushing pads.
13039         Removed const from refcounted types as it does not make sense.
13040         Simplify pad templates in basesink
13041         Added base class for simple 1-to-1 transforms.
13042         Make identity subclass the base transform.
13043
13044 2005-03-29  Andy Wingo  <wingo@pobox.com>
13045
13046         * docs/libs/gstreamer-libs-overrides.txt: 
13047         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
13048         really don't understand what's going on, but like whatever. I want
13049         green buildbot!
13050
13051         * docs/gst/Makefile.am:
13052         * docs/libs/Makefile.am: Dist the overrides files.
13053
13054         * check/Makefile.am (clean-local): Remove .libs directories.
13055
13056         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
13057         elements to EXTRA_DIST, so po/ files are happy.
13058
13059         * po/POTFILES.in: Er, remove it here.
13060
13061         * po/POTFILES: Remove gstspider.c.
13062
13063         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
13064
13065         * docs/libs/gstreamer-libs-docs.sgml: 
13066         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
13067         bytestream.
13068
13069         * tests/complexity.c (main): Set the length of the preroll queue
13070         on the sinks to prevent a lockup.
13071
13072         * libs/gst/dataprotocol/Makefile.am: 
13073         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
13074         the same as the one in check/gst-libs/gdp.c.
13075
13076         * po/, docs/gst/: Commit automatic changes to docs and po files.
13077
13078         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
13079         the versioned libgstbase.
13080
13081         * check/Makefile.am: Depend on an unversioned gst-register, seems
13082         to make autoconf happier.
13083
13084         * gst/base/Makefile.am: Make libgstbase a versioned lib.
13085
13086 2005-03-28  Wim Taymans  <wim@fluendo.com>
13087
13088         * configure.ac:
13089         * docs/design/part-gstelement.txt:
13090         * docs/design/part-negotiation.txt:
13091         * docs/design/part-preroll.txt:
13092         * docs/design/part-scheduling.txt:
13093         * docs/design/part-states.txt:
13094         * gst/Makefile.am:
13095         * gst/base/Makefile.am:
13096         * gst/base/README:
13097         * gst/base/gstbasesink.c: (gst_basesink_get_template),
13098         (gst_basesink_base_init), (gst_basesink_class_init),
13099         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
13100         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
13101         (gst_basesink_set_pad_functions),
13102         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
13103         (gst_basesink_set_property), (gst_basesink_get_property),
13104         (gst_base_sink_get_template), (gst_base_sink_get_caps),
13105         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
13106         (gst_basesink_preroll_queue_push),
13107         (gst_basesink_preroll_queue_empty),
13108         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
13109         (gst_basesink_event), (gst_basesink_get_times),
13110         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
13111         (gst_basesink_chain_unlocked), (gst_basesink_chain),
13112         (gst_basesink_loop), (gst_basesink_activate),
13113         (gst_basesink_change_state):
13114         * gst/base/gstbasesink.h:
13115         * gst/elements/Makefile.am:
13116         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
13117         (gst_fakesink_class_init), (gst_fakesink_init),
13118         (gst_fakesink_set_property), (gst_fakesink_get_property),
13119         (gst_fakesink_get_times), (gst_fakesink_event),
13120         (gst_fakesink_preroll), (gst_fakesink_render),
13121         (gst_fakesink_change_state):
13122         * gst/elements/gstfakesink.h:
13123         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
13124         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
13125         * gst/gstelement.c: (gst_element_add_pad),
13126         (gst_element_get_state_func), (gst_element_abort_state),
13127         (gst_element_commit_state), (gst_element_lost_state),
13128         (gst_element_set_state), (gst_element_pads_activate):
13129         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
13130         * gst/gstpipeline.c: (gst_pipeline_send_event),
13131         (gst_pipeline_change_state):
13132         Added state change code.
13133         Added/updated docs.
13134         Added sink base class, make fakesink extend the base class.
13135         Small cleanups in GstPipeline.
13136
13137 2005-03-26  David Schleef  <ds@schleef.org>
13138
13139         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
13140         is broken and should be implemented in a different library.
13141         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
13142         * gst/gst.h: remove gstcpu.h
13143         * gst/gstcpu.c: remove
13144         * gst/gstcpu.h: remove
13145         * gst/Makefile.am.future: Remove this file.  It's ancient.
13146
13147 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
13148
13149         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
13150         (gst_bin_send_event):
13151           Add default event/set_manager handlers. The set_manager handler
13152           takes care that the manager is distributed over kids that were
13153           already in the bin before the manager was set. The event handler
13154           is a utility virtual function that sends the event over all sinks,
13155           so that gst_element_send_event (bin, event); has the expected
13156           behaviour.
13157         * gst/gstpad.c: (gst_pad_event_default):
13158           Re-install default event handling for discontinuities, so that
13159           seeking works without requiring hacks in applications or extra
13160           code in sinks.
13161         * gst/gstpipeline.c: (gst_pipeline_class_init),
13162         (gst_pipeline_send_event):
13163           Half hack, half utility: set a pipeline to PAUSED for seek events,
13164           since that is the only way we can guarantee a/v sync. Means that
13165           you can do gst_element_seek (pipeline, method, pos); on a pipeline
13166           and it "just works".
13167
13168 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
13169
13170         * gst/gstpipeline.c: (gst_pipeline_use_clock):
13171           Lock/unlock mismatch.
13172
13173 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13174
13175         * docs/faq/gst-uninstalled:
13176           add gst-plugins-base
13177         * docs/gst/Makefile.am:
13178           don't error out until docs are fixed
13179         * docs/gst/gstreamer.types:
13180           remove thread
13181
13182 2005-03-22  Wim Taymans  <wim@fluendo.com>
13183
13184         * check/Makefile.am:
13185         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
13186         * gst/gststructure.c: (gst_structure_set_valist),
13187         (gst_structure_copy_conditional):
13188         Activated more tests.
13189         Added message test.
13190         Added G_TYPE_POINTER to GstStructure.
13191         
13192
13193 2005-03-22  Wim Taymans  <wim@fluendo.com>
13194
13195         * docs/design/part-TODO.txt:
13196         * docs/design/part-events.txt:
13197         * docs/design/part-gstbin.txt:
13198         * docs/design/part-gstbus.txt:
13199         * docs/design/part-gstpipeline.txt:
13200         * docs/design/part-messages.txt:
13201         * gst/gstbus.c:
13202         * gst/gstmessage.c:
13203         Docs updates
13204
13205 2005-03-21  Wim Taymans  <wim@fluendo.com>
13206
13207         * gst/gstbus.c: (gst_bus_post):
13208         Fix copy-and-paste error.
13209
13210 2005-03-21  Wim Taymans  <wim@fluendo.com>
13211
13212         * check/Makefile.am:
13213         * gst/Makefile.am:
13214         * gst/elements/Makefile.am:
13215         * gst/elements/gstelements.c:
13216         * gst/elements/gstfakesink.c: (gst_fakesink_init),
13217         (gst_fakesink_event), (gst_fakesink_chain):
13218         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
13219         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
13220         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
13221         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
13222         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
13223         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
13224         (gst_fakesrc_loop), (gst_fakesrc_activate),
13225         (gst_fakesrc_change_state):
13226         * gst/elements/gstfakesrc.h:
13227         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
13228         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
13229         (gst_filesrc_open_file), (gst_filesrc_loop),
13230         (gst_filesrc_activate), (gst_filesrc_change_state),
13231         (filesrc_find_peek), (filesrc_find_suggest),
13232         (gst_filesrc_type_find):
13233         * gst/elements/gstidentity.c: (gst_identity_finalize),
13234         (gst_identity_class_init), (gst_identity_init),
13235         (gst_identity_proxy_getcaps), (identity_queue_push),
13236         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
13237         (gst_identity_getrange), (gst_identity_chain),
13238         (gst_identity_sink_loop), (gst_identity_src_loop),
13239         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
13240         (gst_identity_set_property), (gst_identity_get_property),
13241         (gst_identity_change_state):
13242         * gst/elements/gstidentity.h:
13243         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
13244         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
13245         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
13246         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
13247         (gst_tee_sink_activate):
13248         * gst/elements/gsttee.h:
13249         * gst/gst.c: (gst_register_core_elements), (init_post):
13250         * gst/gst.h:
13251         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
13252         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
13253         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
13254         (gst_bin_change_state):
13255         * gst/gstbin.h:
13256         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
13257         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
13258         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
13259         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
13260         (gst_bus_set_sync_handler), (gst_bus_create_watch),
13261         (bus_watch_callback), (bus_watch_destroy),
13262         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
13263         (poll_timeout), (gst_bus_poll):
13264         * gst/gstbus.h:
13265         * gst/gstcaps.h:
13266         * gst/gstdata.h:
13267         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
13268         (gst_element_post_message), (gst_element_message_full),
13269         (gst_element_get_state_func), (gst_element_get_state),
13270         (gst_element_abort_state), (gst_element_commit_state),
13271         (gst_element_lost_state), (gst_element_set_state),
13272         (gst_element_pads_activate), (gst_element_change_state),
13273         (gst_element_dispose), (gst_element_set_manager_func),
13274         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
13275         (gst_element_set_manager), (gst_element_get_manager),
13276         (gst_element_set_bus), (gst_element_get_bus),
13277         (gst_element_set_scheduler), (gst_element_get_scheduler):
13278         * gst/gstelement.h:
13279         * gst/gstevent.c: (gst_event_new_segment_seek),
13280         (gst_event_new_flush):
13281         * gst/gstevent.h:
13282         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
13283         (_gst_message_free), (gst_message_get_type), (gst_message_new),
13284         (gst_message_new_eos), (gst_message_new_error),
13285         (gst_message_new_warning), (gst_message_new_tag),
13286         (gst_message_new_state_changed), (gst_message_new_application),
13287         (gst_message_get_structure), (gst_message_parse_tag),
13288         (gst_message_parse_state_changed), (gst_message_parse_error),
13289         (gst_message_parse_warning):
13290         * gst/gstmessage.h:
13291         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
13292         (gst_real_pad_set_property), (gst_pad_set_active),
13293         (gst_pad_is_active), (gst_pad_set_blocked_async),
13294         (gst_pad_set_blocked), (gst_pad_is_blocked),
13295         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
13296         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
13297         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
13298         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
13299         (gst_pad_link_filtered), (gst_pad_relink_filtered),
13300         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
13301         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
13302         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
13303         (gst_pad_set_caps), (gst_pad_configure_sink),
13304         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
13305         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
13306         (gst_real_pad_dispose), (gst_real_pad_finalize),
13307         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
13308         (gst_pad_event_default_dispatch), (gst_pad_event_default),
13309         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
13310         * gst/gstpad.h:
13311         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
13312         (pipeline_bus_handler), (gst_pipeline_change_state),
13313         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
13314         * gst/gstpipeline.h:
13315         * gst/gstprobe.h:
13316         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
13317         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
13318         (gst_queue_link_src), (gst_queue_bufferalloc),
13319         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
13320         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
13321         (gst_queue_loop), (gst_queue_handle_src_event),
13322         (gst_queue_handle_src_query), (gst_queue_src_activate),
13323         (gst_queue_change_state):
13324         * gst/gstqueue.h:
13325         * gst/gstscheduler.c: (gst_scheduler_init),
13326         (gst_scheduler_dispose), (gst_scheduler_create_task),
13327         (gst_scheduler_factory_create):
13328         * gst/gstscheduler.h:
13329         * gst/gststructure.c: (gst_structure_get_type),
13330         (gst_structure_copy_conditional):
13331         * gst/gststructure.h:
13332         * gst/gsttaginterface.h:
13333         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
13334         (gst_task_init), (gst_task_dispose), (gst_task_create),
13335         (gst_task_get_state), (gst_task_start), (gst_task_stop),
13336         (gst_task_pause):
13337         * gst/gsttask.h:
13338         * gst/gstthread.c:
13339         * gst/gstthread.h:
13340         * gst/gsttypes.h:
13341         * gst/schedulers/Makefile.am:
13342         * gst/schedulers/cothreads_compat.h:
13343         * gst/schedulers/entryscheduler.c:
13344         * gst/schedulers/faircothreads.c:
13345         * gst/schedulers/faircothreads.h:
13346         * gst/schedulers/fairscheduler.c:
13347         * gst/schedulers/gstbasicscheduler.c:
13348         * gst/schedulers/gstoptimalscheduler.c:
13349         * gst/schedulers/gthread-cothreads.h:
13350         * gst/schedulers/threadscheduler.c:
13351         (gst_thread_scheduler_task_get_type),
13352         (gst_thread_scheduler_task_class_init),
13353         (gst_thread_scheduler_task_init),
13354         (gst_thread_scheduler_task_start),
13355         (gst_thread_scheduler_task_stop),
13356         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
13357         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
13358         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
13359         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
13360         (plugin_init):
13361         * libs/gst/Makefile.am:
13362         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
13363         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
13364         (gst_file_pad_parent_set):
13365         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
13366         (gst_dp_event_from_packet):
13367         * tests/complexity.c: (main):
13368         * tests/mass_elements.c: (main):
13369         * testsuite/states/locked.c: (message_received), (main):
13370         * testsuite/states/parent.c: (main):
13371         * tools/gst-inspect.c: (print_element_flag_info),
13372         (print_implementation_info), (print_pad_info):
13373         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
13374         (main):
13375         * tools/gst-md5sum.c: (event_loop), (main):
13376         * tools/gst-typefind.c: (main):
13377         * tools/gst-xmlinspect.c: (print_element_info):
13378         Next big merge.
13379         Added GstBus for mainloop integration.
13380         Added GstMessage for sending notifications on the bus.
13381         Added GstTask as an abstraction for pipeline entry points.
13382         Removed GstThread.
13383         Removed Schedulers.
13384         Simplified GstQueue for multithreaded core.
13385         Made _link threadsafe, removed old capsnego.
13386         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
13387         Added pad blocking functions.
13388         Reworked scheduling functions in GstPad to prepare for
13389         scheduling updates soon.
13390         Moved events out of data stream.
13391         Simplified GstEvent types.
13392         Added return values to push/pull.
13393         Removed clocking from GstElement.
13394         Added prototypes for state change function for next merge.
13395         Removed iterate from bins and state change management.
13396         Fixed some elements, disabled others for now.
13397         Fixed -inspect and -launch.
13398         Added check for GstBus.
13399
13400 2005-03-10  Wim Taymans  <wim@fluendo.com>
13401
13402         * docs/design/part-MT-refcounting.txt:
13403         * docs/design/part-clocks.txt:
13404         * docs/design/part-gstelement.txt:
13405         * docs/design/part-gstobject.txt:
13406         * docs/design/part-standards.txt:
13407         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
13408         (gst_bin_remove_func), (gst_bin_remove):
13409         * gst/gstbin.h:
13410         * gst/gstbuffer.c:
13411         * gst/gstcaps.h:
13412         * testsuite/clock/clock1.c: (main):
13413         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
13414         (main):
13415         * testsuite/dlopen/loadgst.c: (do_test):
13416         * testsuite/refcounting/bin.c: (add_remove_test1),
13417         (add_remove_test2), (main):
13418         * testsuite/refcounting/element.c: (main):
13419         * testsuite/refcounting/element_pad.c: (main):
13420         * testsuite/refcounting/pad.c: (main):
13421         * tools/gst-launch.c: (sigint_handler_sighandler):
13422         * tools/gst-typefind.c: (main):
13423         Doc updates.
13424         Added doc about clock.
13425         removed gst_bin_iterate_recurse_up(), marked methods
13426         for removal.
13427         Fix more testsuites.
13428
13429 2005-03-09  Wim Taymans  <wim@fluendo.com>
13430
13431         * gst/gstpad.c: (gst_pad_get_direction),
13432         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
13433         (gst_pad_collect_valist):
13434         * testsuite/bins/interface.c: (main):
13435         * testsuite/caps/audioscale.c: (test_caps):
13436         * testsuite/caps/caps.c: (test1), (test2), (test3):
13437         * testsuite/caps/deserialize.c: (main):
13438         * testsuite/caps/enumcaps.c: (main):
13439         * testsuite/caps/filtercaps.c: (main):
13440         * testsuite/caps/intersect2.c: (main):
13441         * testsuite/caps/random.c: (main):
13442         * testsuite/caps/renegotiate.c: (my_fixate), (main):
13443         * testsuite/caps/sets.c: (check_caps):
13444         * testsuite/caps/simplify.c: (check_caps), (main):
13445         * testsuite/caps/subtract.c: (check_caps):
13446         Fix _pad_get_direction wrt ghostpads.
13447         Fix caps testsuite.
13448
13449 2005-03-09  Wim Taymans  <wim@fluendo.com>
13450
13451         * check/Makefile.am:
13452         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
13453         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
13454         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
13455         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
13456         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
13457         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
13458         (gst_bin_remove), (gst_bin_iterate_recurse_up),
13459         (bin_element_is_sink), (gst_bin_iterate_sinks),
13460         (gst_bin_iterate_all_by_interface):
13461         * gst/gstbin.h:
13462         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
13463         (gst_element_change_state), (gst_element_dispose),
13464         (gst_element_finalize), (gst_element_set_loop_function):
13465         * gst/gstelement.h:
13466         * gst/gstiterator.c: (find_custom_fold_func):
13467         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
13468         (gst_pad_collectv), (gst_pad_collect_valist),
13469         (gst_pad_template_new):
13470         * gst/gstpipeline.c: (gst_pipeline_class_init),
13471         (gst_pipeline_dispose), (gst_pipeline_set_property),
13472         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
13473         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
13474         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
13475         * gst/gstutils.h:
13476         * gst/schedulers/entryscheduler.c:
13477         * gst/schedulers/gstbasicscheduler.c:
13478         (gst_basic_scheduler_cothreaded_chain),
13479         (gst_basic_scheduler_chain_add_element):
13480         * testsuite/bins/interface.c: (main):
13481         Added GstBin test.
13482         Added GstSystemClock test.
13483         Implemented clock distribution code in GstBin.
13484         Implemented iterate sinks method for future use.
13485         Rearranged gstelement.h
13486         Fix GstIterator comparison bug.
13487         Moved some code to GstPipeline, mostly clocking related.
13488
13489 2005-03-09  Wim Taymans  <wim@fluendo.com>
13490
13491         * configure.ac:
13492         * gst/gst_private.h:
13493         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
13494         (gst_bin_remove_func), (gst_bin_remove),
13495         (gst_bin_get_by_name_recurse_up):
13496         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
13497         (gst_clock_id_compare_func), (gst_clock_id_wait),
13498         (gst_clock_id_wait_async), (gst_clock_init),
13499         (gst_clock_adjust_unlocked), (gst_clock_get_time):
13500         * gst/gstelement.h:
13501         * gst/gstinfo.c: (_gst_debug_init):
13502         * gst/gstobject.h:
13503         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
13504         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
13505         * gst/gstpad.h:
13506         Bump version number, we're now 0.9.0
13507         Add future debugging category.
13508         Fix NULL _unref() in _get_by_name_recurse_up
13509         Rearrange gstpad.h.
13510         Update some docs.
13511
13512 2005-03-08  Wim Taymans  <wim@fluendo.com>
13513
13514         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
13515         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
13516         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
13517         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
13518         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
13519         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
13520         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
13521         * gst/elements/gstidentity.c: (gst_identity_class_init):
13522         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
13523         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
13524         * gst/elements/gstshaper.c: (gst_shaper_class_init):
13525         * gst/elements/gststatistics.c: (gst_statistics_class_init):
13526         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
13527         (gst_tee_link):
13528         * gst/gstelement.c: (gst_element_class_init),
13529         (gst_element_base_class_init), (gst_element_init),
13530         (gst_element_get_random_pad), (gst_element_wait_state_change),
13531         (gst_element_change_state), (gst_element_dispose),
13532         (gst_element_finalize), (gst_element_set_loop_function):
13533         * gst/gstelement.h:
13534         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
13535         * gst/gstthread.c: (gst_thread_class_init),
13536         (gst_thread_release_children_locks), (gst_thread_change_state):
13537         * gst/schedulers/gstbasicscheduler.c:
13538         (gst_basic_scheduler_loopfunc_wrapper),
13539         (gst_basic_scheduler_chain_wrapper),
13540         (gst_basic_scheduler_src_wrapper),
13541         (gst_basic_scheduler_remove_element):
13542         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
13543         Remove threadsafe properties. Fix elements because GObject
13544         complains when installing a property before declaring a
13545         set/get_property handler.
13546         Rearrange gstelement.h file, use STATE macros for state locks.
13547         Free mutexes in the finalize method instead of dispose.
13548
13549 2005-03-08  Wim Taymans  <wim@fluendo.com>
13550
13551         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
13552         * gst/gstthread.c: (gst_thread_release_children_locks):
13553         Added parentage check.
13554         Fix build og GstThread again.
13555
13556 2005-03-08  Wim Taymans  <wim@fluendo.com>
13557
13558         * docs/design/part-MT-refcounting.txt:
13559         * docs/design/part-conventions.txt:
13560         * docs/design/part-gstobject.txt:
13561         * docs/design/part-relations.txt:
13562         * docs/design/part-standards.txt:
13563         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
13564         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
13565         (gst_bin_get_by_name), (gst_bin_get_by_interface),
13566         (gst_bin_iterate_all_by_interface):
13567         * gst/gstbuffer.h:
13568         * gst/gstclock.h:
13569         * gst/gstelement.c: (gst_element_class_init),
13570         (gst_element_change_state), (gst_element_set_loop_function):
13571         * gst/gstelement.h:
13572         * gst/gstiterator.c:
13573         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
13574         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
13575         (gst_object_dispatch_properties_changed), (gst_object_set_name),
13576         (gst_object_set_parent), (gst_object_unparent),
13577         (gst_object_check_uniqueness):
13578         * gst/gstobject.h:
13579         Docs updates, clean up some headers.
13580
13581 2005-03-07  Wim Taymans  <wim@fluendo.com>
13582
13583         * check/.cvsignore:
13584         * check/Makefile.am:
13585         * check/gst-libs/.cvsignore:
13586         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
13587         * check/gst/.cvsignore:
13588         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
13589         (START_TEST), (gstbus_suite), (main):
13590         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
13591         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
13592         (gst_data_suite), (main):
13593         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
13594         (add_fold_func), (gstiterator_suite), (main):
13595         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
13596         (thread_name_object), (thread_name_object_default),
13597         (gst_object_name_compare), (gst_object_suite), (main):
13598         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
13599         (gst_pad_suite), (main):
13600         * check/gstcheck.c: (gst_check_log_message_func),
13601         (gst_check_log_critical_func), (gst_check_init):
13602         * check/gstcheck.h:
13603         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
13604         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
13605         Added checks.
13606
13607 2005-03-07  Wim Taymans  <wim@fluendo.com>
13608
13609         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
13610         (gst_list_iterator_next), (gst_list_iterator_resync),
13611         (gst_list_iterator_free), (gst_iterator_new_list),
13612         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
13613         (gst_iterator_free), (gst_iterator_push), (filter_next),
13614         (filter_resync), (filter_uninit), (filter_free),
13615         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
13616         (gst_iterator_foreach), (find_custom_fold_func),
13617         (gst_iterator_find_custom):
13618         * gst/gstiterator.h:
13619         Added missing files.
13620
13621 2005-03-07  Wim Taymans  <wim@fluendo.com>
13622
13623         * Makefile.am:
13624         * configure.ac:
13625         * docs/design/part-MT-refcounting.txt:
13626         * docs/design/part-conventions.txt:
13627         * docs/design/part-gstobject.txt:
13628         * docs/design/part-relations.txt:
13629         * examples/mixer/mixer.c: (main):
13630         * examples/thread/thread.c: (eos), (main):
13631         * gst/Makefile.am:
13632         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13633         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
13634         (gst_spider_plug_from_srcpad):
13635         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
13636         (gst_spider_identity_change_state),
13637         (gst_spider_identity_sink_loop_type_finding):
13638         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
13639         * gst/elements/gstidentity.c: (gst_identity_init):
13640         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
13641         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
13642         * gst/elements/gsttypefindelement.c: (free_entry):
13643         * gst/gst.c:
13644         * gst/gst.h:
13645         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
13646         (gst_bin_set_clock_func), (gst_bin_auto_clock),
13647         (gst_bin_set_index), (gst_bin_set_element_sched),
13648         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
13649         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
13650         (gst_bin_iterate_elements), (iterate_child_recurse),
13651         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
13652         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
13653         (compare_interface), (gst_bin_get_by_interface),
13654         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
13655         * gst/gstbin.h:
13656         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
13657         (gst_buffer_default_free), (gst_buffer_default_copy),
13658         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
13659         (gst_buffer_create_sub):
13660         * gst/gstbuffer.h:
13661         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
13662         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
13663         (gst_caps_unref), (gst_static_caps_get),
13664         (gst_caps_remove_and_get_structure), (gst_caps_append),
13665         (gst_caps_append_structure), (gst_caps_remove_structure),
13666         (gst_caps_copy_nth), (gst_caps_set_simple),
13667         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
13668         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
13669         (gst_caps_structure_intersect_field), (gst_caps_intersect),
13670         (gst_caps_structure_subtract_field), (gst_caps_subtract),
13671         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
13672         (gst_caps_structure_figure_out_union),
13673         (gst_caps_switch_structures), (gst_caps_do_simplify),
13674         (gst_caps_replace), (gst_caps_from_string),
13675         (gst_caps_copy_conditional):
13676         * gst/gstcaps.h:
13677         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
13678         (_gst_clock_id_free), (gst_clock_id_unref),
13679         (gst_clock_id_compare_func), (gst_clock_id_wait),
13680         (gst_clock_id_wait_async), (gst_clock_class_init),
13681         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
13682         (gst_clock_get_time), (gst_clock_set_time_adjust),
13683         (gst_clock_set_property), (gst_clock_get_property):
13684         * gst/gstclock.h:
13685         * gst/gstcompat.h:
13686         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
13687         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
13688         * gst/gstdata.h:
13689         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
13690         (gst_element_requires_clock), (gst_element_provides_clock),
13691         (gst_element_set_clock), (gst_element_clock_wait),
13692         (gst_element_wait), (gst_element_set_time_delay),
13693         (gst_element_is_indexable), (gst_element_add_pad),
13694         (gst_element_add_ghost_pad), (gst_element_remove_pad),
13695         (pad_compare_name), (gst_element_get_static_pad),
13696         (gst_element_request_pad), (gst_element_get_request_pad),
13697         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
13698         (gst_element_class_get_pad_template_list),
13699         (gst_element_class_get_pad_template), (gst_element_error_func),
13700         (gst_element_get_random_pad), (gst_element_get_event_masks),
13701         (gst_element_send_event), (gst_element_seek),
13702         (gst_element_get_query_types), (gst_element_query),
13703         (gst_element_get_formats), (gst_element_convert),
13704         (gst_element_is_locked_state), (gst_element_set_locked_state),
13705         (gst_element_sync_state_with_parent), (gst_element_change_state),
13706         (gst_element_finalize), (gst_element_yield),
13707         (gst_element_interrupt), (gst_element_set_scheduler),
13708         (gst_element_get_scheduler), (gst_element_set_loop_function):
13709         * gst/gstelement.h:
13710         * gst/gstevent.h:
13711         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
13712         (gst_format_get_by_nick), (gst_format_get_details),
13713         (gst_format_iterate_definitions):
13714         * gst/gstformat.h:
13715         * gst/gstindex.c: (gst_index_gtype_resolver):
13716         * gst/gstinfo.c:
13717         * gst/gstinfo.h:
13718         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
13719         (gst_mem_chunk_free):
13720         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
13721         (gst_object_ref), (gst_object_unref), (gst_object_sink),
13722         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
13723         (gst_object_dispatch_properties_changed),
13724         (gst_object_set_name_default), (gst_object_set_name),
13725         (gst_object_get_name), (gst_object_set_name_prefix),
13726         (gst_object_get_name_prefix), (gst_object_set_parent),
13727         (gst_object_get_parent), (gst_object_unparent),
13728         (gst_object_check_uniqueness), (gst_object_save_thyself),
13729         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
13730         (gst_object_set_property), (gst_object_get_property),
13731         (gst_object_get_path_string):
13732         * gst/gstobject.h:
13733         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
13734         (gst_real_pad_init), (gst_real_pad_get_property),
13735         (gst_pad_custom_new), (gst_pad_get_direction),
13736         (gst_pad_set_active), (gst_pad_is_active),
13737         (gst_pad_set_event_function), (gst_pad_is_linked),
13738         (gst_pad_link_free), (gst_pad_link_intersect),
13739         (gst_pad_link_fixate), (gst_pad_set_caps),
13740         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
13741         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
13742         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
13743         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
13744         (gst_pad_get_caps), (gst_pad_peer_get_caps),
13745         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
13746         (gst_pad_realize), (gst_pad_get_allowed_caps),
13747         (gst_real_pad_dispose), (gst_real_pad_finalize),
13748         (gst_pad_collectv), (gst_pad_collect_valist),
13749         (gst_pad_template_dispose), (gst_pad_template_new),
13750         (gst_pad_get_internal_links):
13751         * gst/gstpad.h:
13752         * gst/gstpipeline.c: (gst_pipeline_dispose),
13753         (gst_pipeline_change_state):
13754         * gst/gstpipeline.h:
13755         * gst/gstplugin.c:
13756         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
13757         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
13758         * gst/gstpluginfeature.h:
13759         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
13760         * gst/gstquery.c: (_gst_query_type_initialize),
13761         (gst_query_type_register), (gst_query_type_get_by_nick),
13762         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
13763         * gst/gstquery.h:
13764         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
13765         * gst/gstscheduler.c: (gst_scheduler_add_element),
13766         (gst_scheduler_factory_create):
13767         * gst/gststructure.c: (gst_structure_set_parent_refcount),
13768         (gst_structure_free), (gst_structure_set_name),
13769         (gst_structure_id_set_value), (gst_structure_set_value),
13770         (gst_structure_set_valist), (gst_structure_remove_field),
13771         (gst_structure_remove_fields),
13772         (gst_structure_remove_fields_valist),
13773         (gst_structure_remove_all_fields), (gst_structure_foreach),
13774         (gst_structure_map_in_place),
13775         (gst_caps_structure_fixate_field_nearest_int),
13776         (gst_caps_structure_fixate_field_nearest_double):
13777         * gst/gststructure.h:
13778         * gst/gstsystemclock.c: (gst_system_clock_class_init),
13779         (gst_system_clock_init), (gst_system_clock_dispose),
13780         (gst_system_clock_async_thread),
13781         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
13782         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
13783         * gst/gstsystemclock.h:
13784         * gst/gsttag.c: (gst_tag_list_add_value_internal),
13785         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
13786         * gst/gsttaginterface.c:
13787         * gst/gstthread.c: (gst_thread_dispose),
13788         (gst_thread_release_children_locks), (gst_thread_change_state),
13789         (gst_thread_main_loop):
13790         * gst/gsttrashstack.h:
13791         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
13792         * gst/gsttypes.h:
13793         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
13794         (gst_element_request_pad), (gst_element_get_pad_from_template),
13795         (gst_element_request_compatible_pad),
13796         (gst_element_get_compatible_pad_filtered),
13797         (gst_element_get_compatible_pad), (gst_element_state_get_name),
13798         (gst_element_link_pads_filtered), (gst_element_link_filtered),
13799         (gst_element_link_many), (gst_element_link),
13800         (gst_element_link_pads), (gst_element_unlink_pads),
13801         (gst_element_unlink_many), (gst_element_unlink),
13802         (gst_pad_can_link_filtered), (gst_pad_can_link),
13803         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
13804         (gst_object_default_error), (gst_bin_add_many),
13805         (gst_bin_remove_many), (gst_element_populate_std_props),
13806         (gst_element_class_install_std_props), (gst_buffer_merge),
13807         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
13808         (link_fold_func), (gst_pad_proxy_setcaps):
13809         * gst/gstutils.h:
13810         * gst/gstvalue.c: (gst_value_deserialize_string):
13811         * gst/parse/grammar.y:
13812         * gst/schedulers/gstbasicscheduler.c:
13813         (gst_basic_scheduler_cothreaded_chain),
13814         (gst_basic_scheduler_chain_recursive_add),
13815         (gst_basic_scheduler_pad_link):
13816         * gst/schedulers/gstoptimalscheduler.c:
13817         (get_group_schedule_function),
13818         (gst_opt_scheduler_state_transition),
13819         (gst_opt_scheduler_add_element), (element_get_reachables_func):
13820         * libs/gst/bytestream/bytestream.c:
13821         * libs/gst/dataprotocol/dataprotocol.c:
13822         (gst_dp_header_from_buffer):
13823         * po/nb.po:
13824         * po/ru.po:
13825         * tests/threadstate/threadstate2.c: (eos):
13826         * tools/gst-compprep.c: (main):
13827         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
13828         (print_pad_info), (print_children_info):
13829         * tools/gst-launch.c: (idle_func), (main):
13830         * tools/gst-md5sum.c: (idle_func), (main):
13831         * tools/gst-xmlinspect.c: (print_element_info):
13832         First THREADED backport attempt, focusing on adding locks and
13833         making sure the API is threadsafe. Needs more work. More docs
13834         follow this week.
13835
13836 2005-02-24  Andy Wingo  <wingo@pobox.com>
13837
13838         * tests/bench-complexity.scm:
13839         * tests/complexity.gnuplot: New files, good for running complexity
13840         benchmarks.
13841
13842         * tests/Makefile.am:
13843         * tests/complexity.c: New test, sets up N elements, at each level
13844         teeing into M streams per element. Eeeenteresting.
13845
13846         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
13847         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
13848         running bench-mass_elements.scm.
13849
13850         * tests/bench-mass_elements.scm: New script, runs mass_elements
13851         for various numbers of identities, outputting the results to a
13852         file. Requires guile 1.6. Just for testing.
13853
13854 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13855
13856         * gst/schedulers/fairscheduler.c:
13857           compile with debug disabled
13858
13859 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
13860
13861         * configure.ac:
13862           hunting season on 0.9 is now OPEN