docs/design/: Update some docs.
[glsdk/gstreamer0-10.git] / ChangeLog
1 2007-08-24  Wim Taymans  <wim.taymans@gmail.com>
3         * docs/design/part-TODO.txt:
4         * docs/design/part-block.txt:
5         Update some docs.
7 2007-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
9         * gst/Makefile.am:
10           Revert patch which uses $(gst_headers) instead of $^ because it
11           breaks make dist.
13 2007-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
15         * tests/check/gst/gstbin.c: (GST_START_TEST):
16           Fix leaks in the new unit test.
18 2007-08-23  Tim-Philipp Müller  <tim at centricular dot net>
20         * gst/gst.c:
21           Don't use GST_INFO before the debug system is actually initialised
22           (shouldn't do any harm, but won't print anything either, so we can
23           just as well remove it).
25         * gst/gstinfo.h:
26           GST_CAT_LEVEL_LOG_valist(), which is our inline helper function for
27           compilers that don't support variadic macros (such as MSVC), should
28           check for debug_level <= __gst_debug_min as well, since that's the
29           function called from all the level-specific GST_CAT_*_LOG_OBJECT()
30           inline helper functions. Should improve performance a bit, but also
31           makes sure uses of GST_INFO et.al are ignored if the debugging
32           system isn't initialised yet (instead of printing an assertion
33           failure).
35 2007-08-23  Stefan Kost  <ensonic@users.sf.net>
37         patch by: David Nečas <yeti@physics.muni.cz>
39         * gst/Makefile.am:
40           Replace some non portable makefile constructs.
42 2007-08-21  Stefan Kost  <ensonic@users.sf.net>
44         * common/gtk-doc-plugins.mak:
45           Grrrrr. Don't remove the types file on make clean.
47 2007-08-20  Wim Taymans  <wim.taymans@gmail.com>
49         * tools/gst-launch.1.in:
50         Add colorspace to example pipeline. Fixes #458274.
52 2007-08-20  Tim-Philipp Müller  <tim at centricular dot net>
54         * docs/random/release:
55           The release manager should run 'make download-po' before making a
56           release to make sure translations are up-to-date.
58         * po/LINGUAS:
59         * po/be.po:
60         * po/pl.po:
61         * po/rw.po:
62           Add some new translations.
64 2007-08-17  Wim Taymans  <wim.taymans@gmail.com>
66         * tools/gst-launch.c: (event_loop), (main):
67         Don´t try to do any state management when a live pipeline posts
68         buffering messages.
69         Also make the buffering string translatable.
71 2007-08-16  Wim Taymans  <wim.taymans@gmail.com>
73         * gst/gstbin.c: (is_eos), (gst_bin_add_func),
74         (bin_handle_async_start), (gst_bin_handle_message_func):
75         Improve debugging.
76         When adding elements, insert messages into the bus of the newly added
77         element and make sure the element is the source of the message. This
78         allows the parent bin to intercept the message and do the
79         right thing. It also avoids us posting ASYNC_START and CLOCK_PROVIDE
80         messages to the app (which is not allowed).
81         Update some docs.
83         * tests/check/gst/gstghostpad.c: (GST_START_TEST):
84         Fix testsuite so that is does not work around messages that should not
85         have been posted in the first place.
87 2007-08-16  Wim Taymans  <wim.taymans@gmail.com>
89         * gst/gstbin.c: (add_to_queue), (remove_from_queue), (clear_queue),
90         (update_degree), (gst_bin_sort_iterator_next):
91         Fix annoying bug in the sorted iterator where a sink that is not really
92         a sink (when it has downstream links) screwed up the iterator.
94         * tests/check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
95         Unit test to verify the fix.
97 2007-08-16  Wim Taymans  <wim.taymans@gmail.com>
99         * gst/gstmessage.h:
100         Add some more docs for the messages.
102         * libs/gst/base/gstbasesink.c: (gst_base_sink_commit_state),
103         (gst_base_sink_query):
104         Add some more debugging.
106         * tools/gst-launch.c: (event_loop):
107         When interrupting, don't try to set pipeline to PAUSED twice.
109 2007-08-14  Wim Taymans  <wim.taymans@gmail.com>
111         
112         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_element_set_state),
113         (bin_handle_async_start), (gst_bin_handle_message_func):
114         Move ASYNC_START message posting to where it belongs, similar to
115         async_done. 
116         Don't post ASYNC_START when we are in error. 
117         Post ASYNC_START when we added an async element to a bin.
119 2007-08-14  Julien MOUTTE  <julien@moutte.net>
121         * gst/gstindex.c: (gst_index_add_association): Fix index entry
122         generation from vargs. Fixes #466595.
124 2007-08-14  Wim Taymans  <wim.taymans@gmail.com>
126         * gst/gstbin.c: (gst_bin_element_set_state):
127         Always change the state of a NO_PREROLL element even if it has ASYNC
128         elements inside (in case of a bin).
130         * tests/check/generic/sinks.c: (GST_START_TEST), (gst_sinks_suite):
131         Unit test for this case.
133 2007-08-13  Stefan Kost  <ensonic@users.sf.net>
135         * libs/gst/check/gstbufferstraw.c:
136         * libs/gst/check/gstcheck.h:
137         * libs/gst/controller/gstcontroller.c:
138         * libs/gst/controller/gstcontrolsource.h:
139         * libs/gst/controller/gstlfocontrolsource.h:
140         * plugins/elements/gstcapsfilter.h:
141         * plugins/elements/gstfdsink.h:
142         * plugins/elements/gstfdsrc.h:
143           Add more missing docs.
145 2007-08-12  Wim Taymans  <wim.taymans@gmail.com>
147         * gst/gststructure.c:
148         Add Since tag to docs.
150 2007-08-12  Wim Taymans  <wim.taymans@gmail.com>
152         * docs/gst/gstreamer-sections.txt:
153         * gst/gststructure.c: (gst_structure_get_uint):
154         * gst/gststructure.h:
155         Add function to get uint from a structure.
156         API: gst_structure_get_uint()
158 2007-08-12  Wim Taymans  <wim.taymans@gmail.com>
160         * gst/gstcaps.c: (gst_caps_set_simple_valist),
161         (gst_caps_intersect):
162         Fix proper check for simple caps.
164 2007-08-10  Stefan Kost  <ensonic@users.sf.net>
166         * docs/gst/Makefile.am:
167         * docs/libs/Makefile.am:
168           Remove cruft and do some cleanups.
170         * docs/gst/gstreamer-docs.sgml:
171         * docs/libs/gstreamer-libs-docs.sgml:
172           Prepare for comming gtkdoc features (rebase against online docs).
174 2007-08-10  Michael Smith <msmith@fluendo.com>
176         * docs/gst/gstreamer-sections.txt:
177           Add gst_registry_add_path to docs.
179 2007-08-10  Michael Smith <msmith@fluendo.com>
181         * gst/gstregistry.h:
182           Add gst_registry_add_path, which was missing from this header.
184 2007-08-10  Tim-Philipp Müller  <tim at centricular dot net>
186         * libs/gst/controller/gstlfocontrolsource.c:
187           Printf format fix.
189 2007-08-09  Philippe Kalaf <philippe.kalaf@collabora.co.uk>
191         * libs/gst/base/gstbasesink.c:
192           Don't send an async_start message during downwards state change if 
193           target state is less than READY
195 2007-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
197         translated by: Gabor Kelemen <kelemeng@gnome.hu>
199         * po/LINGUAS:
200         * po/hu.po:
201           Added Hungarian translation.
203 2007-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
205         * po/fi.po:
206         * po/it.po:
207         * po/nl.po:
208         * po/sv.po:
209         * po/uk.po:
210           Updated translations.
212 2007-08-07  Jan Schmidt  <thaytan@mad.scientist.com>
214         * libs/gst/controller/Makefile.am:
215         Dist gstlfocontrolsourceprivate.h
217 2007-08-07  Jan Schmidt  <thaytan@mad.scientist.com>
219         * docs/libs/gstreamer-libs.types:
220         Don't register the enum type gst_lfo_waveform_get_type() in the
221         .types file - only GObject derived types belong.
223 2007-08-07  Wim Taymans  <wim.taymans@gmail.com>
225         Patch by: <arenevier at fdn dot fr>
227         * gst/gstbuffer.h:
228         Remove comma from last element in enum to avoid compile errors when
229         using -pendantic. Fixes #464366.
231 2007-08-07  Wim Taymans  <wim.taymans@gmail.com>
233         * docs/design/part-TODO.txt:
234         Add some more TODO items
236         * gst/gstbin.c: (find_message), (gst_bin_change_state_func):
237         Improve debugging.
239         * gst/gstcaps.c: (gst_caps_intersect):
240         Optimize trivial intersection case between identical caps pointers.
242         * gst/gstelement.c: (gst_element_continue_state),
243         (gst_element_set_state_func):
244         * gst/gstpad.c:
245         Fix spelling and grammar mistakes.
247 2007-08-05  Stefan Kost  <ensonic@users.sf.net>
249         * po/POTFILES.in:
250         * po/POTFILES.skip:
251           Update POTFILES. Fixes #461599.
253 2007-08-03  Sebastian Dröge  <slomo@circular-chaos.org>
255         * gst/gst.c:
256         Fix confusing typo in debug output.
258 2007-08-03  Sebastian Dröge  <slomo@circular-chaos.org>
260         reviewed by: Stefan Kost <ensonic@users.sf.net>
262         * libs/gst/controller/Makefile.am:
263         * libs/gst/controller/gstlfocontrolsource.c: (_calculate_pos),
264         (gst_lfo_waveform_get_type), (gst_lfo_control_source_reset),
265         (gst_lfo_control_source_new),
266         (gst_lfo_control_source_set_waveform),
267         (gst_lfo_control_source_bind), (gst_lfo_control_source_init),
268         (gst_lfo_control_source_finalize),
269         (gst_lfo_control_source_dispose),
270         (gst_lfo_control_source_set_property),
271         (gst_lfo_control_source_get_property),
272         (gst_lfo_control_source_class_init):
273         * libs/gst/controller/gstlfocontrolsource.h:
274         * libs/gst/controller/gstlfocontrolsourceprivate.h:
275         API: Add GstLFOControlSource, a control source that gives values
276         for specific timestamps based on several periodic waveforms.
277         Fixes #459717.
279         * tests/check/libs/controller.c: (GST_START_TEST),
280         (gst_controller_suite):
281         * docs/libs/gstreamer-libs-docs.sgml:
282         * docs/libs/gstreamer-libs-sections.txt:
283         * docs/libs/gstreamer-libs.types:
284         Add documentation and unit tests for GstLFOControlSource.
286 2007-08-03  Jan Schmidt  <thaytan@mad.scientist.com>
288         * configure.ac:
289         Back to CVS
291 === release 0.10.14 ===
293 2007-08-03  Jan Schmidt <thaytan@mad.scientist.com>
295         * configure.ac:
296           releasing 0.10.14, "Breathing Vacuum"
298 2007-08-02  Tim-Philipp Müller  <tim at centricular dot net>
300         * gst/gstelement.c: (gst_element_class_set_details_simple):
301         * gst/gstelement.h:
302           Make strings passed to gst_element_class_set_details_simple()
303           constant, as they should be (#462752).
305 2007-08-02  Wim Taymans  <wim.taymans@gmail.com>
307         * gst/gstbin.c: (gst_bin_change_state_func),
308         (bin_handle_async_done), (gst_bin_handle_message_func):
309         Don't forget about the fact that some element went ASYNC even after a
310         resync. This makes us post the ASYNC_DONE message correctly.
311         Fixes #462558.
313 2007-07-31  Jan Schmidt  <thaytan@mad.scientist.com>
315         * gst/gstregistry.c: (gst_registry_add_feature):
316         When replacing an existing feature in the registry, make sure to
317         continue holding a reference until we've replaced the name string
318         within our feature hash table. Make sure to use g_hash_table_replace
319         instead of g_hash_table_insert to ensure the new name string is used
320         as a key instead of the old one that we're about to free.
321         Fixes: #462085
323 2007-07-31  Jan Schmidt  <thaytan@mad.scientist.com>
325         * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
326         (gst_plugin_feature_set_name):
327         Revert patch from #459466 until after the release and we can work
328         out exactly what the problem is (if any).
330 2007-07-26  Tim-Philipp Müller  <tim at centricular dot net>
332         * docs/gst/gstreamer-sections.txt:
333         * gst/gsttaglist.c:
334         * gst/gsttaglist.h:
335           API: add GST_TAG_LICENSE_URI and GST_TAG_COPYRIGHT_URI (#451939).
337 2007-07-26  Jan Schmidt  <thaytan@mad.scientist.com>
339         * docs/libs/Makefile.am:
340         Include our build-prefix libs and includes before the generic ones to
341         avoid linking against the installed libs when we want the build-tree
342         ones.
344 2007-07-26  Tim-Philipp Müller  <tim at centricular dot net>
346         Patch by: Steve Fink  <sphink gmail com>
348         * docs/pwg/building-testapp.xml:
349           Mention that GST_PLUGIN_PATH or --gst-plugin-path might be needed
350           if people try to build or install the example from the plugin
351           template against a GStreamer from package using the configure
352           defaults.
354 2007-07-25  Tim-Philipp Müller  <tim at centricular dot net>
356         Patch by: Steve Fink  <sphink gmail com>
358         * tools/gst-inspect.1.in:
359           Document --print-all and --print-plugin-auto-install-info command
360           line options in man page.
362 2007-07-25  Wim Taymans  <wim.taymans@gmail.com>
364         * docs/gst/gstreamer-sections.txt:
365         Add docs for new api function.
367 2007-07-25  Wim Taymans  <wim.taymans@gmail.com>
369         * gst/gstelementfactory.c: (gst_element_factory_has_interface):
370         * gst/gstelementfactory.h:
371         API: gst_element_factory_has_interface()
372         Added method to check if an element factory implements a named
373         interface.
375 2007-07-25  Stefan Kost  <ensonic@users.sf.net>
377         * configure.ac:
378         * docs/gst/gstreamer.types.in:
379           Another conditional doc check.
381         * gst/gstmessage.c:
382         * gst/gstparamspecs.h:
383         * gst/gstregistrybinary.c: (gst_registry_binary_read_cache):
384         * gst/gstvalue.c:
385         * gst/gstxml.h:
386           API-doc fixes.
388 2007-07-24  Stefan Kost  <ensonic@users.sf.net>
390         * gst/gstregistrybinary.c: (gst_registry_binary_check_magic),
391         (gst_registry_binary_load_feature),
392         (gst_registry_binary_load_plugin),
393         (gst_registry_binary_read_cache):
394           Print error just once and with additional info.
396 2007-07-24  Stefan Kost  <ensonic@users.sf.net>
398         * libs/gst/base/gsttypefindhelper.c: (helper_find_peek),
399         (helper_find_suggest), (helper_find_get_length),
400         (gst_type_find_helper_get_range), (buf_helper_find_suggest),
401         (gst_type_find_helper_for_buffer):
402           Cleanup the typefindhelper code and add private doc comments.
404 2007-07-24  Edward Hervey  <bilboed@bilboed.com>
406         * plugins/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
407         (gst_capsfilter_transform_size), (gst_capsfilter_prepare_buf):
408         Fix capsfilter for cases where the caps set on capsfilter will provide
409         additional information.
410         Fixes #449197
412 2007-07-24  Stefan Kost  <ensonic@users.sf.net>
414         * gst/gsttypefindfactory.c:
415           Fix docs that recommened wrong function to use.
417 2007-07-23  Stefan Kost  <ensonic@users.sf.net>
419         * tools/gst-inspect.c: (print_plugin_features):
420           Also give media-type for typefinders in element output.
422 2007-07-23  Stefan Kost  <ensonic@users.sf.net>
424         * gst/gstregistry.c: (gst_registry_init), (gst_registry_finalize),
425         (gst_registry_remove_features_for_plugin_unlocked),
426         (gst_registry_add_feature), (gst_registry_remove_feature),
427         (gst_registry_lookup_feature_locked):
428         * gst/gstregistry.h:
429           Speed up gst_registry_lookup_feature_locked() by using a hashmap.
430           Fixes #459501.
432 2007-07-23  Stefan Kost  <ensonic@users.sf.net>
434         * gst/gstpluginfeature.c: (gst_plugin_feature_finalize),
435         (gst_plugin_feature_set_name):
436           Avoid double memory usage for pluginfeature names. Fixes #459466.
438 2007-07-22  Tim-Philipp Müller  <tim at centricular dot net>
440         * gst/gstpad.h:
441           Small addition to GST_FLOW_IS_FATAL() docs: mention that elements
442           driving the pipeline may need to explicitly check for NOT_LINKED as
443           well, since IS_FATAL doesn't cover that.
445 2007-07-22  Tim-Philipp Müller  <tim at centricular dot net>
447         * docs/pwg/advanced-types.xml:
448           Fix typo and duplicate entry in video formats list.
450 2007-07-22  Sebastian Dröge  <slomo@circular-chaos.org>
452         * libs/gst/controller/gstinterpolation.c:
453         Also round to the nearest int when using cubic interpolation.
455 2007-07-19  Jan Schmidt  <thaytan@noraisin.net>
457         * libs/gst/controller/gstinterpolation.c:
458         When linearly interpolating integer types, round to the nearest int
459         by adding 0.5. Don't do it for float/double types.
460         Fixes the failing controller test on my machine, which is somehow
461         rounding differently than on the buildbots.
463 2007-07-20  Stefan Kost  <ensonic@users.sf.net>
465         * tools/gst-plot-timeline.py:
466           Better log parsing (categories can have -). Adjust text vs. lines, so
467           that they span the same y-range.        
469 2007-07-20  Stefan Kost  <ensonic@users.sf.net>
471         * docs/random/ensonic/audiobaseclasses.txt:
472         * docs/random/ensonic/dynlink.txt:
473         * docs/random/ensonic/profiling.txt:
474           Save my thoughts.
476         * docs/random/moving-plugins:
477           Add note to use g_assert type macros.
479 2007-07-20  Stefan Kost  <ensonic@users.sf.net>
481         * configure.ac:
482         * libs/gst/check/Makefile.am:
483           Add libm check as we use in for plugins.
485 2007-07-18  Jan Schmidt  <thaytan@noraisin.net>
487         * gst/gstbin.c: (gst_bin_continue_func):
488         Check that the state_cookie hasn't changed since the continue_func
489         was scheduled. Avoids problems where the state changes back to
490         something it shouldn't be because it was changed in the meantime.
492 2007-07-17  Stefan Kost  <ensonic@users.sf.net>
494         * gst/gstregistrybinary.c: (gst_registry_binary_save_const_string),
495         (gst_registry_binary_save_string),
496         (gst_registry_binary_save_pad_template),
497         (gst_registry_binary_save_feature),
498         (gst_registry_binary_save_plugin),
499         (gst_registry_binary_load_feature),
500         (gst_registry_binary_load_plugin),
501         (gst_registry_binary_read_cache):
502           Fix memory leak. Be less verbose in the log.
504 2007-07-16  Jan Schmidt  <thaytan@mad.scientist.com>
506         * tests/check/elements/.cvsignore:
507         Add file to cvsignore as commanded.
509 2007-07-16  Jan Schmidt  <thaytan@mad.scientist.com>
511         * tests/check/elements/multiqueue.c: (mq_dummypad_chain),
512         (mq_dummypad_event), (run_output_order_test):
513         Use a GStaticMutex to protect all cases where libcheck
514         fail_if/fail_unless macros might be called from multiple threads
515         simultaneously to avoid errors like:
516           "check_pack.c:107: :-1081725400:Bad message type arg"
518 2007-07-16  Jan Schmidt  <thaytan@mad.scientist.com>
520         * tests/check/pipelines/stress.c: (GST_START_TEST):
521         Make sure we set the pipeline back to the NULL state before
522         dropping our final reference.
524 2007-07-16  Jan Schmidt  <thaytan@mad.scientist.com>
526         * tests/check/elements/tee.c: (GST_START_TEST):
527         Make the tee stress-test a little less stressful so it doesn't just
528         time out on slow-machines, and remove a small race when it's starting 
529         up by adding a get_state() call.
531 2007-07-16  Stefan Kost  <ensonic@users.sf.net>
533         * gst/gst.c:
534           Avoid reading registry twice on startup. Fixes #457322.
536 2007-07-13  Jan Schmidt  <thaytan@mad.scientist.com>
538         * pkgconfig/gstreamer-check-uninstalled.pc.in:
539         * pkgconfig/gstreamer-check.pc.in:
540         Substitute the CFLAGS for libcheck into our .pc file too so that
541         dependent modules will pick it up properly if libcheck is installed
542         into some other prefix.
544 2007-07-13  Jan Schmidt  <thaytan@mad.scientist.com>
546         * configure.ac:
547         Revert the pkg-config check for libcheck, since it pulls in the
548         wrong non-PIC libcheck.a on Ubuntu and probably Fedora too. We need
549         a proper solution, either from the check project, or something else.
551 2007-07-12  Stefan Kost  <ensonic@users.sf.net>
553         * configure.ac:
554           Use pkg-config to locate check.
556 2007-07-10  Stefan Kost  <ensonic@users.sf.net>
558         * gst/gsttaglist.c:
559           Fix doc syntax.
561         * gst/gstutils.c:
562         * gst/gstutils.h:
563           Add deprecation guards.
565         * libs/gst/base/gstcollectpads.h:
566           Don't document object (this is implicitly private).
568 2007-07-08  Tim-Philipp Müller  <tim at centricular dot net>
570         * gst/gststructure.c: (gst_structure_parse_value):
571           When deserialising foo=bar without a type cast, check if it's a
572           boolean before falling back to a string type, otherwise things like
573           audiotestsrc ! audio/x-raw-int,signed=true ! fakesink won't work,
574           because the filtercaps end up having a signed=(string)true field,
575           which causes problems later when intersection caps.
577         * tests/check/gst/gststructure.c: (GST_START_TEST):
578           Add a unit test for this.
580 2007-07-06  Sebastian Dröge  <slomo@circular-chaos.org>
582         Reviewed by: Stefan Kost <ensonic@users.sf.net>
584         * libs/gst/controller/Makefile.am:
585         * libs/gst/controller/gstcontroller.c:
586         (gst_controlled_property_add_interpolation_control_source),
587         (gst_controlled_property_new), (gst_controlled_property_free),
588         (gst_controller_find_controlled_property),
589         (gst_controller_new_valist), (gst_controller_new_list),
590         (gst_controller_new), (gst_controller_remove_properties_valist),
591         (gst_controller_remove_properties_list),
592         (gst_controller_remove_properties),
593         (gst_controller_set_property_disabled),
594         (gst_controller_set_disabled), (gst_controller_set_control_source),
595         (gst_controller_get_control_source), (gst_controller_get),
596         (gst_controller_sync_values), (gst_controller_get_value_array),
597         (_gst_controller_dispose), (gst_controller_get_type),
598         (gst_controlled_property_set_interpolation_mode),
599         (gst_controller_set), (gst_controller_set_from_list),
600         (gst_controller_unset), (gst_controller_unset_all),
601         (gst_controller_get_all), (gst_controller_set_interpolation_mode):
602         * libs/gst/controller/gstcontroller.h:
603         * libs/gst/controller/gstcontrollerprivate.h:
604         * libs/gst/controller/gstcontrolsource.c:
605         (gst_control_source_class_init), (gst_control_source_init),
606         (gst_control_source_get_value),
607         (gst_control_source_get_value_array), (gst_control_source_bind):
608         * libs/gst/controller/gstcontrolsource.h:
609         * libs/gst/controller/gsthelper.c: (gst_object_set_control_source),
610         (gst_object_get_control_source):
611         * libs/gst/controller/gstinterpolation.c:
612         (gst_interpolation_control_source_find_control_point_node),
613         (gst_interpolation_control_source_get_first_value),
614         (_interpolate_none_get), (interpolate_none_get),
615         (interpolate_none_get_boolean_value_array),
616         (interpolate_none_get_enum_value_array),
617         (interpolate_none_get_string_value_array),
618         (_interpolate_trigger_get), (interpolate_trigger_get),
619         (interpolate_trigger_get_boolean_value_array),
620         (interpolate_trigger_get_enum_value_array),
621         (interpolate_trigger_get_string_value_array):
622         * libs/gst/controller/gstinterpolationcontrolsource.c:
623         (gst_control_point_free), (gst_interpolation_control_source_reset),
624         (gst_interpolation_control_source_new),
625         (gst_interpolation_control_source_set_interpolation_mode),
626         (gst_interpolation_control_source_bind),
627         (gst_control_point_compare), (gst_control_point_find),
628         (gst_interpolation_control_source_set_internal),
629         (gst_interpolation_control_source_set),
630         (gst_interpolation_control_source_set_from_list),
631         (gst_interpolation_control_source_unset),
632         (gst_interpolation_control_source_unset_all),
633         (gst_interpolation_control_source_get_all),
634         (gst_interpolation_control_source_get_count),
635         (gst_interpolation_control_source_init),
636         (gst_interpolation_control_source_finalize),
637         (gst_interpolation_control_source_dispose),
638         (gst_interpolation_control_source_class_init):
639         * libs/gst/controller/gstinterpolationcontrolsource.h:
640         * libs/gst/controller/gstinterpolationcontrolsourceprivate.h:
641         API: Refactor GstController into the core controller which can take
642         a GstControlSource for providing actual values for timestamps.
643         Implement a interpolation control source and use this for backward
644         compatibility, deprecate a bunch of functions that are now handled
645         by GstControlSource or GstInterpolationControlSource.
646         Make it possible to disable the controller completely or only for
647         specific properties. Fixes #450711.
648         * docs/libs/gstreamer-libs-docs.sgml:
649         * docs/libs/gstreamer-libs-sections.txt:
650         * docs/libs/gstreamer-libs.types:
651         Add new functions and classes to the docs.
652         * tests/check/libs/controller.c: (GST_START_TEST),
653         (gst_controller_suite):
654         * tests/examples/controller/audio-example.c: (main):
655         Port unit test and example to the new API and add some new
656         unit tests.
658 2007-07-05  Wim Taymans  <wim.taymans@gmail.com>
660         Patch by: Mark Nauwelaerts <manauw at skynet be>
662         * plugins/elements/gstmultiqueue.c:
663         (gst_multi_queue_get_internal_links), (apply_buffer),
664         (single_queue_overrun_cb), (gst_single_queue_new):
665         Implement non-default GstPadIntLinkFunction for multiqueue pads so that
666         the pipeline layout can be tracked correctly. Fixes #453732.
668 2007-07-05  Stefan Kost  <ensonic@users.sf.net>
670         * docs/gst/Makefile.am:
671         * docs/libs/Makefile.am:
672         * docs/plugins/Makefile.am:
673           Simplify --extra-dir as gtkdoc scans recursively.
675 2007-07-03  Wim Taymans  <wim.taymans@gmail.com>
677         * tools/gst-launch.c: (main):
678         When we got an error, there is no point in waiting for preroll when
679         shutting down.
681 2007-07-03  Wim Taymans  <wim.taymans@gmail.com>
683         * plugins/elements/gsttee.c: (gst_tee_base_init),
684         (gst_tee_request_new_pad), (gst_tee_release_pad),
685         (gst_tee_find_buffer_alloc), (gst_tee_buffer_alloc),
686         (gst_tee_do_push), (clear_pads), (gst_tee_handle_buffer),
687         (gst_tee_chain):
688         Be a lot smarter when deciding what srcpad to use for proxying
689         the buffer_alloc. Also handle pad added/removed when doing so.
690         Fixes #357959.
691         Keep track of what pads we already pushed on in case we have pads
692         added/removed while pushing. Fixes #374639 
694         * tests/check/Makefile.am:
695         * tests/check/elements/tee.c: (handoff), (GST_START_TEST),
696         (tee_suite):
697         Added unit test for pad resync.
699 2007-07-01  Thomas Vander Stichele  <thomas at apestaart dot org>
701         * po/nl.po:
702         * po/sv.po:
703           Updated translations.
705 2007-07-01  Thomas Vander Stichele  <thomas at apestaart dot org>
707         translation by: Tommi Vainikainen <Tommi.Vainikainen@iki.fi>
709         * po/LINGUAS:
710         * po/fi.po:
711           Added new Finnish translation.
713 2007-06-28  Wim Taymans  <wim@fluendo.com>
715         * plugins/elements/gstmultiqueue.c: (apply_buffer),
716         (single_queue_overrun_cb):
717         When figuring out when a queue is filled, use our internal time estimate
718         based on segments, just like check_full does.
720 2007-06-27  Stefan Kost  <ensonic@users.sf.net>
722         * gst/gstminiobject.c: (gst_mini_object_get_type):
723           Remove 3 do-nothing methods.
725 2007-06-27  Wim Taymans  <wim@fluendo.com>
727         Patch by: Tim Angus <tim at ngus dot net>
729         * plugins/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
730         (gst_capsfilter_set_property):
731         Take a reference instead of a copy when setting "caps".
732         Fix documentation to clarify this behaviour. Fixes #449414.
734 2007-06-27  Stefan Kost  <ensonic@users.sf.net>
736         * gst/gstindexfactory.c: (gst_index_factory_get_type):
737         * gst/gstplugin.c: (gst_plugin_init):
738         * gst/gstpluginfeature.c: (gst_plugin_feature_init):
739         * gst/gstquery.c: (gst_query_get_type):
740         * gst/gstregistry.c: (gst_registry_init):
741         * gst/gsturi.c: (gst_uri_handler_base_init):
742           Remove empty instance_init() functions to save relocs and lessen the
743           noise. Remove some of the function prototypes that are doubled by
744           G_DEFINE_TYPE.
745           
746 2007-06-27  Wim Taymans  <wim@fluendo.com>
748         Patch by: Étienne Noreau-Hébert <etienne at deepunder dot org>
750         * gst/gstghostpad.c: (gst_proxy_pad_save_thyself):
751         Add peer and direction in the XML serialisation of ghostpads.
752         Fixes #449226.
754 2007-06-26  Stefan Kost  <ensonic@users.sf.net>
756         * configure.ac:
757           Preserve useful information, thanks Tim.
759 2007-06-26  Jan Schmidt  <thaytan@noraisin.net>
761         * plugins/elements/gstmultiqueue.c: (gst_multi_queue_init),
762         (gst_single_queue_flush), (apply_segment), (apply_buffer),
763         (gst_single_queue_push_one), (gst_multi_queue_loop),
764         (gst_multi_queue_sink_activate_push), (gst_multi_queue_sink_event),
765         (gst_multi_queue_src_activate_push), (wake_up_next_non_linked),
766         (compute_high_id), (gst_single_queue_new):
767         * plugins/elements/gstmultiqueue.h:
768         Take the multiqueue lock when updating the fill level so we don't get
769         confused. 
771         After applying a buffer or event on the src pad segment, make sure to
772         call gst_data_queue_limits_changed() to get the data queue to unblock
773         and check the filled state again.
774         
775         Rework the not-linked pad handling so the logic is that not-linked 
776         pads can push as fast as they like, but only so they never get 
777         ahead of any linked pads.
779         * tests/check/elements/multiqueue.c: (mq_sinkpad_to_srcpad),
780         (mq_dummypad_getcaps), (mq_dummypad_chain), (mq_dummypad_event),
781         (run_output_order_test), (GST_START_TEST), (multiqueue_suite):
783         Add a test to check that not-linked pads always stay behind
784         linked pads.
786         Fixes: #430682
788 2007-06-26  Jan Schmidt  <thaytan@mad.scientist.com>
790         * docs/random/release:
791           Some updates to the release procedure.
793 2007-06-26  Stefan Kost  <ensonic@users.sf.net>
795         * gst/gstelementfactory.c: (__gst_element_details_clear):
796           Microoptimization that saves stunning 80 bytes.
798 2007-06-25  Stefan Kost  <ensonic@users.sf.net>
800         * docs/plugins/gstreamer-plugins.args:
801         * docs/plugins/inspect/plugin-coreelements.xml:
802         * docs/plugins/inspect/plugin-coreindexers.xml:
803           Update docs with caps info.
805 2007-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
807         * po/it.po:
808           Updated Italian translation.
810 2007-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
812         * ChangeLog:
813         * po/vi.po:
814           Update Vietnamese translations.
816 2007-06-21  Tim-Philipp Müller  <tim at centricular dot net>
818         * libs/gst/base/gstbasesink.c:
819           Remove unused signal enum.
821 2007-06-21  Jan Schmidt  <thaytan@mad.scientist.com>
823         * docs/gst/gstreamer-sections.txt:
824         * gst/gstelement.c:
825         * gst/gstutils.c: (gst_type_register_static_full):
826         Beef up and include the docs for gst_type_register_static_full and
827         gst_element_class_set_details_simple and add the API keyword
828         in the ChangeLog.
830 2007-06-21  Jan Schmidt  <thaytan@mad.scientist.com>
832         * plugins/elements/gstmultiqueue.c: (gst_multi_queue_set_property),
833         (update_time_level), (gst_single_queue_push_one),
834         (gst_multi_queue_chain), (gst_multi_queue_sink_event),
835         (single_queue_overrun_cb), (single_queue_underrun_cb),
836         (single_queue_check_full):
837         Fix setting max-* properties after adding queues.
838         Use IS_FILLED for checking visible items.
839         Signal overrun if multiple queues overrun.
840         Add extra debug output.
841         Patch by: Wim Taymans <wim@fluendo.com>
843 2007-06-21  Stefan Kost  <ensonic@users.sf.net>
845         * gst/gstelement.c: (gst_element_class_set_details_simple):
846         * gst/gstelement.h:
847         * gst/gstutils.c: (gst_type_register_static_full):
848         * gst/gstutils.h:
849         * plugins/elements/gstcapsfilter.c: (gst_capsfilter_base_init):
850         * plugins/elements/gstfakesink.c: (gst_fake_sink_base_init):
851         * plugins/elements/gstfakesrc.c: (gst_fake_src_base_init):
852         * plugins/elements/gstfdsink.c: (gst_fd_sink_base_init):
853         * plugins/elements/gstfdsrc.c: (gst_fd_src_base_init):
854         * plugins/elements/gstfilesink.c: (gst_file_sink_base_init):
855         * plugins/elements/gstfilesrc.c: (gst_file_src_base_init):
856         * plugins/elements/gstidentity.c: (gst_identity_base_init):
857         * plugins/elements/gstmultiqueue.c: (gst_multi_queue_base_init):
858         * plugins/elements/gstqueue.c: (gst_queue_base_init),
859         (apply_buffer), (gst_queue_chain):
860         * plugins/elements/gsttee.c: (gst_tee_base_init):
861         * plugins/elements/gsttypefindelement.c:
862         (gst_type_find_element_base_init),
863         (gst_type_find_element_class_init):
864           Saving relocations for GTypeInfo and GstElementDetails. Fixes #437457.
865           API: add gst_type_register_static_full
866           API: add gst_element_class_set_details_simple
868 2007-06-21  Tim-Philipp Müller  <tim at centricular dot net>
870         * docs/pwg/advanced-types.xml:
871           Fix typo in iana.org URI.
873 2007-06-19  Andy Wingo  <wingo@pobox.com>
875         * tests/check/pipelines/simple-launch-lines.c
876         (test_state_change_returns): Enable pull-mode tests now that
877         basesink has been fixed.
879         * libs/gst/base/gstbasesink.c (gst_base_sink_needs_preroll):
880         Changed from gst_base_sink_is_prerolled, reversing the sense of
881         the return value. Returns FALSE also if the sink is in pull mode,
882         in which case it needs no preroll.
883         (gst_base_sink_query, gst_base_sink_change_state): Update for
884         needs_preroll change.
885         (gst_base_sink_change_state): Add a case for READY_TO_PAUSED after
886         chaining up, in which we return SUCCESS directly if we activated
887         in pull mode instead of ASYNC. Involves countering an async_start
888         message sent before chaining up; not sure if this is correct, in
889         an ideal world we only send async-start when activating in push
890         mode.
892         * tests/check/pipelines/simple-launch-lines.c
893         (test_state_change_returns): New test, partially disabled until
894         basesink is fixed.
896 2007-06-19  Wim Taymans  <wim@fluendo.com>
898         * plugins/elements/gstmultiqueue.c: (apply_buffer),
899         (gst_multi_queue_sink_event):
900         Fix event leak.
902 2007-06-19  Wim Taymans  <wim@fluendo.com>
904         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
905         (gst_bin_change_state_func), (bin_push_state_continue),
906         (bin_handle_async_start), (bin_handle_async_done),
907         (gst_bin_handle_message_func):
908         Move the common code for posting state-change messages into
909         one function.
910         Broadcast the state signal after we posted the messages.
911         Mark the bin as busy when it's doing a state-change.
912         Make sure async-start/done messages don't interfere with the bin's
913         state when it's busy.
914         After the state change, let the bin check which elements completed the
915         state change while it was busy so that it can update its state.
917 2007-06-19  Jan Schmidt  <thaytan@mad.scientist.com>
919         * docs/random/release:
920         Add a note about updating the doap file to the release checklist
922 2007-06-18  Wim Taymans  <wim@fluendo.com>
924         * plugins/elements/gstmultiqueue.c: (apply_buffer),
925         (gst_single_queue_push_one), (gst_multi_queue_chain),
926         (gst_multi_queue_sink_event):
927         Make sure we don't reference the buffer/event after we have given away
928         ownership in the queue.
930 2007-06-18  Wim Taymans  <wim@fluendo.com>
932         * plugins/elements/gstmultiqueue.c: (gst_single_queue_flush),
933         (gst_multi_queue_chain), (gst_multi_queue_sink_event):
934         Update queue state _after_ adding the item in the queue because else we
935         could end up being full without the element added yet.
937 2007-06-18  Wim Taymans  <wim@fluendo.com>
939         * gst/gstbin.c: (gst_bin_init), (gst_bin_add_func),
940         (gst_bin_remove_func), (gst_bin_get_state_func),
941         (gst_bin_element_set_state), (gst_bin_continue_func),
942         (bin_push_state_continue), (bin_handle_async_start),
943         (bin_handle_async_done), (gst_bin_handle_message_func):
944         * gst/gstbin.h:
945         Immediatly commit the toplevel bin state when receiving an async-done
946         message. This enables us to avoid spawning a thread to commit the state
947         in some common cases and it also avoids some races.
948         Avoid spawning a state thread when adding/removing async elements to a
949         toplevel bin. Instead we immediatly update the bin state.
950         Get rid of iterating all the children when getting the state in the bin
951         because it is now always up-to-date.
952         Fix bug where locked elements would always return _SUCCESS even it they
953         returned NO_PREROLL before being locked.
954         Fix the order of the state_change, async-start/done messages that was
955         sometimes incorrect.
956         Mark the state_dirty field as deprecated, we don't need it anymore as we
957         are always up-to-date.
959         * gst/gstelement.c: (gst_element_get_state_func),
960         (gst_element_continue_state):
961         Small debug inprovements.
962         Return the previous element state return when nothing is pending instead
963         of blindly returning SUCCESS.
965         * tests/check/generic/sinks.c: (GST_START_TEST), (pad_blocked_cb),
966         (gst_sinks_suite):
967         Add a whole bunch of new testcases.
969 2007-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
971         * po/uk.po:
972         * po/vi.po:
973           Update translations.
975 2007-06-15  Jan Schmidt  <thaytan@mad.scientist.com>
977         * gst/gstpad.c:
978         Fix typo in the docs.
980 2007-06-15  Wim Taymans  <wim@fluendo.com>
982         * docs/libs/gstreamer-libs-sections.txt:
983         Add docs for new methods.
985 2007-06-15  Wim Taymans  <wim@fluendo.com>
987         * plugins/elements/gstmultiqueue.c: (gst_multi_queue_item_destroy),
988         (gst_multi_queue_item_new):
989         Don't use GSlice because we don't depend on >= 2.10 yet.
991 2007-06-15  Wim Taymans  <wim@fluendo.com>
993         * plugins/elements/gstmultiqueue.c: (gst_single_queue_flush),
994         (update_time_level), (apply_segment), (apply_buffer),
995         (gst_single_queue_push_one), (gst_multi_queue_item_new),
996         (gst_multi_queue_loop), (gst_multi_queue_sink_activate_push),
997         (gst_multi_queue_sink_event), (single_queue_overrun_cb),
998         (single_queue_underrun_cb), (single_queue_check_full):
999         Remove debug printf.
1001 2007-06-15  Wim Taymans  <wim@fluendo.com>
1003         * libs/gst/base/gstdataqueue.c: (gst_data_queue_cleanup),
1004         (gst_data_queue_finalize), (gst_data_queue_locked_is_empty),
1005         (gst_data_queue_set_flushing), (gst_data_queue_push),
1006         (gst_data_queue_pop), (gst_data_queue_drop_head),
1007         (gst_data_queue_limits_changed), (gst_data_queue_get_level):
1008         * libs/gst/base/gstdataqueue.h:
1009         Various cleanups.
1010         Added methods to get the current levels and to inform the queue that the
1011         'full' limits changed.
1013         * plugins/elements/gstmultiqueue.c: (gst_multi_queue_init),
1014         (gst_multi_queue_finalize), (gst_multi_queue_set_property),
1015         (gst_single_queue_flush), (update_time_level), (apply_segment),
1016         (apply_buffer), (gst_single_queue_push_one),
1017         (gst_multi_queue_item_steal_object),
1018         (gst_multi_queue_item_destroy), (gst_multi_queue_item_new),
1019         (gst_multi_queue_loop), (gst_multi_queue_chain),
1020         (gst_multi_queue_sink_activate_push), (gst_multi_queue_sink_event),
1021         (gst_multi_queue_getcaps), (gst_multi_queue_src_activate_push),
1022         (gst_multi_queue_src_query), (single_queue_overrun_cb),
1023         (single_queue_underrun_cb), (single_queue_check_full),
1024         (gst_single_queue_new):
1025         Keep track of time in the queue by measuring the difference between
1026         running_time on input and output. This gives more accurate results and
1027         can compensate for segments correctly.
1028         Make a queue by default only 5 buffers deep. We will now increase the
1029         buffer size depending on the filledness of the other queues.
1030         Factor out commong flush code.
1031         Make sure we don't add additional refcounts to buffers when we can avoid
1032         it.
1033         Propagate GstFlowReturn differently.
1034         Use GSlice for intermediate GstMultiQueueItems.
1035         Keep track of EOS.
1036         Resize queues on over and underruns based on filled level of other
1037         queues.
1038         When checking if the queue is filled, prefer to measure in time if we
1039         can and fall back to bytes when no time is known.
1041         * plugins/elements/gstqueue.c:
1042         Fix return value.
1044 2007-06-15  Wim Taymans  <wim@fluendo.com>
1046         * libs/gst/base/gstbasetransform.c:
1047         (gst_base_transform_sink_event):
1048         Work around the brokenness of the event vmethod in basetransform. Prefer
1049         to return TRUE when the subclass returned FALSE (meaning don't forward
1050         the event). 
1052         * libs/gst/base/gstbasetransform.h:
1053         Clarify the docs.
1055 2007-06-15  Wim Taymans  <wim@fluendo.com>
1057         * gst/gstpad.c: (gst_pad_push_event), (gst_pad_send_event):
1058         * libs/gst/base/gstbasesrc.c: (gst_base_src_query_latency),
1059         (gst_base_src_default_query), (gst_base_src_get_range),
1060         (gst_base_src_start):
1061         * tests/check/pipelines/parse-launch.c: (setup_pipeline):
1062         Improve debugging.
1064 2007-06-15  Stefan Kost  <ensonic@users.sf.net>
1066         * docs/pwg/advanced-types.xml:
1067           Added more formats to caps table.
1069 2007-06-15  Stefan Kost  <ensonic@users.sf.net>
1071         * tools/gst-launch.c: (main):
1072           Remove crufy code. GOption does not need this workaround.
1074 2007-06-14  Stefan Kost  <ensonic@users.sf.net>
1076         * libs/gst/controller/gstcontroller.c:
1077         (gst_controlled_property_set_interpolation_mode):
1078           Fix wrong getter for enums in controller.
1080 2007-06-14  Tim-Philipp Müller  <tim at centricular dot net>
1082         * libs/gst/check/gstcheck.c: (gst_check_init):
1083           Intercept criticals and warnings in the Gst-Phonon log domain, so
1084           ASSERT_CRITICAL() etc. can be used in gst-phonon's unit tests as
1085           well.
1086         
1087 2007-06-14  Edward Hervey  <edward@fluendo.com>
1089         * gst/gstparamspecs.c: (_gst_param_fraction_validate):
1090         Since this file doesn't include "gst.h" it will not go through the
1091         macros that disable GST_LOG if debugging was disabled.
1093 2007-06-14  Tim-Philipp Müller  <tim at centricular dot net>
1095         * libs/gst/check/Makefile.am:
1096         * libs/gst/check/gstcheck.h:
1097         * pkgconfig/gstreamer-check-uninstalled.pc.in:
1098         * pkgconfig/gstreamer-check.pc.in:
1099           Ugly 'fix' for the controller unit test on the p5 bot: in
1100           fail_unless_equals_float() check whether the values are 'almost
1101           equal' by allowing a small absolute error, which should be good
1102           enough for our use cases (normal numbers and values close to 0).
1103           Proper fixage left to floating point arithmetic aficionados.
1105 2007-06-14  Stefan Kost  <ensonic@users.sf.net>
1107         * libs/gst/base/gstbasesink.c: (gst_base_sink_reset_qos),
1108         (gst_base_sink_render_object), (gst_base_sink_get_position):
1109           Add two breaks thats where missing.
1111 2007-06-14  Tim-Philipp Müller  <tim at centricular dot net>
1113         * docs/libs/gstreamer-libs-sections.txt:
1114         * libs/gst/check/gstcheck.h:
1115           API: add fail_unless_equals_float() and assert_equals_float().
1116           Add documentation for some of the macros.
1118         * tests/check/libs/controller.c: (GST_START_TEST):
1119           Use newly-added asserts.
1121 2007-06-14  Stefan Kost  <ensonic@users.sf.net>
1123         * gst/gstpad.c: (gst_pad_alloc_buffer_full), (gst_pad_push):
1124           Show the caps change in the log to help spotting the case of not
1125           exactly matching caps.
1127 2007-06-14  Tim-Philipp Müller  <tim at centricular dot net>
1129         * docs/pwg/building-boiler.xml:
1130           Fix typos, spotted by Thijs Vermeir (#447190).
1132 2007-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
1134         * docs/plugins/tmpl/.cvsignore:
1135         Ignore file to keep the buildbots happy
1137 2007-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
1139         * docs/plugins/Makefile.am:
1140         * docs/plugins/gstreamer-plugins-docs.sgml:
1141         * docs/plugins/gstreamer-plugins-sections.txt:
1142         Pull fdsink into the docs too.
1144 2007-06-11  Sebastian Dröge  <slomo@circular-chaos.org>
1146         * libs/gst/controller/gstinterpolation.c:
1147         Actually use the new functions with min/max checks for the trigger and
1148         none interpolation modes for get() and get_value_array() instead of
1149         just the latter.
1151 2007-06-10  Sebastian Dröge  <slomo@circular-chaos.org>
1153         * libs/gst/controller/gstcontroller.c:
1154         (gst_controlled_property_free):
1155         Unset the minimum and maximum GValues when freeing the corresponding
1156         GstControllerProperty struct.
1158 2007-06-09  Sebastian Dröge  <slomo@circular-chaos.org>
1160         * libs/gst/controller/gstcontroller.c:
1161         (gst_controlled_property_new):
1162         * libs/gst/controller/gstcontrollerprivate.h:
1163         * libs/gst/controller/gstinterpolation.c:
1164         (gst_controlled_property_find_control_point_node),
1165         (interpolate_none_get), (interpolate_none_get_enum_value_array),
1166         (interpolate_none_get_string_value_array),
1167         (interpolate_trigger_get),
1168         (interpolate_trigger_get_enum_value_array),
1169         (interpolate_trigger_get_string_value_array):
1170         Protect against values larger or smaller than the minimum or maximum
1171         allowed value for the property when using values that can be compared.
1173         Optimize trigger interpolator a bit by taking the last requested value
1174         into account instead of always looping through the complete list.
1176         Fix coding style a bit, everywhere else we use "return foo" instead
1177         of "return (foo)".
1178         
1179         * tests/check/libs/controller.c: (GST_START_TEST),
1180         (gst_controller_suite):
1181         Add unit test for the protection against too large or too small
1182         values.
1184 2007-06-08  Sebastian Dröge  <slomo@circular-chaos.org>
1186         * docs/random/slomo/controller.txt:
1187         Add some thoughts about the future of the controller.
1189 2007-06-08  Wim Taymans  <wim@fluendo.com>
1191         * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
1192         Don't overflow in retimestamping code.
1194 2007-06-07  Sebastien Moutte  <sebastien@moutte.net>
1196         * libs/gst/controller/gstinterpolation.c: (DEFINE_CUBIC_GET):
1197         Use gst_util_guint64_to_gdouble for conversions.
1198         * win32/common/libgstreamer.def:
1199         Add new exported functions.
1201 2007-06-07  Tim-Philipp Müller  <tim at centricular dot net>
1203         * gst/gstutils.c:
1204           Small docs addition.
1206 2007-06-07  Stefan Kost  <ensonic@users.sf.net>
1208         * README:
1209           Remove that test line again.
1211 2007-06-07  Stefan Kost  <ensonic@users.sf.net>
1213         * README:
1214           Test commit mail sending.
1216 2007-06-07  Stefan Kost  <ensonic@users.sf.net>
1218         * configure.ac:
1219           Fix typo and test commit mail sending.
1221 2007-06-07  Stefan Kost  <ensonic@users.sf.net>
1223         * tests/examples/controller/audio-example.c:
1224           Improve comment and test commit mail sending.
1226 2007-06-07  Wim Taymans  <wim@fluendo.com>
1228         * gst/gstbin.c: (find_message), (bin_replace_message), (is_eos),
1229         (gst_bin_remove_func), (gst_bin_element_set_state),
1230         (bin_handle_async_start), (bin_handle_async_done),
1231         (gst_bin_handle_message_func):
1232         Add helper function to find messages.
1233         Generate the async-done messages together with the state change
1234         messages.
1235         Small cleanups in handling toplevel bins.
1237 2007-06-06  Tim-Philipp Müller  <tim at centricular dot net>
1239         * libs/gst/base/gstdataqueue.c:
1240         * libs/gst/base/gstdataqueue.h:
1241         * plugins/elements/gstmultiqueue.c: (gst_single_queue_push_one),
1242         (gst_multi_queue_item_new), (gst_multi_queue_chain),
1243         (gst_multi_queue_sink_event):
1244         * tests/check/elements/multiqueue.c: (multiqueue_suite):
1245           Fix multiqueue leaking buffers and events when downstream or the
1246           queue are flushing. Make refcounting assumptions explicit and
1247           document them (shouldn't break existing code that uses it other than
1248           maybe leak miniobjects, but that already happens anyway). Add unit
1249           test for the most common flushing case. Fixes #423700.
1250           
1251 2007-06-06  Sebastian Dröge  <slomo@circular-chaos.org>
1253         * libs/gst/controller/gstcontroller.c:
1254         Clarify docs: The get_all, get_value_array(s) functions
1255         don't modify the GObject properties.
1257 2007-06-06  Sebastian Dröge  <slomo@circular-chaos.org>
1259         * libs/gst/controller/gstcontroller.c:
1260         (gst_controlled_property_set_interpolation_mode),
1261         (gst_controlled_property_prepend_default),
1262         (gst_controlled_property_new), (gst_controller_set_unlocked),
1263         (gst_controller_set), (gst_controller_set_from_list),
1264         (gst_controller_unset), (gst_controller_unset_all):
1265         * libs/gst/controller/gstcontrollerprivate.h:
1266         * libs/gst/controller/gstinterpolation.c:
1267         Factor out the 'set' logic into gst_controller_set_unlocked for the
1268         gst_controller_set and gst_controller_set_from_list functions.
1270         To make life of the interpolators easier always add a control point
1271         at timestamp zero with the default value.
1273         In the linear interpolator make things more obvious by better variable
1274         naming (slope).
1276         Implement cubic interpolation mode (by using a natural cubic spline)
1277         and map the quadratic interpolation mode to this too (as quadratic
1278         doesn't make much sense, see discussion on the list).
1280         * tests/check/libs/controller.c: (GST_START_TEST),
1281         (gst_controller_suite):
1282         Add unit test for the cubic interpolation mode and check everywhere
1283         if the interpolation mode could be set as expected.
1285 2007-06-06  Tim-Philipp Müller  <tim at centricular dot net>
1287         * gst/gstparamspecs.c: (gst_param_spec_fraction_get_type):
1288           Don't use GLib-2.10 functions, we still depend on
1289           GLib-how-old-is-it-again-2.8.
1291 2007-06-06  Tim-Philipp Müller  <tim at centricular dot net>
1293         * docs/gst/gstreamer-sections.txt:
1294         * gst/Makefile.am:
1295         * gst/gst.c:
1296         * gst/gst.h:
1297         * gst/gstparamspecs.c: (_gst_param_fraction_init),
1298         (_gst_param_fraction_set_default), (_gst_param_fraction_validate),
1299         (_gst_param_fraction_values_cmp),
1300         (gst_param_spec_fraction_get_type), (gst_param_spec_fraction):
1301         * gst/gstparamspecs.h:
1302         * gst/gstvalue.c:
1303         * tests/check/Makefile.am:
1304         * tests/check/gst/.cvsignore:
1305         * tests/check/gst/gstparamspecs.c: (gst_dummy_obj_base_init),
1306         (gst_dummy_obj_class_init), (gst_dummy_obj_init),
1307         (gst_dummy_obj_set_property), (gst_dummy_obj_get_property),
1308         (GST_START_TEST), (gst_param_spec_suite):
1309           API: add GstParamSpecFraction, so elements can have fraction
1310           properties without lots of painful string parsing (#444648).
1312 2007-06-05  Wim Taymans  <wim@fluendo.com>
1314         * gst/gstobject.c: (gst_object_class_init):
1315         Fix signal signature.
1317         * gst/gstsegment.c:
1318         Add small clarification in the api docs.
1320         * plugins/elements/gstfilesrc.c: (gst_file_src_set_location):
1321         States are protected with object lock.
1323 2007-06-05  Jan Schmidt  <thaytan@mad.scientist.com>
1325         * AUTHORS:
1326         I should probably be listed as an author by now.
1328         * docs/random/release:
1329         Update the release doc
1331 2007-06-05  Tim-Philipp Müller  <tim at centricular dot net>
1333         * gst/gstvalue.c:
1334           Make docs for gst_value_compare() mention return enums that
1335           actually exist.
1337 2007-06-05  Jan Schmidt  <thaytan@mad.scientist.com>
1339         * configure.ac:
1340           Back to CVS
1342 === release 0.10.13 ===
1344 2007-06-05  Jan Schmidt <thaytan@mad.scientist.com>
1346         * configure.ac:
1347           releasing 0.10.13, "With or without you"
1349 2007-05-25  Wim Taymans  <wim@fluendo.com>
1351         * gst/gstbin.c: (bin_handle_async_done):
1352         Make sure that the child bin stops after completing the async state
1353         change so that the parent can continue the state change to PLAYING.
1354         Fixes #441159.
1356 2007-05-25  Wim Taymans  <wim@fluendo.com>
1358         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
1359         (unref_data), (gst_collect_pads_remove_pad),
1360         (gst_collect_pads_check_pads):
1361         Use additional refcounting to avoid crashes when dynamically adding and
1362         removing pads. Fixes #420206.
1364 2007-05-24  Wim Taymans  <wim@fluendo.com>
1366         * tools/gst-launch.c: (event_loop):
1367         When buffering goes from a two digit to a single digit number, make sure
1368         to remove the old second digit by writing a blank over it.
1370 2007-05-24  Tim-Philipp Müller  <tim at centricular dot net>
1372         * libs/gst/base/gstdataqueue.c:
1373           Eliminate tabs and trailing comma in enum list; fix some typos.
1375 2007-05-24  Wim Taymans  <wim@fluendo.com>
1377         * tests/check/gst/gstbin.c: (GST_START_TEST):
1378         Allow refcount of 3 and 4 because some state thread might still be busy
1379         with it.
1381 2007-05-24  Tim-Philipp Müller  <tim at centricular dot net>
1383         * plugins/elements/Makefile.am:
1384         * plugins/elements/gstmultiqueue.h:
1385         * plugins/elements/gstqueue.h:
1386           These are not installed headers, no need for padding.
1388 2007-05-24  Wim Taymans  <wim@fluendo.com>
1390         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_get_state_func),
1391         (gst_bin_continue_func):
1392         Enable latency for next release.
1393         Restore STATE_LOCK around recalc_state that was left out during the
1394         rewrite and could result in racy behaviour when _get_state and
1395         recalc_state are run concurrently. See #440463.
1397 2007-05-23  Wim Taymans  <wim@fluendo.com>
1399         * tests/check/gst/gstsystemclock.c: (store_callback),
1400         (GST_START_TEST):
1401         Improve test_async_order to also work when both timers are already
1402         expired when we get scheduled to check it.
1404 2007-05-22  Tim-Philipp Müller  <tim at centricular dot net>
1406         * gst/gstbin.c: (gst_bin_init), (gst_bin_dispose),
1407         (gst_bin_set_property), (gst_bin_get_property),
1408         (gst_bin_remove_func), (gst_bin_handle_message_func):
1409         * gst/gstbin.h:
1410           'private' is a c++ keyword, let's not use that in header files,
1411           otherwise c++ compilers will throw a tantrum.
1413 2007-05-22  Tim-Philipp Müller  <tim at centricular dot net>
1415         * plugins/elements/gstelements.c:
1416         * plugins/elements/gstfilesink.c: (gst_file_sink_do_seek),
1417         (gst_file_sink_get_current_offset):
1418         * plugins/indexers/gstindexers.c: (plugin_init):
1419           Use #ifdef for HAVE_XYZ for consistency.
1421         * tests/check/Makefile.am:
1422         * tests/check/elements/.cvsignore:
1423         * tests/check/elements/filesink.c: (setup_filesink),
1424         (cleanup_filesink), (GST_START_TEST), (filesink_suite):
1425           Add some unit tests for filesink.
1427 2007-05-22  Tim-Philipp Müller  <tim at centricular dot net>
1429         Patch by: Mark Nauwelaerts <manauw at skynet be>
1431         * plugins/elements/gstfilesink.c: (gst_file_sink_open_file),
1432         (gst_file_sink_query), (gst_file_sink_do_seek),
1433         (gst_file_sink_get_current_offset), (gst_file_sink_render):
1434         * plugins/elements/gstfilesink.h:
1435           Fix position reporting; rename data_written member to current_pos to
1436           reflect its real meaning (fixes #412648).
1438 2007-05-22  Edward Hervey  <edward@fluendo.com>
1440         * docs/gst/gstreamer-sections.txt:
1441         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
1442         (gst_bin_dispose), (gst_bin_set_property), (gst_bin_get_property),
1443         (gst_bin_remove_func), (gst_bin_handle_message_func):
1444         * gst/gstbin.h:
1445         Add a property for bins that handle the state change of their childs.
1446         Fixes #435880
1448 2007-05-22  Sebastian Dröge  <slomo@circular-chaos.org>
1450         * libs/gst/controller/gstinterpolation.c:
1451         Use an array of the correct type when using _get_value_array with
1452         linear interpolation.
1454 2007-05-22  Stefan Kost  <ensonic@users.sf.net>
1456         * gst/gstelement.c (gst_element_requires_clock,
1457           gst_element_provides_clock, gst_element_request_pad,
1458           gst_element_class_set_details, gst_element_class_set_details_simple,
1459           gst_element_default_send_event, gst_element_abort_state,
1460           gst_element_continue_state, gst_element_set_state,
1461           gst_element_set_state_func, iterator_activate_fold_with_resync):
1462         * gst/gstpad.c (gst_pad_activate_pull, gst_pad_set_getcaps_function,
1463           gst_pad_fixate_caps, gst_pad_configure_sink, gst_pad_configure_src,
1464           gst_pad_query, gst_pad_save_thyself, handle_pad_block, gst_pad_push,
1465           gst_pad_get_range, gst_pad_pull_range):
1466         * gst/gstpad.h (GST_PAD_LINK_SUCCESSFUL, GST_FLOW_CUSTOM_SUCCESS,
1467           GST_FLOW_NOT_SUPPORTED, GST_FLOW_IS_FATAL, GstPadActivateFunction,
1468           GstPadActivateModeFunction, GstPadChainFunction,
1469           GstPadGetCapsFunction, GstPadAcceptCapsFunction,
1470           GstPadFixateCapsFunction, GstPadTemplate):
1471         * gst/gstpipeline.c (gst_pipeline_change_state,
1472           gst_pipeline_set_new_stream_time, gst_pipeline_use_clock,
1473           gst_pipeline_set_clock, gst_pipeline_auto_clock,
1474           gst_pipeline_get_delay):
1475           Whitespace and docs fixes.
1477 2007-05-21  Sebastian Dröge  <slomo@circular-chaos.org>
1479         * libs/gst/controller/gstinterpolation.c:
1480         (interpolate_trigger_get_enum_value_array),
1481         (interpolate_trigger_get_string_value_array):
1482         Add support for retrieving value arrays when using the trigger
1483         interpolation mode. 
1485 2007-05-21  Sebastian Dröge  <slomo@circular-chaos.org>
1487         * libs/gst/controller/gstcontroller.c:
1488         (gst_controller_get_value_array):
1489         * libs/gst/controller/gstcontroller.h:
1490         Clarify the docs of gst_controller_get_value_array(): The array where
1491         the values should be written to must be allocated as there seems to be
1492         no way to get the size of a random GType. This doesn't change any
1493         behaviour. Also fix some typos all over the place and remove an unused,
1494         commented function that is not necessary as g_object_set() could be
1495         used instead.
1496         * tests/check/libs/controller.c: (GST_START_TEST),
1497         (gst_controller_suite):
1498         Add unit test for gst_controller_get_value_array().
1500 2007-05-21  Jan Schmidt  <thaytan@mad.scientist.com>
1502         * tests/check/gst/gstbuffer.c: (GST_START_TEST):
1504         Disable part of the gst_buffer_try_new_and_alloc test, because
1505         it can happily succeed on 64-bit systems where there's more address
1506         space available.
1508 2007-05-21  Sebastian Dröge  <slomo@circular-chaos.org>
1510         * tests/check/gst/gstpad.c: (GST_START_TEST), (gst_pad_suite):
1511         Add unit test for the improved caps checking from bug #421543.
1513 2007-05-21  Wim Taymans  <wim@fluendo.com>
1515         * docs/design/part-synchronisation.txt:
1516         Small addition.
1518         * gst/gstbin.c: (gst_bin_query):
1519         * plugins/elements/gstqueue.c: (apply_segment):
1520         Improve debugging.
1522         * gst/gstmessage.h:
1523         Improve docs.
1525 2007-05-21  Wim Taymans  <wim@fluendo.com>
1527         * gst/gstpad.c: (gst_pad_get_caps_unlocked),
1528         (gst_pad_acceptcaps_default), (gst_pad_configure_sink),
1529         (gst_pad_configure_src):
1530         Added simple version of improved caps checking. It was previously
1531         assumed that a setcaps function would check the validity of the caps but
1532         people prefer us to check caps against the template automatically. 
1533         Fixes #421543.
1535 2007-05-21  Wim Taymans  <wim@fluendo.com>
1537         * libs/gst/base/gstbasetransform.h:
1538         Fix macro for locking/unlocking the transform lock.
1540 2007-05-19  Tim-Philipp Müller  <tim at centricular dot net>
1542         * docs/plugins/tmpl/.cvsignore:
1543           Ignore more.
1545 2007-05-18  Edward Hervey  <edward@fluendo.com>
1547         * plugins/elements/gstqueue.c: (gst_queue_loop):
1548         Hello, I am Mr Taymans' personal debugger. Today I will introduce a fix
1549         for the subtle art of warning a potentially blocking thread that it
1550         should check the source pad return value, and relay the information
1551         upstream.
1553 2007-05-18  Edward Hervey  <edward@fluendo.com>
1555         * plugins/elements/gstqueue.c: (gst_queue_handle_sink_event):
1556         Release the queue lock !
1558 2007-05-17  Sebastian Dröge  <slomo@circular-chaos.org>
1560         * docs/libs/gstreamer-libs-sections.txt:
1561         Add the two new controller functions to the appropiate places.
1563 2007-05-17  Sebastian Dröge  <slomo@circular-chaos.org>
1565         reviewed by: Stefan Kost <ensonic@users.sf.net>
1567         * libs/gst/controller/gstcontroller.c:
1568         (gst_controller_suggest_next_sync), (gst_controller_sync_values),
1569         (_gst_controller_get_property), (_gst_controller_set_property),
1570         (_gst_controller_init), (_gst_controller_class_init):
1571         * libs/gst/controller/gstcontroller.h:
1572         * libs/gst/controller/gsthelper.c: (gst_object_suggest_next_sync),
1573         (gst_object_get_control_rate), (gst_object_set_control_rate):
1574         API: gst_controller_suggest_next_sync(), gst_object_suggest_next_sync()
1575         Add API that provides sync suggestion timestamps for elements that
1576         call gst_object_sync_values() from which those elements can subdivide
1577         their processing loop to get the best results for the controlled
1578         properties. For now it just suggests last_sync + control_rate as
1579         new timestamp but this will be improved in the future.
1581         While doing that change the control-rate property to a GstClockTime
1582         from guint and change it's meaning from samples to nanoseconds as
1583         the GstController doesn't know anything about sampling rate. Strictly
1584         speaking this breaks ABI but as the control-rate property didn't do
1585         anything in the past and as such couldn't be used this should be no
1586         problem.        
1588 2007-05-17  Sebastian Dröge  <slomo@circular-chaos.org>
1590         reviewed by: Stefan Kost <ensonic@users.sf.net>
1592         * libs/gst/controller/gstcontroller.c: (gst_controller_unset),
1593         (gst_controller_unset_all):
1594         * libs/gst/controller/gstcontrollerprivate.h:
1595         * libs/gst/controller/gstinterpolation.c:
1596         (gst_controlled_property_find_control_point_node):
1597         Save last synced value from the list to continue searching from there
1598         in future syncs. This speeds everything up a bit.
1599         
1600 2007-05-17  Sebastian Dröge  <slomo@circular-chaos.org>
1602         reviewed by: Stefan Kost <ensonic@users.sf.net>
1604         * libs/gst/controller/gstcontroller.c: (gst_control_point_compare),
1605         (gst_control_point_find), (gst_controlled_property_new),
1606         (gst_control_point_free), (gst_controlled_property_free),
1607         (gst_controller_set), (gst_controller_set_from_list),
1608         (gst_controller_unset), (gst_controller_unset_all),
1609         (gst_controller_sync_values):
1610         * libs/gst/controller/gstcontroller.h:
1611         * libs/gst/controller/gstcontrollerprivate.h:
1612         * libs/gst/controller/gstinterpolation.c:
1613         (gst_controlled_property_find_control_point_node),
1614         (interpolate_none_get), (interpolate_trigger_get):
1615         Add a new private GstControlPoint struct which "inherits" from
1616         GstTimedValue to allow different interpolators to store internal
1617         values next to each control point. From the outside everything is
1618         still a GstControlPoint so we don't loose binary compatibility.
1619         Also fixup all the GValue handling to not leak GValues or list nodes.
1620         * tests/check/libs/controller.c: (GST_START_TEST):
1621         Free the list nodes and GValues in the controller_misc test.
1623 2007-05-17  Edward Hervey  <edward@fluendo.com>
1625         * gst/gstsegment.c:
1626         Small doc fix.
1628 2007-05-16  Tim-Philipp Müller  <tim at centricular dot net>
1630         * gst/gstplugin.c: (gst_plugin_load_file):
1631           If we fail to load a plugin because of unresolved symbols or missing
1632           libraries and spew a warning to stderr, we may just as well mention
1633           which plugin it was that failed to load.
1635 2007-05-13  David Schleef  <ds@schleef.org>
1637         * docs/Makefile.am: the gtk-doc makefile snippet correctly
1638           handles the case when ENABLE_GTK_DOC is false, and installs
1639           the prebuilt documentation.  So gtk-doc subdirs are 
1640           unconditionally enabled.  Fixes: #349099.
1642 2007-05-13  David Schleef  <ds@schleef.org>
1644         * gst/gstutils.h: Reword some documentation.
1646 2007-05-12  David Schleef  <ds@schleef.org>
1648         * gst/gstplugin.c: gst_plugin_register_func() doesn't actually
1649           do anything with the passed "module" parameter, so remove it.
1650           Allows removal of additional vestigal code.
1652 2007-05-12  David Schleef  <ds@schleef.org>
1654         * gst/gstplugin.c:
1655           Using sigaction should depend on HAVE_SIGACTION, not HAVE_WIN32.
1656           Switch to using g_stat() because it's more portable.
1658 2007-05-12  David Schleef  <ds@schleef.org>
1660         * gst/gst.c:
1661           Add GST_DISABLE_OPTION_PARSING, in order to disable option
1662           parsing for embedded systems.
1663         * gst/gstelementfactory.c:
1664           Allow gst_element_register() to be called with plugin==NULL.
1665           Did nobody notice that static elements were broken?
1667 2007-05-12  Wim Taymans  <wim@fluendo.com>
1669         * tools/gst-launch.c: (event_loop):
1670         Give more interesting info when buffering starts and stops.
1671         Fix case where buffering starts but we fail to update the buffering flag
1672         because the target state is not PLAYING.
1674 2007-05-12  Wim Taymans  <wim@fluendo.com>
1676         * plugins/elements/gstqueue.c: (gst_queue_init),
1677         (gst_queue_finalize), (update_time_level), (apply_segment),
1678         (apply_buffer), (gst_queue_locked_flush),
1679         (gst_queue_locked_enqueue), (gst_queue_locked_dequeue),
1680         (gst_queue_handle_sink_event), (gst_queue_chain),
1681         (gst_queue_push_one), (gst_queue_loop):
1682         * plugins/elements/gstqueue.h:
1683         Refactor an cleanup queue a bit.
1684         Do better time level calculations that also work when the srcpad is not
1685         yet running.
1686         Remove some unneeded debug lines.
1688         * tests/check/elements/queue.c: (GST_START_TEST), (queue_suite):
1689         Added testcase for time level measurement.
1690         Try to make some stuff more racefree.
1692 2007-05-11  Tim-Philipp Müller  <tim at centricular dot net>
1694         * gst/gsturi.c: (gst_element_make_from_uri):
1695           Don't leak plugin feature.
1697         * tests/check/Makefile.am:
1698         * tests/check/gst/.cvsignore:
1699         * tests/check/gst/gsturi.c: (GST_START_TEST), (gst_uri_suite):
1700           Add brain-dead unit test.
1702 2007-05-11  Tim-Philipp Müller  <tim at centricular dot net>
1704         Patch by: Jeroen Wouters <woutersj at gmail com>
1706         * gst/gsturi.c: (gst_uri_get_protocol), (search_by_entry):
1707           Treat protocol strings in a case-insensitive way (#437563).
1709 2007-05-11  Michael Smith <msmith@fluendo.com>
1711         * gst/gstplugin.c: (gst_plugin_load_file):
1712         * gst/gstregistry.c: (gst_registry_scan_path_level):
1713           Don't print a g_warning for any failure to load a shared object.
1714           Instead, push this down into gstplugin.c, and warn _only_ if we
1715           failed to open the module (i.e. failure to link).
1716           Avoids warnings on normal, working, non-plugin .so files.
1718 2007-05-11  Stefan Kost  <ensonic@users.sf.net>
1720         * gst/gstplugin.c (gst_plugin_load_file):
1721         * gst/gstregistry.c (GST_CAT_DEFAULT,
1722           gst_registry_lookup_feature_locked, gst_registry_scan_path_level):
1723           Print a g_warning if there was an error when loading a plugins during
1724           registry scan. The shuld help beginners starting with gst-plugin
1725           template.
1727 2007-05-10  Wim Taymans  <wim@fluendo.com>
1729         * plugins/elements/gstqueue.c: (gst_queue_class_init),
1730         (update_time_level), (gst_queue_locked_flush),
1731         (gst_queue_handle_sink_event), (gst_queue_chain),
1732         (gst_queue_push_one), (gst_queue_loop):
1733         * plugins/elements/gstqueue.h:
1734         Be smarter when calculating the current amount of data in the queue by
1735         measuring the difference between start and end timestamps (in running
1736         time) inside the queue. Fixes #432876.
1737         API: GstQueue::pushing to notify elements that we are pushing data again
1738         since the running signal is rather broken for this purpose.
1740 2007-05-10  Stefan Kost  <ensonic@users.sf.net>
1742         * plugins/elements/gstqueue.c (_do_init, gst_queue_signals,
1743           gst_queue_base_init, gst_queue_init):
1744           use GST_BOILERPLATE
1746 2007-05-09  Sebastien Moutte  <sebastien@moutte.net>
1748         * win32/common/libgstreamer.def:
1749         Add new exported functions.
1750         * win32/vs6/grammar.dsp:
1751         Use grammar pre-generated files.
1753 2007-05-09  Tim-Philipp Müller  <tim at centricular dot net>
1755         Based on patch by: Peter Kjellerstedt  <pkj at axis com>
1757         * gst/Makefile.am:
1758         * gst/gstparse.c: (gst_parse_launchv), (gst_parse_launch):
1759         * gst/gstparse.h:
1760         * gst/gstutils.c: (gst_parse_bin_from_description):
1761         * gst/gstutils.h:
1762           Maintain API and ABI when --disable-parse is used. Now that
1763           we have an appropriate error code, we can just return NULL and the
1764           appropriate error when gst_parse_launch() is used despite it having
1765           been disabled (#342564).
1767         * tests/check/Makefile.am:
1768         * tests/check/pipelines/.cvsignore:
1769         * tests/check/pipelines/parse-disabled.c:
1770           Make sure these functions exist and return NULL plus a GError when
1771           --disable-parse is used.
1773 2007-05-09  Tim-Philipp Müller  <tim at centricular dot net>
1775         * tests/benchmarks/complexity.c: (main):
1776         * tests/benchmarks/mass-elements.c: (main):
1777           Set a good example and don't leak messages.
1779 2007-05-06  Stefan Kost  <ensonic@users.sf.net>
1781         * docs/gst/Makefile.am:
1782         * docs/libs/Makefile.am:
1783           Correct fixxrefs options.
1785         * docs/plugins/Makefile.am:
1786         * docs/plugins/gstreamer-plugins-docs.sgml:
1787         * docs/plugins/gstreamer-plugins-sections.txt:
1788         * plugins/elements/Makefile.am:
1789         * plugins/elements/gstcapsfilter.c (gst_capsfilter_details):
1790         * plugins/elements/gstcapsfilter.h (__GST_CAPSFILTER_H__,
1791           GST_TYPE_CAPSFILTER, GST_CAPSFILTER, GST_CAPSFILTER_CLASS,
1792           GST_IS_CAPSFILTER, GST_IS_CAPSFILTER_CLASS, GstCapsFilter,
1793           GstCapsFilterClass, _GstCapsFilter, trans, filter_caps,
1794           _GstCapsFilterClass, trans_class):
1795         * plugins/elements/gstelements.c (name, rank, type, _elements):
1796         * plugins/elements/gstidentity.c
1797           (gst_identity_check_imperfect_timestamp,
1798           gst_identity_check_imperfect_offset):
1799           Document capsfilter and add doc-blurb to identity.
1801 2007-05-04  Tim-Philipp Müller  <tim at centricular dot net>
1803         * libs/gst/controller/gstcontroller.c:
1804         (gst_controlled_property_set_interpolation_mode):
1805         * libs/gst/controller/gstinterpolation.c:
1806           Don't crash if someone tries to set an interpolation mode that
1807           is invalid or that isn't supported yet. Fixes #422295.
1809         * tests/check/libs/controller.c: (GST_START_TEST),
1810         (gst_controller_suite):
1811           Add a test case for the above.
1813 2007-05-03  Edward Hervey  <edward@fluendo.com>
1815         * libs/gst/base/gstbasetransform.c: (gst_base_transform_chain):
1816         Properly set the last_stop position on GstSegment. This will only happen
1817         if there is a buffer to push out.
1819 2007-05-03  Wim Taymans  <wim@fluendo.com>
1821         * libs/gst/base/gstbasetransform.c:
1822         (gst_base_transform_buffer_alloc):
1823         always_in_place does not mean that the sink and source caps are the
1824         same! Make sure we don't blindly proxy the buffer_alloc in this case.
1826 2007-05-03  Wim Taymans  <wim@fluendo.com>
1828         * docs/libs/gstreamer-libs-sections.txt:
1829         * libs/gst/base/gstbasesrc.c: (gst_base_src_query_latency),
1830         (gst_base_src_default_query), (gst_base_src_get_range):
1831         * libs/gst/base/gstbasesrc.h:
1832         API: gst_base_src_query_latency(). Added method so that subclasses can
1833         easily get the latency values of the base source class.
1835 2007-05-02  Zaheer Abbas Merali  <<zaheerabbas at merali dot org>>
1837         * tools/gst-inspect.c (print_implementation_info):
1838         Remove 0.8 cruft.
1840 2007-05-02  Tim-Philipp Müller  <tim at centricular dot net>
1842         * tools/Makefile.am:
1843         * tools/gst-launch.1.in:
1844           Don't create a customised man page based on the host architecture,
1845           describe the default registry path generically. That way the man
1846           page is the same for all architectures and packagers have one
1847           multilib issue less to deal with. Fixes #434926.
1849 2007-05-02  Wim Taymans  <wim@fluendo.com>
1851         * gst/gstpad.c:
1852         Fix documentation as spotted by rg on IRC. 
1854 2007-04-29  Stefan Kost  <ensonic@users.sf.net>
1856         * gst/gstutils.c:
1857           Improve docs for gst_element_{link,unlink}.
1859 2007-04-28  Tim-Philipp Müller  <tim at centricular dot net>
1861         * docs/design/part-events.txt:
1862         * docs/design/part-overview.txt:
1863         * gst/gstevent.c:
1864         * gst/gsturi.c:
1865         * gst/gsturi.h:
1866         * libs/gst/base/gstbasesink.c:
1867           Typo fixes; minor docs addition.
1869 2007-04-27  Sebastian Dröge  <slomo@circular-chaos.org>
1871         * docs/gst/gstreamer-sections.txt:
1872         * gst/gsturi.c: (get_element_factories_from_uri_protocol),
1873         (gst_uri_protocol_is_supported), (gst_element_make_from_uri):
1874         * gst/gsturi.h:
1875         API: Add gst_uri_protocol_is_supported(), which checks if a sink
1876         or src that supports a given URI protocol exists.
1878 2007-04-27  Sebastian Dröge  <slomo@circular-chaos.org>
1880         * plugins/elements/gstfilesink.c: (gst_file_sink_uri_set_uri):
1881         * plugins/elements/gstfilesrc.c: (gst_file_src_uri_set_uri):
1882         Set the location to NULL if "file://" is set as URI. Otherwise
1883         some random previous URI would still be set if "file://" is
1884         set on an already used filesink/filesrc.
1886 2007-04-27  Sebastian Dröge  <slomo@circular-chaos.org>
1888         * plugins/elements/gstfilesink.c: (gst_file_sink_uri_set_uri):
1889         * plugins/elements/gstfilesrc.c: (gst_file_src_uri_set_uri):
1890         Special case the "file://" URI as as this is used by some
1891         applications to test with gst_element_make_from_uri if there's
1892         an element that supports the URI protocol.
1893         Also move the g_path_is_absolute() check for the location part
1894         of the URI to also check this for "file://localhost/bla" URIs.
1896 2007-04-26  Tim-Philipp Müller  <tim at centricular dot net>
1898         * docs/gst/gstreamer-sections.txt:
1899         * gst/gstbuffer.c: (gst_buffer_try_new_and_alloc):
1900         * gst/gstbuffer.h:
1901         * tests/check/gst/gstbuffer.c: (GST_START_TEST),
1902         (gst_buffer_suite):
1903           API: add gst_buffer_try_new_and_alloc() plus unit test (#431940).
1905 2007-04-26  Stefan Kost  <ensonic@users.sf.net>
1907         * gst/gstregistrybinary.c: (gst_registry_binary_write_cache),
1908         (gst_registry_binary_load_pad_template),
1909         (gst_registry_binary_load_plugin),
1910         (gst_registry_binary_read_cache):
1911         * gst/gstregistrybinary.h:
1912           Implement no-mmap alternative for registry reading. Do code cleanups.
1913           Add more comments about avoiding strdups for all text data. Comments
1914           welcome.
1916 2007-04-25  Stefan Kost  <ensonic@users.sf.net>
1918         * gst/gstregistrybinary.h (GstBinaryPluginElement,
1919           GstBinaryPluginFeature, _GstBinaryElementFactory, plugin_feature,
1920           GstBinaryElementFactory, _GstBinaryTypeFindFactory, plugin_feature):
1921           Comment structs and reformat to fix the build (that stuff should go
1922           into a priv. header).
1924 2007-04-25  Stefan Kost  <ensonic@users.sf.net>
1926         * gst/gstregistrybinary.c: (gst_registry_binary_save_feature),
1927         (gst_registry_binary_load_feature):
1928         * gst/gstregistrybinary.h:
1929           Refactor so that we can implement multiple features. Add support for
1930           TypeFindFactory features.
1932 2007-04-24  Stefan Kost  <ensonic@users.sf.net>
1934         Patch by: Peter Kjellerstedt <Peter.Kjellerstedt@axis.com>
1936         * configure.ac:
1937           Fix AM_CONDITIONAL(GST_DISABLE_GST_DEBUG,...) and update comment.
1939 2007-04-23  Stefan Kost  <ensonic@users.sf.net>
1941         * gst/gstbin.c: (gst_bin_element_set_state),
1942         (iterator_activate_fold_with_resync), (gst_bin_continue_func),
1943         (bin_handle_async_done), (gst_bin_handle_message_func):
1944           Fix build with --gst-disable-gst-debug
1946 2007-04-21  Tim-Philipp Müller  <tim at centricular dot net>
1948         * libs/gst/base/gstbasetransform.c: (gst_base_transform_activate):
1949           Make sure streaming has finished before calling the ::stop() vfunc,
1950           since that vfunc might clear state which is being used in the
1951           streaming thread. This fixes a race that caused crashes in
1952           audioresample when shutting down a pipeline (#420106).
1954 2007-04-20  Stefan Kost  <ensonic@users.sf.net>
1956         * docs/gst/gstreamer-sections.txt:
1957           That was one byte missing.
1959 2007-04-20  Stefan Kost  <ensonic@users.sf.net>
1961         * configure.ac:
1962         * docs/gst/gstreamer-sections.txt:
1963         * gst/Makefile.am:
1964         * gst/gstconfig.h.in:
1965         * gst/gstobject.c: (gst_object_class_init),
1966         (gst_signal_object_class_init):
1967         * gst/gstobject.h:
1968           2nd attempt to have a xml-less build as a joined effort of #413123
1969           and #421480.
1971 2007-04-20  Stefan Kost  <ensonic@users.sf.net>
1973         * docs/design/draft-tagreading.txt:
1974           Added open issues/thoughts to draft.
1976 2007-04-19  Sebastian Dröge  <slomo@circular-chaos.org>
1978         * gst/parse/grammar.tab.pre.c:
1979         * gst/parse/grammar.tab.pre.h:
1980         * gst/parse/lex._gst_parse_yy.pre.c:
1981         Update the prebuild parser sources.
1983 2007-04-19  Sebastian Dröge  <slomo@circular-chaos.org>
1985         * gst/parse/Makefile.am:
1986         And now fix the building of the flex sources. Now everything should
1987         work as expected.
1989 2007-04-19  Sebastian Dröge  <slomo@circular-chaos.org>
1991         * gst/parse/Makefile.am:
1992         Now hopefully fix the build failures by setting proper rule
1993         dependencies and moving instead of copying.
1995 2007-04-19  Stefan Kost  <ensonic@users.sf.net>
1997         * tests/benchmarks/complexity.gnuplot:
1998         * tests/benchmarks/complexity.scm:
1999         * tests/benchmarks/mass-elements.gnuplot:
2000         * tests/benchmarks/mass-elements.scm:
2001           Total licensification.
2003 2007-04-19  Stefan Kost  <ensonic@users.sf.net>
2005         * gst/parse/Makefile.am:
2006           Fix the build by correcting the rule that gave wrong files to flex.
2008 2007-04-19  Stefan Kost  <ensonic@users.sf.net>
2010         * tests/benchmarks/complexity.c:
2011         * tests/benchmarks/mass-elements.c:
2012           Change licence to LGPL as granted by Benjamin and Andy.
2014 2007-04-19  Sebastian Dröge  <slomo@circular-chaos.org>
2016         * gst/parse/Makefile.am:
2017         Add correct grammar.tab.h dependency if compiling without new enough
2018         flex. Fixes #431150.
2020 2007-04-18  Sebastian Dröge  <slomo@circular-chaos.org>
2022         * gst/parse/Makefile.am:
2023         Fix typo and use outdated sources if the flex/bison sources are newer
2024         than the pregenerated ones but flex is too old. Print a warning in
2025         that case. This should fix the build on the build bot.
2027 2007-04-18  Sebastian Dröge  <slomo@circular-chaos.org>
2029         Patch by: Marc-Andre Lureau <marcandre dot lureau at gmail dot com>
2030         * gst/parse/Makefile.am:
2031         * gst/parse/grammar.y:
2032         * gst/parse/parse.l:
2033         Make the parser reentrant and recursively callable. This requires flex
2034         >= 2.5.31, for older versions pregenerated sources are used as we
2035         can't bump the build dependency. Finally fixes #349180.
2037         * gst/gstparse.c: (gst_parse_launch):
2038         Drop the HAVE_MT_SAVE_FLEX #ifdefs as we always use a new enough flex
2039         now anyway.
2041         * docs/gst/Makefile.am:
2042         * docs/gst/Makefile.am:
2043         * gst/parse/grammar.tab.pre.c: (__gst_parse_strdup),
2044         (__gst_parse_strfree), (__gst_parse_link_new),
2045         (__gst_parse_link_free), (__gst_parse_chain_new),
2046         (__gst_parse_chain_free), (SET_ERROR), (YYPRINTF),
2047         (gst_parse_element_set), (gst_parse_free_link),
2048         (gst_parse_found_pad), (gst_parse_perform_delayed_link),
2049         (gst_parse_perform_link), (yytnamerr), (yysyntax_error), (yyerror),
2050         (_gst_parse_launch):
2051         * gst/parse/grammar.tab.pre.h:
2052         * gst/parse/lex._gst_parse_yy.pre.c: (PRINT), (yy_get_next_buffer),
2053         (yy_get_previous_state), (yy_try_NUL_trans), (input),
2054         (_gst_parse_yyrestart), (_gst_parse_yy_switch_to_buffer),
2055         (_gst_parse_yy_load_buffer_state), (_gst_parse_yy_create_buffer),
2056         (_gst_parse_yy_delete_buffer), (_gst_parse_yy_init_buffer),
2057         (_gst_parse_yy_flush_buffer), (_gst_parse_yypush_buffer_state),
2058         (_gst_parse_yypop_buffer_state),
2059         (_gst_parse_yyensure_buffer_stack), (_gst_parse_yy_scan_buffer),
2060         (_gst_parse_yy_scan_string), (_gst_parse_yy_scan_bytes),
2061         (yy_fatal_error), (_gst_parse_yyget_extra),
2062         (_gst_parse_yyget_lineno), (_gst_parse_yyget_column),
2063         (_gst_parse_yyget_in), (_gst_parse_yyget_out),
2064         (_gst_parse_yyget_leng), (_gst_parse_yyget_text),
2065         (_gst_parse_yyset_extra), (_gst_parse_yyset_lineno),
2066         (_gst_parse_yyset_column), (_gst_parse_yyset_in),
2067         (_gst_parse_yyset_out), (_gst_parse_yyget_debug),
2068         (_gst_parse_yyset_debug), (_gst_parse_yyget_lval),
2069         (_gst_parse_yyset_lval), (_gst_parse_yylex_init),
2070         (yy_init_globals), (_gst_parse_yylex_destroy), (yy_flex_strncpy),
2071         (yy_flex_strlen), (_gst_parse_yyalloc), (_gst_parse_yyrealloc),
2072         (_gst_parse_yyfree):
2073         If the installed flex version is too old use pre-generated parser
2074         sources. These pre-generated parser sources are always updated when
2075         the actual flex/bison sources change but require everybody who wants
2076         to change something in the parser to have flex >= 2.5.31 installed.
2078 2007-04-18  Stefan Kost  <ensonic@users.sf.net>
2080         * common/m4/gst-gettext.m4:
2081         * gst/gst-i18n-lib.h:
2082           Make --disable-nls to work
2084 2007-04-17  Wim Taymans  <wim@fluendo.com>
2086         * gst/gstconfig.h.in:
2087         Revert previous change that broke the build.
2089 2007-04-17  Stefan Kost  <ensonic@users.sf.net>
2091         * configure.ac:
2092         * gst/Makefile.am:
2093         * gst/gstconfig.h.in:
2094           Drop libxml2 dependency when building with 
2095           --enable-binary-registry --disable-loadsave
2097 2007-04-16  Tim-Philipp Müller  <tim at centricular dot net>
2099         * gst/gstregistrybinary.c: (gst_registry_binary_write_cache),
2100         (gst_registry_binary_read_cache):
2101         * gst/gstregistrybinary.h:
2102           Remove unnecessary <sys/mman.h> include which broke the win32 build
2103           with MingW; move includes from header file to .c file, even if the
2104           header file isn't installed; use g_strerror() where UTF-8 strings
2105           are expected, such as in GST_DEBUG messages.
2107 2007-04-13  Jan Schmidt  <thaytan@mad.scientist.com>
2109         * docs/libs/gstreamer-libs-sections.txt:
2110         Remove bogus addition for API I didn't end up keeping.
2112         * libs/gst/base/gstbasesrc.h:
2113         Mention Since: 0.10.13 in the documentation.
2115         Add the API keyword to the previous ChangeLog entry.
2117 2007-04-13  Jan Schmidt  <thaytan@mad.scientist.com>
2119         * docs/libs/gstreamer-libs-sections.txt:
2120         * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
2121         (gst_base_src_default_prepare_seek_segment),
2122         (gst_base_src_prepare_seek_segment), (gst_base_src_perform_seek):
2123         * libs/gst/base/gstbasesrc.h:
2124         Allow basesrc derived classes to execute seeks in other formats
2125         by providing a prepare_seek_segment vmethod. Sub-classes can choose
2126         to prepare the GstSegment in any format that their perform_seek method
2127         will be able to understand. The default implementation provides the
2128         old behaviour of attempting to convert the seek offsets to the 
2129         configured native format.
2131         API: basesrc::prepare_seek_segment vmethod.
2133 2007-04-13  Jan Schmidt  <thaytan@mad.scientist.com>
2135         * gst/gstelement.c: (gst_element_get_state_func):
2136         Don't output the same debug statement twice.
2138         * libs/gst/base/gstadapter.c: (gst_adapter_try_to_merge_up),
2139         (gst_adapter_peek), (gst_adapter_take_buffer):
2140         Optimise the case where we have buffers at the head of the queue that
2141         can be joined quickly (because they're contiguous sub-buffers) by
2142         merging them together rather than copying data out into new memory.
2144         * gst/parse/grammar.y:
2145         * tests/check/pipelines/parse-launch.c:
2146         Fix a leak in an error path for parse_launch, and add a check 
2147         for it to the testsuite.
2149 2007-04-13  Jan Schmidt  <thaytan@mad.scientist.com>
2151         * plugins/elements/gstmultiqueue.c: (gst_multi_queue_release_pad):
2152           Don't deadlock when releasing a pad - gst_pad_set_active may try
2153           and take the multiqueue lock too.
2155 2007-04-12  Tim-Philipp Müller  <tim at centricular dot net>
2157         * gst/gsterror.c: (_gst_core_errors_init):
2158         * gst/gsterror.h:
2159           API: add GST_CORE_ERROR_DISABLED (#392804).
2161 2007-04-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2163         * docs/faq/gst-uninstalled:
2164           don't get empty paths on the PATH variables
2165         * gst/gstpad.c (gst_pad_is_active, gst_pad_set_blocked_async):
2166           Don't format for the uncommon terminal width of 84 characters.
2168 2007-04-06  Wim Taymans  <wim@fluendo.com>
2170         * gst/gstpipeline.c: (reset_stream_time),
2171         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time):
2172         Only try to select a different pipeline clock when we went back to
2173         PAUSED and not when we merely got flushed.
2175 2007-04-05  Michael Smith  <msmith@fluendo.com>
2177         * tools/gst-launch.1.in:
2178           fractions are better supported in gstreamer than ractions, so
2179           suggest using those.
2181 2007-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
2183         Submitted by: Mogens Jaeger <mogens@jaeger.tf>
2185         * po/LINGUAS:
2186         * po/da.po:
2187           Added Danish translation.
2189 2007-04-05  Wim Taymans  <wim@fluendo.com>
2191         * libs/gst/base/gstbasesink.c:
2192         (gst_base_sink_queue_object_unlocked), (gst_base_sink_event):
2193         Fix leak caused when refusing newsegment after EOS.
2195         * plugins/elements/gstfakesink.c: (gst_fake_sink_class_init),
2196         (gst_fake_sink_init), (gst_fake_sink_set_property),
2197         (gst_fake_sink_get_property), (gst_fake_sink_preroll),
2198         (gst_fake_sink_render), (gst_fake_sink_change_state):
2199         * plugins/elements/gstfakesink.h:
2200         Add num-buffers property to make the element generate EOS after a
2201         configurable amount of buffers.
2202         API: fakesink::num-buffers property.
2204         * tests/check/elements/fakesink.c: (GST_START_TEST),
2205         (fakesink_suite):
2206         Fix GstBus leak in test.
2207         Test for fakesink num-buffers.
2209 2007-04-05  Wim Taymans  <wim@fluendo.com>
2211         * libs/gst/base/gstbasesink.c:
2212         (gst_base_sink_queue_object_unlocked), (gst_base_sink_event),
2213         (gst_base_sink_change_state):
2214         Don't accept anything after an EOS, return UNEXPECTED instead.
2216         * tests/check/elements/fakesink.c: (GST_START_TEST),
2217         (fakesink_suite):
2218         Unit test for new EOS behaviour.
2220 2007-04-05  Wim Taymans  <wim@fluendo.com>
2222         * gst/gstelement.c: (gst_element_get_request_pad):
2223         Make padtemplates also work when they don't contain %s or %d.
2225 2007-04-05  Wim Taymans  <wim@fluendo.com>
2227         * docs/gst/gstreamer-sections.txt:
2228         * gst/gstclock.c: (gst_clock_adjust_unlocked),
2229         (gst_clock_unadjust_unlocked), (gst_clock_set_calibration):
2230         * gst/gstclock.h:
2231         Improve _adjust_unlocked() so that it overflows less.
2232         Add gst_clock_unadjust_unlocked to convert from external time to
2233         internal time based on calibration.
2234         Add some more debug.
2235         API: GstClock::gst_clock_unadjust_unlocked()
2237 2007-04-03  Wim Taymans  <wim@fluendo.com>
2239         Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com>
2241         * plugins/elements/gstmultiqueue.c: (gst_multi_queue_release_pad):
2242         Deactivate pads and free GstSingleQueue with gst_single_queue_free()
2243         when releasing sink pad. Fixes #425400.
2245 2007-04-02  Stefan Kost  <ensonic@users.sf.net>
2247         * docs/random/ensonic/dynlink.txt:
2248           More work on proposal for new core api.
2250         * docs/libs/gstreamer-libs-sections.txt:
2251         * libs/gst/base/gstbasetransform.h:
2252           API: GST_BASE_TRANSFORM_LOCK/UNLOCK added
2253           
2254         * libs/gst/controller/gstcontroller.c:
2255         (on_object_controlled_property_changed),
2256         (gst_controller_sync_values),
2257         (gst_controller_set_interpolation_mode):
2258         * libs/gst/controller/gstcontroller.h:
2259           Less verbose logging add docs for unimplemented parts and correctly
2260           return when using unavailable parts.
2262 2007-03-29  Jan Schmidt  <thaytan@mad.scientist.com>
2264         * gst/gstclock.c: (gst_clock_set_master), (do_linear_regression):
2265         Move all the debug to the CLOCK category, and associate it with
2266         the clock object.
2268 2007-03-29  Jan Schmidt  <thaytan@mad.scientist.com>
2270         * libs/gst/base/gstadapter.c: (gst_adapter_take_buffer):
2271         Make take_buffer a bit quicker by removing redundant checks
2272         caused by calling gst_adapter_take.
2274 2007-03-28  Tim-Philipp Müller  <tim at centricular dot net>
2276         * plugins/elements/gstmultiqueue.c: (gst_single_queue_free):
2277           Don't leak GCond.
2279         * tests/check/Makefile.am:
2280         * tests/check/elements/.cvsignore:
2281         * tests/check/elements/multiqueue.c: (setup_multiqueue),
2282         (GST_START_TEST), (multiqueue_suite):
2283           Add some dead simple unit tests for the 'multiqueue' element
2284           (some bits don't work yet and are disabled for now).
2286 2007-03-28  Tim-Philipp Müller  <tim at centricular dot net>
2288         * gst/gstelement.c: (gst_element_get_request_pad),
2289         (gst_element_class_get_request_pad_template):
2290           Make gst_element_get_request_pad() create request pads only for
2291           request pad templates and not for, say, sometimes pad templates.
2293 2007-03-28  Stefan Kost  <ensonic@users.sf.net>
2295         * docs/design/draft-klass.txt:
2296           Add example that needs more thinking.
2297         
2298         * docs/design/draft-missing-plugins.txt:
2299           More thoughts about wrapper plugins.
2300         
2301         * docs/random/ensonic/embedded.txt:
2302         * docs/random/ensonic/profiling.txt:
2303           More design work.
2305 2007-03-25  Wim Taymans  <wim@fluendo.com>
2307         * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range),
2308         (gst_base_src_loop):
2309         Only push the segment events in the PLAYING state for live sources.
2311 2007-03-23  Jan Schmidt  <thaytan@mad.scientist.com>
2313         * gst/gstpipeline.c: (gst_pipeline_change_state):
2314         Modify the clock distribution path in PAUSED->PLAYING so that we 
2315         never attempt to choose a new clock unless we're actually leaving
2316         the PAUSED state for the first time. This prevents choosing a
2317         different clock when the state_change gets called for a 2nd time due
2318         to some element doing an async state change.
2320 2007-03-22  Sebastian Dröge  <slomo@circular-chaos.org>
2322         * gst/gstpad.c: (gst_pad_set_caps), (gst_pad_configure_sink),
2323         (gst_pad_configure_src), (gst_pad_alloc_buffer_full),
2324         (gst_pad_chain_unchecked), (gst_pad_push):
2325         Revert last commit. This needs some more thoughts.
2327 2007-03-22  Sebastian Dröge  <slomo@circular-chaos.org>
2329         * gst/gstpad.c: (gst_pad_set_caps), (gst_pad_alloc_buffer_full),
2330         (gst_pad_chain_unchecked), (gst_pad_push):
2331         Check in set_caps if the caps are compatible with the pad and remove
2332         two functions that are redundant now. Fixes #421543.
2334 2007-03-22  Wim Taymans  <wim@fluendo.com>
2336         * tests/check/gst/gstsystemclock.c: (GST_START_TEST),
2337         (mixed_thread), (mixed_async_cb), (gst_systemclock_suite):
2338         Unref some more to make valgrind happy.
2340 2007-03-22  Wim Taymans  <wim@fluendo.com>
2342         * gst/gstsystemclock.c: (gst_system_clock_id_wait_jitter_unlocked),
2343         (gst_system_clock_id_wait_jitter),
2344         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
2345         Fix anoying regression that survived a few releases. When adding an
2346         async entry while blocking on a sync entry, the sync entry will unblock
2347         but still be busy, so it should continue to wait instead of returning
2348         _BUSY to the app.
2349         Add some comments here and there.
2351         * tests/check/gst/gstsystemclock.c: (mixed_thread),
2352         (mixed_async_cb), (GST_START_TEST), (gst_systemclock_suite):
2353         Add testcase for this.
2355 2007-03-22  Wim Taymans  <wim@fluendo.com>
2357         * libs/gst/base/gstbasesrc.c: (gst_base_src_get_range):
2358         Handle errors from the clock sync better, only UNSCHEDULED indicates a
2359         WRONG_STATE and can silently pause the task. All other cases should
2360         error out.
2362 2007-03-22  Wim Taymans  <wim@fluendo.com>
2364         Patch by: Ville Syrjala <syrjala at sci dot fi>
2366         * gst/gstpad.c: (gst_pad_alloc_buffer_full), (gst_pad_send_event):
2367         Fix possible deadlock if pad eventfunc is not specified.  Fixes #421177.
2368         Improve debugging.
2370 2007-03-21  Michael Smith  <msmith@fluendo.com>
2372         * docs/pwg/advanced-types.xml:
2373           Fix some errors in the typefinding docs pointed out on irc.
2375 2007-03-21  Jan Schmidt  <thaytan@mad.scientist.com>
2377         * libs/gst/base/gstbasesrc.c:
2378         Clarify FIXME comment in the face of having added unlock_stop()
2380 2007-03-21  Wim Taymans  <wim@fluendo.com>
2382         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_element_set_state):
2383         Prepare for release where we warn against possible app breakage in the
2384         case of live pipelines along with an env var to enable/disable live
2385         preroll mode (GST_COMPAT=[no-]live-preroll).
2387 2007-03-20  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2389         * plugins/elements/gstidentity.c (gst_identity_check_imperfect_offset):
2390         So we should use correct constants for checking for None offset.
2392 2007-03-20  Wim Taymans  <wim@fluendo.com>
2394         * docs/design/part-block.txt:
2395         Mention the fact that the newly switched element should be set to at
2396         least PAUSED.
2398 2007-03-20  Wim Taymans  <wim@fluendo.com>
2400         * gst/gst.c:
2401         Fix compilation with registry disabled as spotted by Saur.
2403 2007-03-20  Wim Taymans  <wim@fluendo.com>
2405         Patch by: Olivier Crete <tester at tester dot ca>
2407         * gst/gstelement.c: (gst_element_sync_state_with_parent):
2408         Look at the pending state too when syncing the element state to the
2409         parent. Fixes #420133.
2411 2007-03-19  Jan Schmidt  <thaytan@mad.scientist.com>
2413         * libs/gst/base/gstbasesink.c: (gst_base_sink_set_flushing),
2414         (gst_base_sink_change_state):
2415         * libs/gst/base/gstbasesink.h:
2416         * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
2417         (gst_base_src_default_event), (gst_base_src_unlock_stop),
2418         (gst_base_src_deactivate):
2419         * libs/gst/base/gstbasesrc.h:
2420         Add ::unlock_stop to basesrc and basesink. This allows an opportunity
2421         for sub-classes to correctly clear any state they set trying to
2422         unlock, such as clearing out unlock commands from a command fd.
2423         API: basesrc::unlock_stop
2424         API: basesink::unlock_stop
2426         * plugins/elements/gstfdsink.c: (gst_fd_sink_class_init),
2427         (gst_fd_sink_render), (gst_fd_sink_unlock),
2428         (gst_fd_sink_unlock_stop):
2429         * plugins/elements/gstfdsrc.c: (gst_fd_src_class_init),
2430         (gst_fd_src_init), (gst_fd_src_unlock), (gst_fd_src_unlock_stop),
2431         (gst_fd_src_create), (gst_fd_src_get_size), (gst_fd_src_do_seek):
2433         Implement unlock_stop in fdsrc and fdsink.
2434         Implement seeking in fdsrc when a seekable fd is passed, as in
2435         gst-launch-0.10 fdsrc ! ... ! xvimagesink < /path/to/file
2437 2007-03-19  Wim Taymans  <wim@fluendo.com>
2439         Patch by: Evan Nemerson <evan at coeus dash group dot com>
2441         * gst/gstelement.c: (gst_element_class_init):
2442         Fix pad-added and pad-removed signal signatures so that the pad type is
2443         stated as GST_TYPE_PAD instead of G_TYPE_OBJECT. Fixes #419851.
2445 2007-03-19  Wim Taymans  <wim@fluendo.com>
2447         * docs/gst/gstreamer-sections.txt:
2448         Add new element field and method.
2450         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init),
2451         (bin_remove_messages), (gst_bin_add_func), (gst_bin_remove_func),
2452         (gst_bin_recalc_state), (gst_bin_get_state_func),
2453         (gst_bin_element_set_state), (gst_bin_change_state_func),
2454         (gst_bin_continue_func), (bin_bus_handler),
2455         (bin_push_state_continue), (bin_handle_async_start),
2456         (bin_handle_async_done), (gst_bin_handle_message_func):
2457         Make async state changes a bit smarter by using new ASYNC_START and
2458         ASYNC_DONE messages. This reduces the number of times we run the state
2459         recalculation thread.
2460         Don't change state of element with a pending ASYNC_START message.
2461         Deprecate STATE_DIRTY messages.
2462         
2463         * gst/gstelement.c: (gst_element_init), (gst_element_send_event),
2464         (gst_element_get_state_func), (gst_element_continue_state),
2465         (gst_element_lost_state), (gst_element_set_state_func),
2466         (gst_element_change_state):
2467         * gst/gstelement.h:
2468         Keep the state that was last set by the app in a new element field.
2469         Don't allow state changes when handling an element event.
2470         Post ASYNC_START and ASYNC_DONE messages.
2471         Change lost_state so that we go to PAUSED and wait for the parent to set
2472         us to PLAYING again (so latency calculation can be performed)
2473         Export gst_element_change_state() method so that subclasses can use it.
2474         API: gst_element_change_state()
2475         API: GST_STATE_TARGET
2477         * gst/gstpipeline.c: (gst_pipeline_class_init),
2478         (reset_stream_time), (gst_pipeline_change_state),
2479         (gst_pipeline_handle_message), (gst_pipeline_set_new_stream_time):
2480         Using the new ASYNC_START message we can reset the base_time when
2481         needed. This can then be used to implement base_time redistribution in
2482         flushing seeks so that we can remove the explicit seek handling.
2483         Perform latency query and configuration when going to PLAYING.
2485         * libs/gst/base/gstbasesink.c: (gst_base_sink_commit_state),
2486         (gst_base_sink_query), (gst_base_sink_change_state):
2487         Post new ASYNC_START/ASYNC_DONE messages.
2489         * tests/check/generic/sinks.c: (GST_START_TEST):
2490         Fix test because the bin will not set the async element to PLAYING right
2491         away.
2493         * tests/check/gst/gstbin.c: (pop_async_done), (GST_START_TEST):
2494         Make the message check a little stronger.
2495         Handle ASYNC messages.
2497         * tests/check/pipelines/cleanup.c: (GST_START_TEST):
2498         * tests/check/pipelines/simple-launch-lines.c: (GST_START_TEST):
2499         Expect ASYNC_DONE messages.
2501 2007-03-19  Wim Taymans  <wim@fluendo.com>
2503         * docs/gst/gstreamer-sections.txt:
2504         * gst/gstmessage.c: (gst_message_new_async_start),
2505         (gst_message_new_async_done), (gst_message_parse_info),
2506         (gst_message_parse_async_start):
2507         * gst/gstmessage.h:
2508         Add ASYNC_START and ASYNC_DONE messages to prepare for latency
2509         support.
2511 2007-03-15  Tim-Philipp Müller  <tim at centricular dot net>
2513         * tools/gst-inspect.c:
2514         (print_plugin_automatic_install_info_codecs):
2515           Now that we don't check for the 'Codec' keyword any longer in the
2516           klass, we shouldn't spew a warning if the klass isn't a decoder or
2517           encoder (since it might be a Source/Network, for example).
2519 2007-03-14  Tim-Philipp Müller  <tim at centricular dot net>
2521         * tools/gst-inspect.c:
2522         (print_plugin_automatic_install_info_codecs):
2523           Don't require decoder/demuxer/depayloader elements or
2524           encoder/muxer/paylader elements to have 'Codec' as part of their
2525           factory class string when introspecting a plugin's capabilities.
2526           draft-klass.txt mentions that it might be removed in future, and
2527           flump3dec doesn't have it as part of its class string, so chances
2528           are others might also not have it.
2530 2007-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
2532         * po/af.po:
2533         * po/az.po:
2534         * po/bg.po:
2535         * po/ca.po:
2536         * po/cs.po:
2537         * po/de.po:
2538         * po/en_GB.po:
2539         * po/fr.po:
2540         * po/it.po:
2541         * po/nb.po:
2542         * po/nl.po:
2543         * po/ru.po:
2544         * po/sq.po:
2545         * po/sr.po:
2546         * po/sv.po:
2547         * po/tr.po:
2548         * po/uk.po:
2549         * po/vi.po:
2550         * po/zh_CN.po:
2551         * po/zh_TW.po:
2552           Update translations from translation project
2554 2007-03-14  Stefan Kost  <ensonic@users.sf.net>
2556         * gst/gstchildproxy.c: (gst_child_proxy_get_property),
2557         (gst_child_proxy_set_property):
2558           Invert precondition check to be alike the ones in the mimiced gobject
2559           api.
2561 2007-03-13  Stefan Kost  <ensonic@users.sf.net>
2563         * docs/design/draft-tagreading.txt:
2564         * docs/random/ensonic/audiobaseclasses.txt:
2565           Do some Architect work.
2567         * gst/gstobject.c: (gst_object_set_name):
2568           Add a WARNING.
2570         * gst/gstpad.c:
2571           Add docs that point from gst_pad_get_range to gst_pad_pull_range
2573 2007-03-12  Jan Schmidt  <thaytan@mad.scientist.com>
2575         * gst/gstsystemclock.c: (gst_system_clock_init),
2576         (gst_system_clock_start_async), (gst_system_clock_id_wait_async):
2577         Defer starting the async system clock thread until the first async
2578         wait is scheduled. Fixes #414986.
2580 2007-03-12  Tim-Philipp Müller  <tim at centricular dot net>
2582         * plugins/elements/gstmultiqueue.c: (gst_multi_queue_finalize),
2583         (gst_single_queue_free):
2584           Fix small leak (free GstSingleQueue structure too, not only contents).
2586 2007-03-10  Sebastien Moutte  <sebastien@moutte.net>
2588         * gst/gstbin.c:(gst_bin_add):
2589         Use GST_STR_NULL to prevent NULL pointer to be passed to GST_CAT_DEBUG.
2590         * win32/common/libgstbase.def:
2591         * win32/common/libgstreamer.def:
2592         Add new exported functions.
2594 2007-03-09  Wim Taymans  <wim@fluendo.com>
2596         * docs/plugins/gstreamer-plugins-sections.txt:
2597         Fix GstTee docs.
2599 2007-03-09  Wim Taymans  <wim@fluendo.com>
2601         * docs/gst/gstreamer-sections.txt:
2602         * gst/gstbuffer.c: (gst_buffer_copy_metadata), (_gst_buffer_copy):
2603         * gst/gstbuffer.h:
2604         Add metadata copy functions. Fixes #393099.
2605         API: gst_buffer_copy_metadata()
2607         * gst/gstutils.c: (gst_buffer_stamp):
2608         * libs/gst/base/gstbasetransform.c:
2609         (gst_base_transform_prepare_output_buffer):
2610         Use new metadata copy functions.
2612 2007-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2614         * plugins/elements/gstidentity.c: (gst_identity_class_init),
2615         (gst_identity_init), (gst_identity_check_perfect),
2616         (gst_identity_check_imperfect_timestamp),
2617         (gst_identity_check_imperfect_offset), (gst_identity_transform_ip),
2618         (gst_identity_set_property), (gst_identity_get_property):
2619         * plugins/elements/gstidentity.h:
2620         Separate out check-imperfect-timestamp and check-imperfect-offset.
2621         Put back check-perfect as it was to keep compatibility.
2623 2007-03-09  Jan Schmidt  <thaytan@mad.scientist.com>
2625         * gst/gstelement.c: (gst_element_dispose):
2626         There's no need to warn if VOID_PENDING is not NONE here, as
2627         long as the state is NULL it's ok, and that's checked immediately
2628         above.
2630 2007-03-08  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2632         * plugins/elements/gstidentity.c: (gst_identity_check_perfect):
2633         Fix check for perfect stream to ignore buffers with -1 
2634         offsets/offset ends when checking data contiguity.
2636 2007-03-08  Wim Taymans  <wim@fluendo.com>
2638         * tools/gst-launch.c: (event_loop):
2639         Print INFO messages.
2641 2007-03-08  Wim Taymans  <wim@fluendo.com>
2643         * libs/gst/base/gstbasetransform.c:
2644         (gst_base_transform_sink_eventfunc),
2645         (gst_base_transform_handle_buffer), (gst_base_transform_chain),
2646         (gst_base_transform_activate):
2647         * libs/gst/base/gstbasetransform.h:
2648         Add support for dropping buffers with custom GstFlowReturn.
2649         Set DISCONT flags on outgoing buffers based on QoS, incomming DISCONT
2650         buffers or dropped buffers.
2652         * docs/libs/gstreamer-libs-sections.txt:
2653         docs for new custom return code.
2655         * plugins/elements/gstidentity.c: (gst_identity_transform_ip):
2656         Use drop support in base class to implement drop-probability.
2658 2007-03-07  Tim-Philipp Müller  <tim at centricular dot net>
2660         * gst/gst.c: (load_plugin_func):
2661         * gst/gstplugin.c: (gst_plugin_load_by_name), (gst_plugin_load):
2662         * gst/gstregistrybinary.c: (gst_registry_binary_read_cache):
2663         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
2664           Remove newlines at end of debug log strings.
2666 2007-03-07  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2668         * plugins/elements/gstidentity.c: (gst_identity_check_perfect):
2669         Only post bus message at max, once per buffer received.
2671 2007-03-07  Wim Taymans  <wim@fluendo.com>
2673         * docs/design/Makefile.am:
2674         * docs/design/part-synchronisation.txt:
2675         Add doc about synchronisation
2677         * docs/design/draft-latency.txt:
2678         * docs/design/part-TODO.txt:
2679         * docs/design/part-clocks.txt:
2680         * docs/design/part-events.txt:
2681         * docs/design/part-gstbus.txt:
2682         * docs/design/part-gstpipeline.txt:
2683         * docs/design/part-live-source.txt:
2684         * docs/design/part-messages.txt:
2685         * docs/design/part-overview.txt:
2686         * docs/design/part-streams.txt:
2687         * docs/design/part-trickmodes.txt:
2688         Documentation updates.
2690 2007-03-07  Jan Schmidt  <thaytan@mad.scientist.com>
2692         * gstreamer.doap:
2693         Update the doap file.
2695 2007-03-07  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2697         * plugins/elements/gstidentity.c: (gst_identity_check_perfect):
2698         Rename non-perfect to imperfect for Mike and for the sanctity of the
2699         language.
2700         Also make sure bus message gets emitted for data-incontiguities.
2702 2007-03-07  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2704         * plugins/elements/gstidentity.c: (gst_identity_check_perfect),
2705         (gst_identity_start):
2706         * plugins/elements/gstidentity.h:
2707         Emit bus message if check-perfect is true and we encounter a
2708         non-perfect stream between 2 consecutive buffers.
2709         Fixes #415394.
2711 2007-03-07  Jan Schmidt  <thaytan@mad.scientist.com>
2713         * configure.ac:
2714         Back to CVS
2716 === release 0.10.12 ===
2718 2007-03-07  Jan Schmidt <thaytan@mad.scientist.com>
2720         * configure.ac:
2721           releasing 0.10.12, "Inevitable Demise"
2723 2007-03-01  Jan Schmidt  <thaytan@mad.scientist.com>
2725         * configure.ac:
2726          Version 0.10.11.2 (0.10.12 pre-release)
2727          Bump libtool versioning.
2729 2007-03-01  Stefan Kost  <ensonic@users.sf.net>
2731         * libs/gst/base/gstbasesrc.c: (gst_base_src_loop):
2732           Log flow-names and not numbers.
2734 2007-02-28  Thomas Vander Stichele  <thomas at apestaart dot org>
2736         * configure.ac:
2737           Convert to new AG_GST style.
2739 2007-02-28  Wim Taymans  <wim@fluendo.com>
2741         * libs/gst/base/gstbasesink.c: (gst_base_sink_query_latency):
2742         Don't unref query twice.
2744 2007-02-28  Wim Taymans  <wim@fluendo.com>
2746         * gst/gstvalue.c: (gst_value_transform_object_string),
2747         (_gst_value_initialize):
2748         Implement GstObject -> string transform so we print object names
2749         when serializing GValues containing GstObjects.
2751 2007-02-28  Wim Taymans  <wim@fluendo.com>
2753         * docs/gst/gstreamer-sections.txt:
2754         Add new stuff to docs.
2756 2007-02-28  Wim Taymans  <wim@fluendo.com>
2758         * libs/gst/base/gstbasesink.c: (gst_base_sink_query_latency),
2759         (gst_base_sink_queue_object_unlocked), (gst_base_sink_send_event),
2760         (gst_base_sink_change_state):
2761         Improve latency query code.
2762         Don't leak latency events.
2764         * tests/check/gst/gstbin.c: (GST_START_TEST):
2765         Improve debugging.
2767 2007-02-28  Wim Taymans  <wim@fluendo.com>
2769         * gst/gstelement.c: (gst_element_message_full),
2770         (gst_element_get_state_func):
2771         * gst/gstelement.h:
2772         Improve docs a little. Added Since: for new macro.
2774         * gst/gstobject.c: (gst_object_sink):
2775         * gst/gstpipeline.c: (gst_pipeline_change_state),
2776         (gst_pipeline_set_new_stream_time):
2777         * gst/gstpipeline.h:
2778         Improve debugging and docs.
2780         * gst/gstutils.c: (gst_element_state_change_return_get_name):
2781         Improve debugging.
2783 2007-02-28  Wim Taymans  <wim@fluendo.com>
2785         * gst/gstelement.c: (gst_element_message_full),
2786         (gst_element_set_locked_state), (gst_element_get_state_func),
2787         (gst_element_change_state):
2788         Handle INFO messages from the GST_ELEMENT_INFO macro as well.
2789         Documentation updates.
2790         Small code cleanups.
2792         * gst/gstmessage.c: (gst_message_new_info),
2793         (gst_message_parse_info):
2794         * gst/gstmessage.h:
2795         API: gst_message_new_info()
2796         API: gst_message_parse_info()
2797         Add INFO message create and parse code.
2799 2007-02-28  Wim Taymans  <wim@fluendo.com>
2801         * gst/gstbin.c: (bin_query_min_max_init), (bin_query_latency_fold),
2802         (bin_query_latency_done):
2803         Also report the live parameter of a latency query.
2805 2007-02-28  Thomas Vander Stichele  <thomas at apestaart dot org>
2807         * tests/check/generic/states.c: (GST_START_TEST), (states_suite):
2808           Copy the current generic/states example from -base and adapt so
2809           we can use the exact same code everywhere.
2810           Check a STATES_IGNORE_ELEMENTS env var which can be used
2811           to ignore certain element factories for this test, which is
2812           what is being done in -base
2813         * tests/check/Makefile.am:
2814           Mention this environment variable.
2816 2007-02-27  Wim Taymans  <wim@fluendo.com>
2818         * docs/gst/gstreamer-sections.txt:
2819         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2820         (gst_bus_timed_pop), (gst_bus_pop):
2821         * gst/gstbus.h:
2822         API: gst_bus_timed_pop()
2823         Implement gst_bus_timed_pop() to do a blocking timed wait for a
2824         message to arrive on the bus.
2826         * tests/check/gst/gstbus.c: (GST_START_TEST), (pop_thread),
2827         (gst_bus_suite):
2828         Two unit tests for new _timed_pop() function.
2830 2007-02-23  Wim Taymans  <wim@fluendo.com>
2832         * gst/gstpipeline.c: (gst_pipeline_change_state),
2833         (gst_pipeline_provide_clock_func), (gst_pipeline_set_delay):
2834         Don't ref a NULL clock in _provide_clock_func().
2835         Don't allow an INVALID delay.
2836         Don't try to calculate base_time with an invalid start_time.
2837         Also distribute and notify a NULL clock when it was selected.
2839         * tools/gst-launch.c: (event_loop):
2840         Don't crash when a NULL clock was selected in the pipeline.
2842 2007-02-23  Tim-Philipp Müller  <tim at centricular dot net>
2844         * docs/design/Makefile.am:
2845         * docs/design/draft-missing-plugins.txt:
2846         * docs/random/draft-missing-plugins.txt:
2847           Some small updates: update plugin system identifier prefix
2848           ('gstreamer.net' to 'gstreamer'), mention our new install
2849           API in libgstbaseutils rather than libgimme-codec, add
2850           reference to the online docs.
2852 2007-02-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2854         * win32/common/config.h:
2855           Pretty sure Bill never made a powerpc version.  Powerpc hackers,
2856           use moap cl ci to only check in what is mentioned in the ChangeLog.
2858 2007-02-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2860         * docs/gst/gstreamer-sections.txt:
2861         * gst/gstelement.h:
2862           Fix up documentation to link to the correct GstGError section.
2863           Add GST_ELEMENT_INFO macro since someone else added a Info message.
2865 2007-02-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2867         * tools/gst-launch.c: (event_loop):
2868           Make sure that we actually show the important message part of a
2869           warning message.
2870           No need to check if the gerror is not NULL to free; first of all
2871           g_free accepts NULL; and second the default error handler would
2872           segfault if gerror was NULL.
2874 2007-02-21  Wim Taymans  <wim@fluendo.com>
2876         * docs/gst/gstreamer-sections.txt:
2877         Removed docs as well.
2879 2007-02-21  Wim Taymans  <wim@fluendo.com>
2881         * gst/gstmessage.c: (gst_message_parse_duration):
2882         * gst/gstmessage.h:
2883         Remove new messages for release.
2885 2007-02-20  Wim Taymans  <wim@fluendo.com>
2887         * docs/design/part-gstghostpad.txt:
2888         * gst/gstghostpad.c: (gst_ghost_pad_dispose),
2889         (gst_ghost_pad_new_full):
2890         Make the ghostpad a parent of the internal pad again for better backward
2891         compatibility. Don't write code that relies on this however.
2893         * gst/gstpad.c: (gst_pad_activate_pull), (gst_pad_activate_push),
2894         (gst_pad_link_check_hierarchy):
2895         Require that parents should be GstElements in the hierarchy check.
2897 2007-02-20  Wim Taymans  <wim@fluendo.com>
2899         * gst/gstbin.c: (bin_replace_message), (gst_bin_add_func),
2900         (gst_bin_change_state_func), (bin_query_min_max_init),
2901         (bin_query_latency_fold), (bin_query_latency_done),
2902         (gst_bin_query):
2903         Improve debug info.
2904         Implement latency query.
2906 2007-02-20  Wim Taymans  <wim@fluendo.com>
2908         * docs/design/part-gstghostpad.txt:
2909         * gst/gstghostpad.c: (gst_ghost_pad_class_init),
2910         (gst_ghost_pad_internal_do_activate_push),
2911         (gst_ghost_pad_internal_do_activate_pull),
2912         (gst_ghost_pad_do_activate_push), (gst_ghost_pad_do_activate_pull),
2913         (gst_ghost_pad_do_link), (gst_ghost_pad_dispose),
2914         (gst_ghost_pad_new_full), (gst_ghost_pad_set_target):
2915         Do not set the internal pad as a parent anymore so we can avoid
2916         hierarchy linking errors when the ghostpad has no parent yet. This also
2917         fixes failed activation because of unlinked internal pads, which in
2918         turn fixes the impossible case where you have to activate a pad before
2919         you can add it to a running element.
2920         Also fix the docs.
2922         * gst/gstpad.c: (pre_activate), (post_activate),
2923         (gst_pad_set_active), (gst_pad_activate_pull),
2924         (gst_pad_activate_push), (gst_pad_check_pull_range):
2925         Add some more debug info.
2926         Mark activation mode in pre_activate so that we don't try to activate in
2927         endless loops. Fixes #385084.
2929 2007-02-19  Wim Taymans  <wim@fluendo.com>
2931         * libs/gst/base/gstbasetransform.c: (gst_base_transform_init),
2932         (gst_base_transform_check_get_range):
2933         Implement a checkgetrange function instead of relying on the default
2934         core behaviour that assumes we can operate in pull mode if we have a
2935         getrange function. First step at fixing #385084.
2937 2007-02-15  Stefan Kost  <ensonic@users.sf.net>
2939         * gst/gstchildproxy.h:
2940         * libs/gst/base/gstbasesink.h:
2941         * libs/gst/base/gstbasesrc.h:
2942         * libs/gst/base/gstbasetransform.h:
2943         More docs coverage and some ChangeLog surgery (add missing names)
2945 2007-02-15  Wim Taymans  <wim@fluendo.com>
2947         * docs/design/part-TODO.txt:
2948         * docs/design/part-activation.txt:
2949         * docs/design/part-block.txt:
2950         * docs/design/part-buffering.txt:
2951         * docs/design/part-clocks.txt:
2952         * docs/design/part-element-source.txt:
2953         * docs/design/part-events.txt:
2954         * docs/design/part-gstbin.txt:
2955         * docs/design/part-gstbus.txt:
2956         * docs/design/part-gstpipeline.txt:
2957         * docs/design/part-live-source.txt:
2958         * docs/design/part-messages.txt:
2959         * docs/design/part-overview.txt:
2960         * docs/design/part-qos.txt:
2961         * docs/design/part-query.txt:
2962         * docs/design/part-states.txt:
2963         * docs/design/part-trickmodes.txt:
2964         Some doc updates. Start renaming from stream_time to running_time where
2965         it was used wrongly.
2967 2007-02-15  Wim Taymans  <wim@fluendo.com>
2969         * libs/gst/base/gstbasesrc.c: (gst_base_src_default_query):
2970         Answer LATENCY query.
2972 2007-02-15  Wim Taymans  <wim@fluendo.com>
2974         * tests/check/gst/gstevent.c: (event_probe), (test_event),
2975         (GST_START_TEST):
2976         Improve debugging.
2978 2007-02-15  Wim Taymans  <wim@fluendo.com>
2980         * gst/gstpad.c: (gst_pad_get_internal_links_default),
2981         (gst_pad_dispatcher):
2982         Improve debugging of default pad dispatcher and query functions.
2984 2007-02-15  Wim Taymans  <wim@fluendo.com>
2986         * docs/gst/gstreamer-sections.txt:
2987         Remove old unused method.
2989 2007-02-13  Wim Taymans  <wim@fluendo.com>
2991         * tests/check/gst/gstsegment.c: (GST_START_TEST):
2992         Fix check
2994 2007-02-13  Wim Taymans  <wim@fluendo.com>
2996         * docs/design/part-seeking.txt:
2997         Some small update.
2999         * gst/gstsegment.c: (gst_segment_set_seek):
3000         Revert old bogus change that should make seeking work again.
3002 2007-02-13  Stefan Kost  <ensonic@users.sf.net>
3004         * docs/random/ensonic/dynlink.txt:
3005         * docs/random/ensonic/interfaces.txt:
3006         * docs/random/ensonic/receipies.txt:
3007           Possible dynamic reconnection api, plus some type fixes the other two
3008           docs.
3010 2007-02-13  Sebastian Dröge  <slomo@circular-chaos.org>
3012         * plugins/elements/gstfilesink.c: (gst_file_sink_uri_set_uri):
3013         * plugins/elements/gstfilesrc.c: (gst_file_src_uri_set_uri):
3014         Also check for an absolute path following file:// in the filesrc
3015         element. Remove redundant check and call g_path_is_absolute() on the
3016         unescaped location.
3018 2007-02-13  Stefan Kost  <ensonic@users.sf.net>
3020         * docs/design/draft-klass.txt:
3021           Add existing category analysis.
3022           
3023         * gst/gstcaps.c:
3024           Fix doc example, framerate is a fraction.
3026 2007-02-12  Stefan Kost  <ensonic@users.sf.net>
3028         * configure.ac:
3029         * docs/gst/Makefile.am:
3030         * docs/gst/gstreamer-sections.txt:
3031         * docs/libs/Makefile.am:
3032           Erm, forgot a bunch of --extra-dir.
3034 2007-02-12  Stefan Kost  <ensonic@users.sf.net>
3036         * configure.ac:
3037         * docs/gst/Makefile.am:
3038         * docs/libs/Makefile.am:
3039         * docs/plugins/Makefile.am:
3040           Add crossreferences to glib/gobject docs.
3042 2007-02-12  Wim Taymans  <wim@fluendo.com>
3044         * docs/design/draft-latency.txt:
3045         Small update.
3047         * docs/libs/gstreamer-libs-sections.txt:
3048         * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
3049         (gst_base_sink_get_latency), (gst_base_sink_query_latency),
3050         (gst_base_sink_wait_clock), (gst_base_sink_send_qos),
3051         (gst_base_sink_perform_qos), (gst_base_sink_queue_object_unlocked),
3052         (gst_base_sink_chain_unlocked), (gst_base_sink_send_event),
3053         (gst_base_sink_get_position), (gst_base_sink_query),
3054         (gst_base_sink_change_state):
3055         * libs/gst/base/gstbasesink.h:
3056         API: gst_base_sink_query_latency() to let subclasses query the upstream
3057         latency.
3058         API: gst_base_sink_get_latency() to let subclasses query the configured
3059         latency in the sink.
3060         Implement query and set latency.
3061         Update some docs.
3062         As spotted by Will Newton <will dot newton at gmail dot com>: Make sure we
3063         don't continue preroll when we are flushing. Fixes #405284.
3065         * tests/check/pipelines/stress.c: (change_state_timeout),
3066         (quit_timeout), (GST_START_TEST), (stress_suite):
3067         Test for #405284.
3069 2007-02-09  Tim-Philipp Müller  <tim at centricular dot net>
3071         Patch by: René Stadler <mail at renestadler de>
3073         * docs/gst/gstreamer-sections.txt:
3074         * gst/gsttaglist.c: (_gst_tag_initialize):
3075         * gst/gsttaglist.h:
3076           API: add GST_TAG_REFERENCE_LEVEL (#403597).
3078 2007-02-11  Stefan Kost  <ensonic@users.sf.net>
3080         * docs/libs/Makefile.am:
3081           Fix path to core docs.
3083         * gst/gstbin.c: (gst_bin_get_by_interface),
3084         (gst_bin_iterate_all_by_interface):
3085           Refix docs by also renaming 'interface' to 'iface' in implementation.
3087         * docs/gst/gstreamer-sections.txt:
3088         * gst/gstcaps.c:
3089         * gst/gstchildproxy.c: (gst_child_proxy_base_init):
3090         * gst/gstchildproxy.h:
3091         * gst/gstelementfactory.c:
3092         * gst/gstpadtemplate.h:
3093         * libs/gst/controller/gstcontroller.c:
3094         (gst_controlled_property_new):
3095           Document more.
3097 2007-02-10  Sébastien Moutte  <sebastien@moutte.net>
3099         * gst/gstbin.h:(gst_bin_get_by_interface),
3100         (gst_bin_iterate_all_by_interface):
3101         Replace interface parameter name by iface as interface is 
3102         a reserved keyword in Visual Studio for C++ projects so it removes
3103         a build error for application developpers using VS.
3104         * plugins/elements/gstfilesrc.c:(gst_file_src_uri_set_uri):
3105         Fix a bug on Windows in uri format check. Now the prefix checked
3106         is file:// and next we check if the path after file:// is absolute.
3107         * win32/common/libgstbase.def:
3108         * win32/common/libgstdataprotocol.def:
3109         * win32/common/libgstgstreamer.def:
3110         Add new exported functions.
3112 2007-02-09  Andy Wingo  <wingo@pobox.com>
3114         * tests/check/pipelines/simple-launch-lines.c
3115         (simple_launch_lines_suite, test_tee): Disable tee test until I
3116         have time to fix it :-(
3118         * tests/check/Makefile.am (noinst_HEADERS): 
3119         * tests/check/libs/libsabi.c: 
3120         * tests/check/libs/struct_ppc32.h: Add ABI checks for PPC32.
3121         * tests/check/gst/gstabi.c: 
3122         * tests/check/gst/struct_ppc32.h: Add ABI checks for PPC32.
3124         * tests/check/pipelines/simple-launch-lines.c (test_tee): Add
3125         tests for push and pull tee behavior.
3127         * plugins/elements/gsttee.h: 
3128         * plugins/elements/gsttee.c: Describe has-sink-loop better, and
3129         mark as deprecated as well as unimplemented. It was a crack idea.
3130         Add support for tee operating in pull mode, off by default.
3132         * gst/gstregistryxml.c (load_feature, load_plugin): Drop some
3133         normal-case logs down to LOG, raise errors to WARNING.
3134         (gst_registry_xml_read_cache): Don't log before calling a function
3135         that logs.
3137         * gst/gstregistry.c (gst_registry_finalize): Less debug on program
3138         exit (registry finalize).
3139         (gst_registry_add_plugin, gst_registry_add_feature): No need for a
3140         DEBUG log when we emit signals that people don't even have the
3141         chance to connect to.
3142         (gst_registry_scan_path_level): Less logging in the normal case.
3144 2007-02-05  Sebastian Dröge  <slomo@circular-chaos.org>
3146         Patch by: Michal Benes <michal dot benes at itonis dot tv>
3148         * plugins/elements/gstfilesrc.c: (gst_file_src_create_read):
3149         Correctly generate EOS for non-seekable files. We don't have a total
3150         length for them and would get an unexpected end of file if we only
3151         special-cased for regular files. (Fixes: #404569)
3153 2007-02-05  Sebastian Dröge  <slomo@circular-chaos.org>
3155         * tests/check/elements/filesrc.c: (GST_START_TEST),
3156         (filesrc_suite):
3157         Add unit test for the GstURIHandler interface in filesrc. This also
3158         tests the newly added file://localhost/foo/bar support.
3160 2007-02-04  Tim-Philipp Müller  <tim at centricular dot net>
3162         * gst/gstelementfactory.h:
3163           The klass string is not a hierarchy. Add reference to the design doc
3164           for more information and common types.
3166 2007-02-02  Wim Taymans  <wim@fluendo.com>
3168         * gst/gstquery.c: (gst_query_new_latency):
3169         Remove old structure field.
3171 2007-02-02  Stefan Kost  <ensonic@users.sf.net>
3173         * tools/gst-launch.1.in:
3174           Give example for network streaming (#351998)
3176 2007-02-02  Wim Taymans  <wim@fluendo.com>
3178         * docs/gst/gstreamer-sections.txt:
3179         Add docs for new methods.
3181         * gst/gstevent.c: (gst_event_new_latency),
3182         (gst_event_parse_latency):
3183         * gst/gstevent.h:
3184         Add new LATENCY event to configure latency in a pipeline.
3185         API: gst_event_new_latency
3186         API: gst_event_parse_latency
3188         * gst/gstmessage.c: (gst_message_new_buffering),
3189         (gst_message_new_lost_preroll), (gst_message_new_prerolled),
3190         (gst_message_new_latency), (gst_message_parse_buffering),
3191         (gst_message_parse_lost_preroll):
3192         * gst/gstmessage.h:
3193         Added messages used in draft-latency.
3194         API: gst_message_new_lost_preroll
3195         API: gst_message_parse_lost_preroll
3196         API: gst_message_new_prerolled
3197         API: gst_message_new_latency
3199         * gst/gstquery.c: (gst_query_new_latency), (gst_query_set_latency),
3200         (gst_query_parse_latency):
3201         * gst/gstquery.h:
3202         Implemented new latency query as in design doc.
3203         API: gst_query_new_latency
3204         API: gst_query_set_latency
3205         API: gst_query_parse_latency
3207 2007-02-02  Wim Taymans  <wim@fluendo.com>
3209         * docs/design/draft-latency.txt:
3210         Slight redesign to allow for dynamic latency adjustments.
3212         * docs/design/part-negotiation.txt:
3213         Fix some typos.
3215 2007-02-02  Sebastian Dröge  <slomo@circular-chaos.org>
3217         reviewed by: Wim Taymans <wim@fluendo.com>
3219         * plugins/elements/gstfilesink.c: (gst_file_sink_uri_set_uri):
3220         * plugins/elements/gstfilesrc.c: (gst_file_src_uri_set_uri):
3221         Allow file://localhost/foo/bar URLs and correctly fail for every other
3222         hostname that one sets. This was gnomevfssrc is linked for those if
3223         installed as it can handle it (#403172)
3225 2007-02-01  Sebastian Dröge  <slomo@circular-chaos.org>
3227         reviewed by: Tim-Philipp Müller <tim at centricular dot net>
3229         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
3230         (unref_data), (gst_collect_pads_add_pad_full):
3231         * libs/gst/base/gstcollectpads.h:
3232         Don't put the previously added destroy notify in the GstCollectData
3233         struct as all it's padding is already used and we don't want to break
3234         ABI. Instead put in the pad's GObject data for now. This should be
3235         cleaned up for 0.11 (#402393).
3237 2007-02-01  Sebastian Dröge  <slomo@circular-chaos.org>
3239         reviewed by: Wim Taymans <wim@fluendo.com>
3241         * docs/libs/gstreamer-libs-sections.txt:
3242         * libs/gst/base/gstcollectpads.c: (gst_collect_pads_finalize),
3243         (unref_data), (gst_collect_pads_add_pad),
3244         (gst_collect_pads_add_pad_full):
3245         * libs/gst/base/gstcollectpads.h:
3246         API: Add function to specify a destroy notification for custom
3247         GstCollectData when adding new pads in GstCollectPads (#402393).
3249 2007-02-01  Tim-Philipp Müller  <tim at centricular dot net>
3251         * po/sv.po:
3252           Update Swedish translation (#378255).
3254 2007-01-31  Stefan Kost  <ensonic@users.sf.net>
3256         * docs/design/draft-klass.txt:
3257           Fix the previous change, this is a list of categories and not a hierarchy.
3259 2007-01-31  Stefan Kost  <ensonic@users.sf.net>
3261         * docs/design/draft-klass.txt:
3262           Add info about how to get a list of used classes.
3264 2007-01-30  Tim-Philipp Müller  <tim at centricular dot net>
3266         * plugins/elements/gsttypefindelement.c:
3267         (gst_type_find_element_chain_do_typefinding),
3268         (gst_type_find_element_change_state):
3269           Don't leak found caps in chain function (no idea why that never
3270           showed up as a leak anywhere).
3272 2007-01-30  Stefan Kost  <ensonic@users.sf.net>
3274         * gst/gstplugin.h:
3275           Fix and expand GstPluginDesc API docs.
3277 2007-01-29  Stefan Kost  <ensonic@users.sf.net>
3279         * gst/gstcaps.c:
3280         * gst/gstelementfactory.c:
3281         * gst/gstpadtemplate.h:
3282           api doc fixes
3284         * libs/gst/controller/gstcontroller.c:
3285         (gst_controlled_property_new):
3286         * tests/examples/controller/audio-example.c:
3287           comment fixes
3289 2007-01-29  Stefan Kost  <ensonic@users.sf.net>
3291         * configure.ac:
3292           comment about refining the xml deps
3294         * docs/manuals.mak:
3295           comments about moving away from jade for docs
3296         
3297         * gst/gst.c:
3298           recommit the ifdefs to use the binary registry
3299         
3300         * gst/gstbin.c: (gst_bin_change_state_func):
3301           this break is obsolete
3303         * gst/gstelementfactory.h:
3304           better GST_ELEMENT_DETAILS docs, add comment about translation
3306         * gst/gstinfo.h:
3307           remove eol slash
3309         * gst/gstobject.c: (gst_signal_object_get_type):
3310           add G_UNLIKELY as usual
3312         * gst/gstpad.c: (gst_pad_event_default):
3313           add fall trhu comment
3315         * gst/gstregistrybinary.c: (gst_registry_binary_write),
3316         (gst_registry_binary_initialize_magic),
3317         (gst_registry_binary_save_string),
3318         (gst_registry_binary_save_pad_template),
3319         (gst_registry_binary_save_feature),
3320         (gst_registry_binary_save_plugin),
3321         (gst_registry_binary_write_cache),
3322         (gst_registry_binary_check_magic),
3323         (gst_registry_binary_load_pad_template),
3324         (gst_registry_binary_load_feature),
3325         (gst_registry_binary_load_plugin),
3326         (gst_registry_binary_read_cache):
3327           comment typo and formatting
3329         * gst/gstutils.c: (gst_element_state_get_name),
3330         (gst_element_state_change_return_get_name):
3331           remove obsolete breaks
3333         * gst/gstvalue.c: (gst_date_get_type), (_gst_value_initialize):
3334           add FIXME 0.11 and remove cpp comment
3336 2007-01-29  Edward Hervey  <edward@fluendo.com>
3338         * gst/gstregistrybinary.c: (gst_registry_binary_read_cache):
3339         Fix print statement in an even more portable way.
3341 2007-01-29  Tim-Philipp Müller  <tim at centricular dot net>
3343         * docs/gst/gstreamer-sections.txt:
3344         * gst/gstutils.h:
3345           API: add GST_ROUND_DOWN_* macros (#401781).
3347 2007-01-27  Tim-Philipp Müller  <tim at centricular dot net>
3349         * docs/gst/gstreamer.types.in:
3350         * gst/gstregistry.c: (gst_registry_class_init):
3351           Document registry signals and make gtk-doc pick them up (#401381).
3353 2007-01-26  Tim-Philipp Müller  <tim at centricular dot net>
3355         * docs/pwg/building-testapp.xml:
3356           Add some audioconverts and audioresample to the pipeline, and some
3357           more comments and error handling.
3359 2007-01-26  Tim-Philipp Müller  <tim at centricular dot net>
3361         * docs/manual/manual.xml:
3362         * docs/pwg/pwg.xml:
3363           Fix typo (#400987).
3365 2007-01-26  Wim Taymans  <wim@fluendo.com>
3367         * gst/gstcaps.c: (gst_static_caps_get):
3368         Init caps flags too.
3370 2007-01-25  Sebastian Dröge  <slomo@circular-chaos.org>
3372         Patch by: Jindrich Makovicka <jindrich.makovick at itonis dot tv>
3374         * plugins/elements/gstfilesrc.c: (gst_file_src_start):
3375         If not using mmap'ed files try to seek to the end instead of the
3376         start to determine whether we can seek at all. This fixes the case
3377         of 2GB+ files over NFS, where seeks in the first 2GB can succeed but
3378         seeks for everything afterwards fail. Fixes #400656
3380 2007-01-25  Wim Taymans  <wim@fluendo.com>
3382         * gst/gstcaps.c: (_gst_caps_free), (gst_static_caps_get):
3383         Add some refcount debugging.
3384         Make gst_static_caps_get threadsafe, which is needed when autoplugging
3385         in multiple streaming threads.
3387 2007-01-25  Wim Taymans  <wim@fluendo.com>
3389         Patch by: David Schleef <ds at schleef dot org>
3391         * docs/libs/gstreamer-libs-sections.txt:
3392         * libs/gst/base/gstadapter.c: (gst_adapter_copy):
3393         * libs/gst/base/gstadapter.h:
3394         API: gst_adapter_copy() that can reduce the amount of memcpy when
3395         getting data from the adapter. Fixes #388201.
3397 2007-01-25  Edward Hervey  <edward@fluendo.com>
3399         * gst/gstregistrybinary.c: (gst_registry_binary_read_cache):
3400         In print statements, "%x" is for guint. Fixes build on macosx.
3402 2007-01-24  Edward Hervey  <edward@fluendo.com>
3404         * plugins/elements/gstmultiqueue.c:
3405         (gst_multi_queue_loop):
3406         Small fix.
3407         (single_queue_overrun_cb), (single_queue_underrun_cb),
3408         (single_queue_check_full), (gst_single_queue_new):
3409         Implement single queue growth system.
3410         This uses the extra-size properties, and will grow single queues by
3411         that much if one goes full whereas there are others empty. This is
3412         called extra-mode in the code.
3413         When a single queue's levels go back below the initial max-size
3414         limits, it is no longer in extra-mode. This is to ensure we don't
3415         consume too much memory.
3416         Fixes #399875
3418 2007-01-23  Tim-Philipp Müller  <tim at centricular dot net>
3420         * gst/gst.c: (gst_init_get_option_group):
3421           Make warning about late g_thread_init() calls a bit more explicit,
3422           so that it's more obvious to application developers what they need
3423           to do if a user files a bug against their application.
3425 2007-01-22  Edward Hervey  <edward@fluendo.com>
3427         * plugins/elements/gstmultiqueue.c:
3428         (gst_multi_queue_src_activate_push), (gst_single_queue_new):
3429         Remove previous hack of unsetting the flushing flag for the source pad
3430         instead of activating it. Instead, fix the source pad activate function
3431         so that it no longer depends on having a parent set or not.
3433 2007-01-22  Tim-Philipp Müller  <tim at centricular dot net>
3435         Patch by: Carlos Sanmartin Dominguez <csanmartin@igalia.com>
3437         * docs/manual/basics-bus.xml:
3438           Fix example code, gst_element_unref() doesn't exist any longer.
3440 2007-01-21  Tim-Philipp Müller  <tim at centricular dot net>
3442         Patch by: Mark Nauwelaerts <manauw at skynet be>
3444         * gst/gstpad.c:
3445           Fix two docs typoes (#399094).
3447 2007-01-19  Edward Hervey  <edward@fluendo.com>
3449         * docs/faq/gst-uninstalled:
3450         Add gst-plugins-base/gst/utils/ to LD_LIBRARY_PATH so that plugins
3451         depending on libgstbaseutils can work in uninstalled environment.
3453 2007-01-18  Stefan Kost  <ensonic@users.sf.net>
3455         * gst/gsttaglist.h:
3456         * gst/gsttagsetter.c:
3457         Add more docs regarding tag merge-modes and when to send tags. Fix 'since'
3458         statement for new tag.
3460 2007-01-17  Edward Hervey  <edward@fluendo.com>
3462         * plugins/elements/gstmultiqueue.c: (gst_single_queue_new):
3463         When dynamically creating single queues, activate sinkpad before adding
3464         it.
3465         We should be doing the same thing for the source pad, but we can't
3466         since it would call a method which needs the parent to be set in order
3467         to work propertly. Instead of activating the source pad, we just unset
3468         the flushing flag, which is the minimal requirement for adding a pad
3469         to an element in a state greater than READY.
3471 2007-01-17  Edward Hervey  <edward@fluendo.com>
3473         * docs/faq/gst-uninstalled:
3474         Add DYLD_LIBRARY_PATH declarations so we can also use this script on
3475         Mac OS X.
3477 2007-01-17  Tim-Philipp Müller  <tim at centricular dot net>
3479         * tests/check/gst/gstabi.c:
3480         * tests/check/gst/struct_hppa.h:
3481         * tests/check/libs/libsabi.c:
3482         * tests/check/libs/struct_hppa.h:
3483           Add ABI structs for HPPA (see #393796).
3485 2007-01-16  Tim-Philipp Müller  <tim at centricular dot net>
3487         * libs/gst/check/gstcheck.c: (gst_check_abi_list):
3488           Actually write ABI structs to the file specified in the GST_ABI
3489           environment variable, as the message we print claims we would.
3491 2007-01-15  Stefan Kost  <ensonic@users.sf.net>
3493         * tests/check/gst/gsttask.c:
3494           Fix header comment.
3496 2007-01-15  Stefan Kost  <ensonic@users.sf.net>
3498         * gst/gsttaglist.c: (_gst_tag_initialize):
3499           Change tag type from STRING to DOUBLE. Apply ChangeLog surgery for my
3500           previous two entries.
3502 2007-01-15  Stefan Kost  <ensonic@users.sf.net>
3504         * docs/gst/gstreamer-sections.txt:
3505         * gst/gsttaglist.c: (_gst_tag_initialize):
3506         * gst/gsttaglist.h:
3507           Add tag support for beat-per-minute.
3509 2007-01-15  Stefan Kost  <ensonic@users.sf.net>
3511         * gst/gstregistrybinary.c: (gst_registry_binary_write),
3512         (gst_registry_binary_initialize_magic),
3513         (gst_registry_binary_save_string), (gst_registry_binary_make_data),
3514         (gst_registry_binary_save_pad_template),
3515         (gst_registry_binary_save_feature),
3516         (gst_registry_binary_save_plugin),
3517         (gst_registry_binary_write_cache),
3518         (gst_registry_binary_check_magic),
3519         (gst_registry_binary_load_pad_template),
3520         (gst_registry_binary_load_feature),
3521         (gst_registry_binary_load_plugin),
3522         (gst_registry_binary_read_cache):
3523         * gst/gstregistrybinary.h:
3524           Use glib types, cleanup comments, impement interfaces and uri-types.
3526 2007-01-13  Andy Wingo  <wingo@pobox.com>
3528         * gst/gstpad.c (gst_pad_get_range, gst_pad_pull_range): Allow
3529         getrange() to return buffers with other caps, while we fix
3530         demuxers and typefind, or otherwise change part-negotiation.txt.
3532 2007-01-12  Andy Wingo  <wingo@pobox.com>
3534         * libs/gst/base/gstbasetransform.c (gst_base_transform_activate):
3535         Factor start/stop into this private function instead of partially
3536         in activate functions and partially in the change_state function.