Commit graph

226 commits

Author SHA1 Message Date
Sebastian Dröge
b997b0545a Correct all relevant warnings found by the sparse semantic code analyzer. This include marking several symbols static...
Original commit message from CVS:
* gst/gstconfig.h.in:
* libs/gst/base/gstcollectpads.c: (gst_collect_pads_read_buffer):
* libs/gst/check/gstcheck.c: (gst_check_log_message_func),
(gst_check_log_critical_func), (gst_check_drop_buffers),
(gst_check_element_push_buffer_list):
* libs/gst/controller/gstcontroller.c: (gst_controller_get),
(gst_controller_get_type):
* libs/gst/controller/gsthelper.c: (gst_object_control_properties),
(gst_object_get_controller), (gst_object_get_control_source):
* libs/gst/controller/gstinterpolationcontrolsource.c:
(gst_interpolation_control_source_new):
* libs/gst/controller/gstlfocontrolsource.c:
(gst_lfo_control_source_new):
* libs/gst/dataprotocol/dataprotocol.c:
(gst_dp_event_from_packet_0_2):
* plugins/elements/gstfdsrc.c:
* plugins/elements/gstmultiqueue.c:
* plugins/elements/gsttee.c:
* plugins/elements/gsttypefindelement.c:
* plugins/indexers/gstfileindex.c: (_file_index_id_save_xml),
(gst_file_index_add_association):
* plugins/indexers/gstmemindex.c:
* tests/benchmarks/gstpollstress.c: (mess_some_more):
* tests/check/elements/queue.c: (setup_queue):
* tests/check/gst/gstpipeline.c:
* tests/check/libs/collectpads.c: (setup), (teardown),
(gst_collect_pads_suite):
* tests/examples/adapter/adapter_test.c:
* tests/examples/metadata/read-metadata.c: (make_pipeline):
* tests/examples/xml/createxml.c:
* tests/examples/xml/runxml.c:
* tools/gst-inspect.c:
* tools/gst-run.c:
Correct all relevant warnings found by the sparse semantic code
analyzer. This include marking several symbols static, using
NULL instead of 0 for pointers, not using variable sized arrays
on the stack, moving variable declarations to the beginning of
a block and using "foo (void)" instead of "foo ()" for declarations.
2008-02-29 12:41:33 +00:00
Damien Lespiau
16fe8b9626 libs/gst/: Fix empty prototypes. Fixes bug #507957.
Original commit message from CVS:
Patch by: Damien Lespiau <damien.lespiau@gmail.com>
* libs/gst/controller/gstcontroller.h:
* libs/gst/controller/gstcontrolsource.h:
* libs/gst/controller/gstinterpolationcontrolsource.h:
* libs/gst/controller/gstlfocontrolsource.h:
* libs/gst/dataprotocol/dataprotocol.h:
Fix empty prototypes.  Fixes bug #507957.
2008-01-08 02:07:38 +00:00
Tim-Philipp Müller
0ef9a5f5b1 Makefile.am: Add check-exports target and run it as part of 'make check' (see #499140 and #493983).
Original commit message from CVS:
* Makefile.am:
Add check-exports target and run it as part of 'make check'
(see #499140 and #493983).
* gst/gst_private.h:
* gst/gstelementfactory.h:
* gst/gstghostpad.c: (gst_proxy_pad_class_init):
* gst/gstinfo.c: (_priv_gst_in_valgrind), (_gst_debug_init),
(_priv_gst_in_valgrind):
* gst/gstinfo.h: (GstLogFunction):
* gst/gsttypefind.c: (type_find_debug), (GST_CAT_DEFAULT),
(gst_type_find_register):
* gst/gsttypefindfactory.c: (type_find_debug), (GST_CAT_DEFAULT),
(gst_type_find_factory_get_type):
* libs/gst/controller/gstcontroller.c: (GST_CAT_DEFAULT),
(GST_CAT_DEFAULT), (parent_class), (priv_gst_controller_key),
(gst_controller_new_valist), (gst_controller_new_list),
(_gst_controller_dispose), (_gst_controller_class_init):
* libs/gst/controller/gstcontrolsource.c: (GST_CAT_DEFAULT):
* libs/gst/controller/gsthelper.c: (GST_CAT_DEFAULT),
(GST_CAT_DEFAULT), (gst_object_uncontrol_properties),
(gst_object_get_controller), (gst_object_set_controller),
(gst_object_suggest_next_sync), (gst_object_sync_values),
(gst_object_set_control_source), (gst_object_get_control_source),
(gst_object_get_value_arrays), (gst_object_get_value_array),
(gst_object_get_control_rate), (gst_object_set_control_rate):
* libs/gst/controller/gstinterpolation.c: (GST_CAT_DEFAULT):
* libs/gst/controller/lib.c: (GST_CAT_DEFAULT):
Make some functions that should be static static; rename some
private symbols so that they don't get exported; add some FIXME
comments so we can move accidentally exported functions into
our private section in 0.11.
* win32/common/libgstreamer.def:
Add gst_utils_get_timestamp().
2007-12-12 23:20:00 +00:00
Stefan Kost
d8e77f9bf8 gst/gstevent.c: Little documentation improvment.
Original commit message from CVS:
* gst/gstevent.c:
Little documentation improvment.
* gst/gstpreset.c:
More TODO cleanups. Remove c++ comments.
* libs/gst/controller/gstcontroller.c:
Add TODO and use quark from static string.
* tests/check/gst/gstmessage.c:
* tests/check/gst/gststructure.c:
Use quark from static string.
2007-11-17 17:50:21 +00:00
Sebastien Moutte
e332c34902 libs/gst/controller/: Use gst_guint64_to_gdouble() when converting from a uint64 or
Original commit message from CVS:
Patch by: Sebastien Moutte <sebastien at moutte dot net>
* libs/gst/controller/gstinterpolation.c:
* libs/gst/controller/gstlfocontrolsource.c:
Use gst_guint64_to_gdouble() when converting from a uint64 or
GstClockTime to double to fix the build on win32. Fixes #474371.
2007-09-13 09:08:23 +00:00
Stefan Kost
7c2e8138b6 Add more missing docs.
Original commit message from CVS:
* libs/gst/check/gstbufferstraw.c:
* libs/gst/check/gstcheck.h:
* libs/gst/controller/gstcontroller.c:
* libs/gst/controller/gstcontrolsource.h:
* libs/gst/controller/gstlfocontrolsource.h:
* plugins/elements/gstcapsfilter.h:
* plugins/elements/gstfdsink.h:
* plugins/elements/gstfdsrc.h:
Add more missing docs.
2007-08-13 13:33:07 +00:00
Tim-Philipp Müller
2595ee189e libs/gst/controller/gstlfocontrolsource.c: Printf format fix.
Original commit message from CVS:
* libs/gst/controller/gstlfocontrolsource.c:
Printf format fix.
2007-08-10 10:30:22 +00:00
Jan Schmidt
26e5396c6d libs/gst/controller/Makefile.am: Dist gstlfocontrolsourceprivate.h
Original commit message from CVS:
* libs/gst/controller/Makefile.am:
Dist gstlfocontrolsourceprivate.h
2007-08-07 16:06:47 +00:00
Sebastian Dröge
b47469722f libs/gst/controller/: API: Add GstLFOControlSource, a control source that gives values for specific timestamps based ...
Original commit message from CVS:
reviewed by: Stefan Kost <ensonic@users.sf.net>
* libs/gst/controller/Makefile.am:
* libs/gst/controller/gstlfocontrolsource.c: (_calculate_pos),
(gst_lfo_waveform_get_type), (gst_lfo_control_source_reset),
(gst_lfo_control_source_new),
(gst_lfo_control_source_set_waveform),
(gst_lfo_control_source_bind), (gst_lfo_control_source_init),
(gst_lfo_control_source_finalize),
(gst_lfo_control_source_dispose),
(gst_lfo_control_source_set_property),
(gst_lfo_control_source_get_property),
(gst_lfo_control_source_class_init):
* libs/gst/controller/gstlfocontrolsource.h:
* libs/gst/controller/gstlfocontrolsourceprivate.h:
API: Add GstLFOControlSource, a control source that gives values
for specific timestamps based on several periodic waveforms.
Fixes #459717.
* tests/check/libs/controller.c: (GST_START_TEST),
(gst_controller_suite):
* docs/libs/gstreamer-libs-docs.sgml:
* docs/libs/gstreamer-libs-sections.txt:
* docs/libs/gstreamer-libs.types:
Add documentation and unit tests for GstLFOControlSource.
2007-08-03 15:47:17 +00:00
Sebastian Dröge
4a99b7d300 libs/gst/controller/gstinterpolation.c: Also round to the nearest int when using cubic interpolation.
Original commit message from CVS:
* libs/gst/controller/gstinterpolation.c:
Also round to the nearest int when using cubic interpolation.
2007-07-22 12:18:46 +00:00
Jan Schmidt
a6df9f4bac libs/gst/controller/gstinterpolation.c: When linearly interpolating integer types, round to the nearest int by adding...
Original commit message from CVS:
* libs/gst/controller/gstinterpolation.c:
When linearly interpolating integer types, round to the nearest int
by adding 0.5. Don't do it for float/double types.
Fixes the failing controller test on my machine, which is somehow
rounding differently than on the buildbots.
2007-07-21 21:20:37 +00:00
Sebastian Dröge
286cd75855 libs/gst/controller/: API: Refactor GstController into the core controller which can take a GstControlSource for prov...
Original commit message from CVS:
Reviewed by: Stefan Kost <ensonic@users.sf.net>
* libs/gst/controller/Makefile.am:
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_add_interpolation_control_source),
(gst_controlled_property_new), (gst_controlled_property_free),
(gst_controller_find_controlled_property),
(gst_controller_new_valist), (gst_controller_new_list),
(gst_controller_new), (gst_controller_remove_properties_valist),
(gst_controller_remove_properties_list),
(gst_controller_remove_properties),
(gst_controller_set_property_disabled),
(gst_controller_set_disabled), (gst_controller_set_control_source),
(gst_controller_get_control_source), (gst_controller_get),
(gst_controller_sync_values), (gst_controller_get_value_array),
(_gst_controller_dispose), (gst_controller_get_type),
(gst_controlled_property_set_interpolation_mode),
(gst_controller_set), (gst_controller_set_from_list),
(gst_controller_unset), (gst_controller_unset_all),
(gst_controller_get_all), (gst_controller_set_interpolation_mode):
* libs/gst/controller/gstcontroller.h:
* libs/gst/controller/gstcontrollerprivate.h:
* libs/gst/controller/gstcontrolsource.c:
(gst_control_source_class_init), (gst_control_source_init),
(gst_control_source_get_value),
(gst_control_source_get_value_array), (gst_control_source_bind):
* libs/gst/controller/gstcontrolsource.h:
* libs/gst/controller/gsthelper.c: (gst_object_set_control_source),
(gst_object_get_control_source):
* libs/gst/controller/gstinterpolation.c:
(gst_interpolation_control_source_find_control_point_node),
(gst_interpolation_control_source_get_first_value),
(_interpolate_none_get), (interpolate_none_get),
(interpolate_none_get_boolean_value_array),
(interpolate_none_get_enum_value_array),
(interpolate_none_get_string_value_array),
(_interpolate_trigger_get), (interpolate_trigger_get),
(interpolate_trigger_get_boolean_value_array),
(interpolate_trigger_get_enum_value_array),
(interpolate_trigger_get_string_value_array):
* libs/gst/controller/gstinterpolationcontrolsource.c:
(gst_control_point_free), (gst_interpolation_control_source_reset),
(gst_interpolation_control_source_new),
(gst_interpolation_control_source_set_interpolation_mode),
(gst_interpolation_control_source_bind),
(gst_control_point_compare), (gst_control_point_find),
(gst_interpolation_control_source_set_internal),
(gst_interpolation_control_source_set),
(gst_interpolation_control_source_set_from_list),
(gst_interpolation_control_source_unset),
(gst_interpolation_control_source_unset_all),
(gst_interpolation_control_source_get_all),
(gst_interpolation_control_source_get_count),
(gst_interpolation_control_source_init),
(gst_interpolation_control_source_finalize),
(gst_interpolation_control_source_dispose),
(gst_interpolation_control_source_class_init):
* libs/gst/controller/gstinterpolationcontrolsource.h:
* libs/gst/controller/gstinterpolationcontrolsourceprivate.h:
API: Refactor GstController into the core controller which can take
a GstControlSource for providing actual values for timestamps.
Implement a interpolation control source and use this for backward
compatibility, deprecate a bunch of functions that are now handled
by GstControlSource or GstInterpolationControlSource.
Make it possible to disable the controller completely or only for
specific properties. Fixes #450711.
* docs/libs/gstreamer-libs-docs.sgml:
* docs/libs/gstreamer-libs-sections.txt:
* docs/libs/gstreamer-libs.types:
Add new functions and classes to the docs.
* tests/check/libs/controller.c: (GST_START_TEST),
(gst_controller_suite):
* tests/examples/controller/audio-example.c: (main):
Port unit test and example to the new API and add some new
unit tests.
2007-07-06 21:50:02 +00:00
Stefan Kost
fd12f4b150 libs/gst/controller/gstcontroller.c: Fix wrong getter for enums in controller.
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_set_interpolation_mode):
Fix wrong getter for enums in controller.
2007-06-14 20:29:09 +00:00
Sebastian Dröge
ca50216942 libs/gst/controller/gstinterpolation.c: Actually use the new functions with min/max checks for the trigger and none i...
Original commit message from CVS:
* libs/gst/controller/gstinterpolation.c:
Actually use the new functions with min/max checks for the trigger and
none interpolation modes for get() and get_value_array() instead of
just the latter.
2007-06-11 07:14:53 +00:00
Sebastian Dröge
f8742ef131 libs/gst/controller/gstcontroller.c: Unset the minimum and maximum GValues when freeing the corresponding
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_free):
Unset the minimum and maximum GValues when freeing the corresponding
GstControllerProperty struct.
2007-06-10 12:38:11 +00:00
Sebastian Dröge
bdcc0329ef libs/gst/controller/: Protect against values larger or smaller than the minimum or maximum allowed value for the prop...
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_new):
* libs/gst/controller/gstcontrollerprivate.h:
* libs/gst/controller/gstinterpolation.c:
(gst_controlled_property_find_control_point_node),
(interpolate_none_get), (interpolate_none_get_enum_value_array),
(interpolate_none_get_string_value_array),
(interpolate_trigger_get),
(interpolate_trigger_get_enum_value_array),
(interpolate_trigger_get_string_value_array):
Protect against values larger or smaller than the minimum or maximum
allowed value for the property when using values that can be compared.
Optimize trigger interpolator a bit by taking the last requested value
into account instead of always looping through the complete list.
Fix coding style a bit, everywhere else we use "return foo" instead
of "return (foo)".
* tests/check/libs/controller.c: (GST_START_TEST),
(gst_controller_suite):
Add unit test for the protection against too large or too small
values.
2007-06-09 16:58:30 +00:00
Sébastien Moutte
45ed0f91b9 libs/gst/controller/gstinterpolation.c: Use gst_util_guint64_to_gdouble for conversions.
Original commit message from CVS:
* libs/gst/controller/gstinterpolation.c: (DEFINE_CUBIC_GET):
Use gst_util_guint64_to_gdouble for conversions.
* win32/common/libgstreamer.def:
Add new exported functions.
2007-06-07 20:51:35 +00:00
Sebastian Dröge
7b9fb5505f libs/gst/controller/gstcontroller.c: Clarify docs: The get_all, get_value_array(s) functions don't modify the GObject...
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c:
Clarify docs: The get_all, get_value_array(s) functions
don't modify the GObject properties.
2007-06-06 14:20:01 +00:00
Sebastian Dröge
c478fb4813 libs/gst/controller/: Factor out the 'set' logic into gst_controller_set_unlocked for the gst_controller_set and gst_...
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_set_interpolation_mode),
(gst_controlled_property_prepend_default),
(gst_controlled_property_new), (gst_controller_set_unlocked),
(gst_controller_set), (gst_controller_set_from_list),
(gst_controller_unset), (gst_controller_unset_all):
* libs/gst/controller/gstcontrollerprivate.h:
* libs/gst/controller/gstinterpolation.c:
Factor out the 'set' logic into gst_controller_set_unlocked for the
gst_controller_set and gst_controller_set_from_list functions.
To make life of the interpolators easier always add a control point
at timestamp zero with the default value.
In the linear interpolator make things more obvious by better variable
naming (slope).
Implement cubic interpolation mode (by using a natural cubic spline)
and map the quadratic interpolation mode to this too (as quadratic
doesn't make much sense, see discussion on the list).
* tests/check/libs/controller.c: (GST_START_TEST),
(gst_controller_suite):
Add unit test for the cubic interpolation mode and check everywhere
if the interpolation mode could be set as expected.
2007-06-06 14:01:56 +00:00
Sebastian Dröge
e55a7a7a85 libs/gst/controller/gstinterpolation.c: Use an array of the correct type when using _get_value_array with linear inte...
Original commit message from CVS:
* libs/gst/controller/gstinterpolation.c:
Use an array of the correct type when using _get_value_array with
linear interpolation.
2007-05-22 09:56:25 +00:00
Sebastian Dröge
e645e3d2f6 libs/gst/controller/gstinterpolation.c: Add support for retrieving value arrays when using the trigger interpolation ...
Original commit message from CVS:
* libs/gst/controller/gstinterpolation.c:
(interpolate_trigger_get_enum_value_array),
(interpolate_trigger_get_string_value_array):
Add support for retrieving value arrays when using the trigger
interpolation mode.
2007-05-21 21:48:07 +00:00
Sebastian Dröge
51424c0da5 libs/gst/controller/gstcontroller.*: Clarify the docs of gst_controller_get_value_array(): The array where the values...
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c:
(gst_controller_get_value_array):
* libs/gst/controller/gstcontroller.h:
Clarify the docs of gst_controller_get_value_array(): The array where
the values should be written to must be allocated as there seems to be
no way to get the size of a random GType. This doesn't change any
behaviour. Also fix some typos all over the place and remove an unused,
commented function that is not necessary as g_object_set() could be
used instead.
* tests/check/libs/controller.c: (GST_START_TEST),
(gst_controller_suite):
Add unit test for gst_controller_get_value_array().
2007-05-21 21:34:49 +00:00
Sebastian Dröge
82543e317f libs/gst/controller/: API: gst_controller_suggest_next_sync(), gst_object_suggest_next_sync()
Original commit message from CVS:
reviewed by: Stefan Kost <ensonic@users.sf.net>
* libs/gst/controller/gstcontroller.c:
(gst_controller_suggest_next_sync), (gst_controller_sync_values),
(_gst_controller_get_property), (_gst_controller_set_property),
(_gst_controller_init), (_gst_controller_class_init):
* libs/gst/controller/gstcontroller.h:
* libs/gst/controller/gsthelper.c: (gst_object_suggest_next_sync),
(gst_object_get_control_rate), (gst_object_set_control_rate):
API: gst_controller_suggest_next_sync(), gst_object_suggest_next_sync()
Add API that provides sync suggestion timestamps for elements that
call gst_object_sync_values() from which those elements can subdivide
their processing loop to get the best results for the controlled
properties. For now it just suggests last_sync + control_rate as
new timestamp but this will be improved in the future.
While doing that change the control-rate property to a GstClockTime
from guint and change it's meaning from samples to nanoseconds as
the GstController doesn't know anything about sampling rate. Strictly
speaking this breaks ABI but as the control-rate property didn't do
anything in the past and as such couldn't be used this should be no
problem.
2007-05-17 17:37:58 +00:00
Sebastian Dröge
3b7871d993 libs/gst/controller/: Save last synced value from the list to continue searching from there in future syncs. This spe...
Original commit message from CVS:
reviewed by: Stefan Kost <ensonic@users.sf.net>
* libs/gst/controller/gstcontroller.c: (gst_controller_unset),
(gst_controller_unset_all):
* libs/gst/controller/gstcontrollerprivate.h:
* libs/gst/controller/gstinterpolation.c:
(gst_controlled_property_find_control_point_node):
Save last synced value from the list to continue searching from there
in future syncs. This speeds everything up a bit.
2007-05-17 17:16:09 +00:00
Sebastian Dröge
b92d7dc076 libs/gst/controller/: Add a new private GstControlPoint struct which "inherits" from
Original commit message from CVS:
reviewed by: Stefan Kost <ensonic@users.sf.net>
* libs/gst/controller/gstcontroller.c: (gst_control_point_compare),
(gst_control_point_find), (gst_controlled_property_new),
(gst_control_point_free), (gst_controlled_property_free),
(gst_controller_set), (gst_controller_set_from_list),
(gst_controller_unset), (gst_controller_unset_all),
(gst_controller_sync_values):
* libs/gst/controller/gstcontroller.h:
* libs/gst/controller/gstcontrollerprivate.h:
* libs/gst/controller/gstinterpolation.c:
(gst_controlled_property_find_control_point_node),
(interpolate_none_get), (interpolate_trigger_get):
Add a new private GstControlPoint struct which "inherits" from
GstTimedValue to allow different interpolators to store internal
values next to each control point. From the outside everything is
still a GstControlPoint so we don't loose binary compatibility.
Also fixup all the GValue handling to not leak GValues or list nodes.
* tests/check/libs/controller.c: (GST_START_TEST):
Free the list nodes and GValues in the controller_misc test.
2007-05-17 17:05:36 +00:00
Tim-Philipp Müller
42651f72ff libs/gst/controller/: Don't crash if someone tries to set an interpolation mode that is invalid or that isn't support...
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_set_interpolation_mode):
* libs/gst/controller/gstinterpolation.c:
Don't crash if someone tries to set an interpolation mode that
is invalid or that isn't supported yet. Fixes #422295.
* tests/check/libs/controller.c: (GST_START_TEST),
(gst_controller_suite):
Add a test case for the above.
2007-05-04 12:37:01 +00:00
Stefan Kost
63a26ed519 docs/random/ensonic/dynlink.txt: More work on proposal for new core api.
Original commit message from CVS:
* docs/random/ensonic/dynlink.txt:
More work on proposal for new core api.
* docs/libs/gstreamer-libs-sections.txt:
* libs/gst/base/gstbasetransform.h:
API: GST_BASE_TRANSFORM_LOCK/UNLOCK added
* libs/gst/controller/gstcontroller.c:
(on_object_controlled_property_changed),
(gst_controller_sync_values),
(gst_controller_set_interpolation_mode):
* libs/gst/controller/gstcontroller.h:
Less verbose logging add docs for unimplemented parts and correctly
return when using unavailable parts.
2007-04-02 14:48:12 +00:00
Stefan Kost
85c81ea952 docs/libs/Makefile.am: Fix path to core docs.
Original commit message from CVS:
* docs/libs/Makefile.am:
Fix path to core docs.
* gst/gstbin.c: (gst_bin_get_by_interface),
(gst_bin_iterate_all_by_interface):
Refix docs by also renaming 'interface' to 'iface' in implementation.
* docs/gst/gstreamer-sections.txt:
* gst/gstcaps.c:
* gst/gstchildproxy.c: (gst_child_proxy_base_init):
* gst/gstchildproxy.h:
* gst/gstelementfactory.c:
* gst/gstpadtemplate.h:
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_new):
Document more.
2007-02-11 19:59:12 +00:00
Tim-Philipp Müller
db8e173590 libs/gst/controller/gstcontroller.c: Fix refcounting here too, just like we did for _new_valist() a few days ago (#35...
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c: (gst_controller_new_list):
Fix refcounting here too, just like we did for _new_valist() a few
days ago (#357180) (thanks to René Stadler). Also remove all those
'Since: 0.9' from the gtk-doc blobs.
* tests/check/libs/controller.c: (controller_refcount_new_list),
(gst_controller_suite):
Unit test for the above.
2006-10-11 09:13:26 +00:00
René Stadler
758c8c6929 libs/gst/controller/gstcontroller.c: Take ref to controlled object so that it cannot disappear.
Original commit message from CVS:
Patch by: René Stadler <mail at renestadler dot de>
* libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
(gst_controller_new_list), (_gst_controller_dispose),
(_gst_controller_finalize), (_gst_controller_class_init):
Take ref to controlled object so that it cannot disappear.
Fixes #357432.
2006-10-10 14:13:08 +00:00
Tim-Philipp Müller
f468db236d Printf fixes.
Original commit message from CVS:
* gst/gstpad.c: (pre_activate):
* gst/gstregistry.c: (gst_registry_scan_path_level):
* gst/gstregistryxml.c: (load_plugin):
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_set_interpolation_mode):
* libs/gst/dataprotocol/dataprotocol.c:
(gst_dp_packet_from_event_1_0):
* libs/gst/net/gstnetclientclock.c:
(gst_net_client_clock_observe_times):
* plugins/elements/gstfdsrc.c: (gst_fd_src_create):
Printf fixes.
2006-10-05 14:26:08 +00:00
Tim-Philipp Müller
3040ad0e2d libs/gst/controller/gstcontroller.c: Don't g_return_val_if_fail() on timed values with invalid timestamps inside a cr...
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
(gst_controller_set_from_list):
Don't g_return_val_if_fail() on timed values with invalid timestamps
inside a critical section without unlocking the mutex. Spotted by
René Stadler. (#357617)
Also, fix up refcounting properly: when returning an existing
controller, we should increase the reference only once and not
once per property and when trying to control a property again
we should also increase the refcount.
2006-09-29 12:24:50 +00:00
Stefan Kost
abfedeb4b8 libs/gst/controller/gstcontroller.c: Ref instances when returning them again (fixes #357180)
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
(gst_controller_new_list):
Ref instances when returning them again (fixes #357180)
2006-09-22 13:32:43 +00:00
Stefan Kost
876f4e4722 libs/gst/controller/gstcontroller.h: fix ABI size-correction
Original commit message from CVS:
* libs/gst/controller/gstcontroller.h:
fix ABI size-correction
* tests/check/libs/gdp.c: (gst_dp_suite):
make tests that use deprecated API conditional
2006-08-10 20:05:30 +00:00
Stefan Kost
9460b3ab7b API: add gst_object_{s,g}et_control_rate(), add private data section, fix docs
Original commit message from CVS:
* docs/libs/gstreamer-libs-sections.txt:
* libs/gst/controller/gstcontroller.c:
(_gst_controller_get_property), (_gst_controller_set_property),
(_gst_controller_init), (_gst_controller_class_init):
* libs/gst/controller/gstcontroller.h:
* libs/gst/controller/gsthelper.c: (gst_object_get_control_rate),
(gst_object_set_control_rate):
API: add gst_object_{s,g}et_control_rate(), add private data section,
fix docs
* libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packetizer_new):
* libs/gst/dataprotocol/dataprotocol.h:
add deprecation guards to make gtk-doc happy and allow disabling cruft
2006-08-10 19:46:14 +00:00
Thomas Vander Stichele
3c3bbc87d4 configure.ac: set CFLAGS and friends to -O0 if gcov is being used add GCOV LIBS
Original commit message from CVS:
* configure.ac:
set CFLAGS and friends to -O0 if gcov is being used
add GCOV LIBS
* gst/Makefile.am:
* libs/gst/base/Makefile.am:
* libs/gst/check/Makefile.am:
* libs/gst/controller/Makefile.am:
* libs/gst/dataprotocol/Makefile.am:
* libs/gst/net/Makefile.am:
* plugins/elements/Makefile.am:
* plugins/indexers/Makefile.am:
add makefile rules to generate gcov data and clean up
* tests/check/Makefile.am:
add a coverage target that generates an html overview
of coverage data
2006-07-01 23:26:06 +00:00
Wouter Paesen
fb4ad149d6 libs/gst/controller/gstcontroller.c: Fix controlling of float properties (#344849).
Original commit message from CVS:
Patch by: Wouter Paesen  <wouter at kangaroot net>
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_new):
Fix controlling of float properties (#344849).
* tests/check/libs/controller.c:
(gst_test_mono_source_get_property),
(gst_test_mono_source_set_property),
(gst_test_mono_source_class_init), (GST_START_TEST):
While we're at it, add some float stuff to unit test.
2006-06-14 08:26:53 +00:00
Stefan Kost
992e992730 libs/gst/controller/gstcontroller.c: some little tuning
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c:
(gst_controller_sync_values):
some little tuning
* tests/check/libs/controller.c: (GST_START_TEST),
(gst_controller_suite):
a new test for live value handling
2006-04-28 17:33:41 +00:00
Tim-Philipp Müller
72845a47e6 libs/gst/controller/gstcontroller.c: Free allocated GstTimedValues when freeing list nodes.
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c: (gst_controller_unset),
(gst_controller_unset_all):
Free allocated GstTimedValues when freeing list nodes.
Should fix leaks 'make check-valgrind' complains about.
* win32/common/libgstcontroller.def:
Add gst_controller_unset_all.
2006-04-12 10:28:53 +00:00
Stefan Kost
3512929a5c Added new method _unset_all() and fixed _unset()
Original commit message from CVS:
* docs/libs/gstreamer-libs-sections.txt:
* libs/gst/controller/gstcontroller.c: (gst_controller_unset),
(gst_controller_unset_all):
* libs/gst/controller/gstcontroller.h:
Added new method _unset_all() and fixed _unset()
* tests/check/libs/controller.c: (GST_START_TEST),
(gst_controller_suite):
Added two testcases for new and fixed method
2006-04-11 21:07:26 +00:00
Stefan Kost
77a5695718 Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
Original commit message from CVS:
* gst/gstbuffer.c: (gst_subbuffer_class_init):
* gst/gstclock.c: (gst_clock_class_init):
* gst/gstelement.c: (gst_element_class_init):
* gst/gstindex.c: (gst_index_class_init):
* gst/gstindexfactory.c: (gst_index_factory_class_init):
* gst/gstobject.c: (gst_object_class_init),
(gst_signal_object_class_init):
* gst/gstpad.c: (gst_pad_class_init):
* gst/gstpadtemplate.c: (gst_pad_template_class_init):
* gst/gstpluginfeature.c: (gst_plugin_feature_class_init):
* gst/gstregistry.c: (gst_registry_class_init):
* gst/gstsystemclock.c: (gst_system_clock_class_init):
* gst/gsttask.c: (gst_task_class_init):
* gst/gstxml.c: (gst_xml_class_init):
* libs/gst/base/gstbasesink.c: (gst_base_sink_class_init):
* libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
(gst_base_src_loop):
* libs/gst/controller/gstcontroller.c:
(_gst_controller_class_init):
* plugins/elements/gstfdsrc.c: (gst_fd_src_class_init):
* plugins/indexers/gstfileindex.c: (gst_file_index_class_init):
* plugins/indexers/gstmemindex.c: (gst_mem_index_class_init):
* tests/old/examples/plugins/example.c: (gst_example_class_init):
* tests/old/testsuite/threads/signals.c: (gst_test_class_init):
Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
2006-04-08 20:57:31 +00:00
Stefan Kost
dad303a342 docs/: more dparam docs
Original commit message from CVS:
* docs/manual/advanced-dparams.xml:
* docs/pwg/advanced-dparams.xml:
more dparam docs
* gst/gstindex.c:
fix docs
* libs/gst/controller/lib.c: (gst_controller_init):
init just once
2006-01-31 16:56:28 +00:00
Stefan Kost
a768c44689 docs/manual/advanced-dparams.xml: describe controller
Original commit message from CVS:
* docs/manual/advanced-dparams.xml:
describe controller
* docs/manual/advanced-position.xml:
* docs/manual/basics-init.xml:
* docs/manual/manual.xml:
* docs/manual/titlepage.xml:
* docs/pwg/pwg.xml:
* docs/pwg/titlepage.xml:
cleanup xml (more to come)
* libs/gst/controller/gstcontroller.c:
fix typo
2006-01-30 21:11:38 +00:00
Stefan Kost
d7fe3b3c7b docs/: add new API entries to the docs
Original commit message from CVS:
* docs/gst/gstreamer-docs.sgml:
* docs/gst/gstreamer-sections.txt:
* docs/libs/gstreamer-libs-sections.txt:
add new API entries to the docs
* libs/gst/controller/Makefile.am:
* libs/gst/controller/gstcontroller.c:
* libs/gst/controller/gstcontroller.h:
* libs/gst/controller/gstcontrollerprivate.h:
* libs/gst/controller/gsthelper.c:
* libs/gst/controller/gstinterpolation.c:
move private structs to private header
* po/README:
gstreamer-0.7 -> gstreamer-0.10
* tests/check/libs/struct_i386.h:
remove private structs
2006-01-13 14:21:48 +00:00
Stefan Kost
ff3b09e189 libs/gst/controller/: make G_TYPE_STRING controlable
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_set_interpolation_mode),
(gst_controlled_property_new):
* libs/gst/controller/gstcontroller.h:
* libs/gst/controller/gstinterpolation.c:
(interpolate_none_get_string_value_array):
make G_TYPE_STRING controlable
2006-01-12 21:55:42 +00:00
Sebastien Moutte
7e0089586b libs/gst/controller/gstinterpolation.c: use convert function for uint64/double
Original commit message from CVS:

patch by: Sebastien Moutte

* libs/gst/controller/gstinterpolation.c:
use convert function for uint64/double
* win32/vs6/libgstcontroller.dsp:
link to GLib
2005-12-04 18:54:19 +00:00
Thomas Vander Stichele
602d69e85c add libgstcontroller to the build
Original commit message from CVS:
add libgstcontroller to the build
2005-12-01 10:07:26 +00:00
Thomas Vander Stichele
00b670d9a2 libs/gst/controller/gstinterpolation.c: whitespace prices have crashed, we should feel free to use some now use gst_g...
Original commit message from CVS:

* libs/gst/controller/gstinterpolation.c:
whitespace prices have crashed, we should feel free to use some now
use gst_guint64_to_gdouble
2005-12-01 09:54:56 +00:00
Thomas Vander Stichele
e0d86774fd wrap config.h include
Original commit message from CVS:
wrap config.h include
2005-12-01 09:23:20 +00:00
Stefan Kost
5f11755575 docs/random/ensonic/dparams.txt: some TODOs for the next dev cycle
Original commit message from CVS:
* docs/random/ensonic/dparams.txt:
some TODOs for the next dev cycle
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_set_interpolation_mode),
(gst_controlled_property_new):
* libs/gst/controller/gstcontroller.h:
use base type to assign acccessor functions
2005-11-28 13:25:14 +00:00
Stefan Kost
7b347681d5 gst/gstelement.c: don't loop forever
Original commit message from CVS:
* gst/gstelement.c: (gst_element_dispose):
don't loop forever
* gst/gstiterator.c:
* gst/gststructure.c:
doc fixes
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_set_interpolation_mode):
* libs/gst/controller/gstcontroller.h:
* libs/gst/controller/gstinterpolation.c:
(interpolate_none_get_enum_value_array):
support controlling enums
2005-11-27 22:43:08 +00:00
Thomas Vander Stichele
f21e4cc7c3 fix up Makefile.am and remove GST_ENABLE_NEW
Original commit message from CVS:
fix up Makefile.am and remove GST_ENABLE_NEW
2005-11-27 16:46:48 +00:00
Stefan Kost
f6afcd058c gst/gst.h: include "gstchildproxy.h"
Original commit message from CVS:
* gst/gst.h:
include "gstchildproxy.h"
* gst/gstchildproxy.h:
* libs/gst/controller/gstcontroller.h:
use G_GNUC_NULL_TERMINATED
2005-11-22 09:35:25 +00:00
Stefan Kost
e0a1560111 merge controller testsuites fix broken tests remove mem-chunk from docs
Original commit message from CVS:
* check/gst-libs/controller.c: (GST_START_TEST),
(gst_controller_suite):
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_set_interpolation_mode):
* libs/gst/controller/gstcontroller.h:
* libs/gst/controller/gstinterpolation.c:
* testsuite/controller/.cvsignore:
* testsuite/controller/Makefile.am:
* testsuite/controller/interpolator.c:
merge controller testsuites
fix broken tests
remove mem-chunk from docs
2005-10-17 17:05:38 +00:00
Thomas Vander Stichele
5cb910050a whitespace fixes
Original commit message from CVS:
whitespace fixes
2005-10-15 15:53:59 +00:00
Thomas Vander Stichele
08479555e5 configure.ac: reorganize clean up document more remove cruft
Original commit message from CVS:

* configure.ac:
reorganize
clean up
document more
remove cruft
* check/Makefile.am:
* docs/gst/Makefile.am:
* examples/helloworld/Makefile.am:
* gst/Makefile.am:
* gst/base/Makefile.am:
* gst/check/Makefile.am:
* gst/elements/Makefile.am:
* gst/indexers/Makefile.am:
* gst/parse/Makefile.am:
* libs/gst/controller/Makefile.am:
* libs/gst/dataprotocol/Makefile.am:
* examples/helloworld/helloworld.c: (event_loop):
compile fixes, though it's not being compiled currently
2005-10-15 13:58:18 +00:00
Edward Hervey
8986d3f33e libs/gst/controller/gstcontroller.*: Added GList* version of _remove_properties() in order to be able to wrap it in b...
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c: (gst_controller_remove_properties_list):
* libs/gst/controller/gstcontroller.h:
Added GList* version of _remove_properties() in order to be able to wrap
it in bindings.
2005-10-11 12:42:23 +00:00
Edward Hervey
52b24de958 libs/gst/controller/gstcontroller.c: Better if we actually iterate the list :)
Original commit message from CVS:
* libs/gst/controller/gstcontroller.c: (gst_controller_new_list):
Better if we actually iterate the list :)
2005-09-29 15:39:22 +00:00
Stefan Kost
e37803d652 gst/gstinfo.c: don't do dummy g_strdup()s
Original commit message from CVS:
* gst/gstinfo.c: (gst_debug_log_default):
don't do dummy g_strdup()s
* libs/gst/controller/gstcontroller.c:
(on_object_controlled_property_changed),
(gst_controlled_property_new), (gst_controller_new_valist),
(gst_controller_new_list),
(gst_controller_remove_properties_valist), (gst_controller_set),
(gst_controller_get), (gst_controller_sync_values),
(gst_controller_get_value_array), (_gst_controller_class_init),
(gst_controller_get_type):
* libs/gst/controller/gstcontroller.h:
* libs/gst/controller/gstinterpolation.c:
(gst_controlled_property_find_timed_value_node):
convert // to /**/ comments
2005-09-28 17:30:13 +00:00
Stefan Kost
d6b67a4dd8 added another constructor for language bindings
Original commit message from CVS:
* docs/libs/gstreamer-libs-sections.txt:
* libs/gst/controller/gstcontroller.c: (gst_controller_new_valist),
(gst_controller_new_list):
* libs/gst/controller/gstcontroller.h:
added another constructor for language bindings
2005-09-28 16:39:29 +00:00
Andy Wingo
2f46ef713d Remove memchunk benchmark stuff, this is taken over by GLib bug 118439.
Original commit message from CVS:
2005-09-26  Andy Wingo  <wingo@pobox.com>

* configure.ac:
* tests/Makefile.am:
* tests/memchunk: Remove memchunk benchmark stuff, this is taken
over by GLib bug 118439.

* gst/base/gstbasesink.c (gst_base_sink_wait): Factor out the wait
routines to a function.

* docs/libs/gstreamer-libs-sections.txt: I am a good person today.

* libs/gst/controller/gsthelper.c:
* libs/gst/controller/gstcontroller.h (gst_controller_sync_values)
(gst_object_sync_values): Renamed from sink_values. Ugh.

* libs/gst/controller/gsthelper.c: Update for __gst_controller_key.

* libs/gst/controller/gstcontroller.c (__gst_controller_key):
Renamed from controller_key, as it is exported.

* gst/gstvalue.c (_gst_value_initialize): Fake out the compiler.
2005-09-26 15:43:30 +00:00
Thomas Vander Stichele
77d2059fbc fix a leak in controller
Original commit message from CVS:
fix a leak in controller
2005-09-20 20:19:52 +00:00
Stefan Kost
2ed824baac more leaks plumbed, added more debug-logging
Original commit message from CVS:
* check/gst-libs/controller.c: (plugin_init), (GST_START_TEST):
* libs/gst/controller/gstcontroller.c: (gst_controller_new_valist):
more leaks plumbed, added more debug-logging
* gst/gstmacros.h:
whitespace fix
2005-09-20 10:41:03 +00:00
David Schleef
20acc0ae7e configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug #316076)
Original commit message from CVS:
* configure.ac: Add -no-undefined to GST_PLUGIN_LDFLAGS (bug
#316076)
* gst/base/Makefile.am: Add -no-undefined to LDFLAGS for libs
* gst/check/Makefile.am:
* libs/gst/controller/Makefile.am:
* libs/gst/dataprotocol/Makefile.am:
2005-09-15 05:58:37 +00:00
Thomas Vander Stichele
3ca1c236d9 configure.ac: say what CHECK flags we use
Original commit message from CVS:

* configure.ac:
say what CHECK flags we use
* docs/libs/gstreamer-libs.types:
* libs/gst/controller/Makefile.am:
* libs/gst/controller/gst-controller.c:
* libs/gst/controller/gst-controller.h:
* libs/gst/controller/gst-helper.c:
* libs/gst/controller/gst-interpolation.c:
* libs/gst/controller/gstcontroller.c:
* libs/gst/controller/gsthelper.c:
* libs/gst/controller/gstinterpolation.c:
* tools/gst-inspect.c: (print_plugin_info):
we don't use dashes in header names
2005-09-09 13:26:54 +00:00
Stefan Kost
49127d2e3e run the wingo-magic script against the docs
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
* docs/gst/tmpl/gstelement.sgml:
* gst/gstpad.c:
* libs/gst/controller/gst-controller.c:
(gst_controlled_property_set_interpolation_mode),
(gst_controlled_property_new),
(gst_controller_find_controlled_property):
run the wingo-magic script against the docs
2005-09-02 21:37:55 +00:00
Stefan Kost
41e26035dc libs/gst/controller/gst-controller.c: fixed boolean again
Original commit message from CVS:
* libs/gst/controller/gst-controller.c:
(gst_controlled_property_set_interpolation_mode),
(gst_controlled_property_new):
fixed boolean again
2005-08-31 18:45:41 +00:00
Stefan Kost
f02b655fc0 check/gst-libs/controller.c: more tests (hehe I have the most)
Original commit message from CVS:
* check/gst-libs/controller.c: (gst_test_mono_source_get_property),
(gst_test_mono_source_set_property),
(gst_test_mono_source_class_init), (GST_START_TEST),
(gst_controller_suite):
more tests (hehe I have the most)
* gst/gstbus.c:
describe popping messages whenusing mulltiple sources
* libs/gst/controller/gst-controller.c:
(gst_controlled_property_set_interpolation_mode),
(gst_controlled_property_new):
* libs/gst/controller/gst-controller.h:
* libs/gst/controller/gst-interpolation.c:
implement boolean properties
2005-08-31 10:00:08 +00:00
Stefan Kost
da9c04e2f0 gracefully handle helper method calls to objects that are not beeing controlled, added test case for that
Original commit message from CVS:
* check/gst-libs/controller.c: (GST_START_TEST),
(gst_controller_suite):
* docs/gst/tmpl/gstcaps.sgml:
* docs/gst/tmpl/gstghostpad.sgml:
* docs/gst/tmpl/gstquery.sgml:
* docs/gst/tmpl/gstutils.sgml:
* libs/gst/controller/gst-helper.c: (gst_object_set_controller),
(gst_object_sink_values), (gst_object_get_value_arrays),
(gst_object_get_value_array):
gracefully handle helper method calls to objects that are not beeing
controlled, added test case for that
2005-08-23 21:32:31 +00:00
Stefan Kost
cdc8ba9725 docs/gst/gstreamer-sections.txt: made some defines private
Original commit message from CVS:
* docs/gst/gstreamer-sections.txt:
made some defines private
* docs/gst/tmpl/gstconfig.sgml:
* docs/gst/tmpl/gstqueue.sgml:
* docs/gst/tmpl/gsttaglist.sgml:
* docs/gst/tmpl/gsttypes.sgml:
* docs/gst/tmpl/gstutils.sgml:
* docs/pwg/appendix-porting.xml:
* gst/base/gstbasesink.h:
* gst/base/gstbasesrc.c:
* gst/base/gstbasesrc.h:
* gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
* gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
* gst/gstelement.c: (gst_element_class_init):
* gst/gstpad.c: (gst_pad_class_init):
* gst/gstqueue.c: (gst_queue_class_init):
* gst/gstxml.c: (gst_xml_class_init):
documented all undocumented signal inline
* libs/gst/controller/gst-controller.h:
added padding
2005-08-15 16:57:34 +00:00
Stefan Kost
cdd579efc9 added deprecation and since indexes added since tags
Original commit message from CVS:
added deprecation and since indexes
added since tags
2005-08-11 17:39:48 +00:00
Stefan Kost
4e2d045ed2 adding more entries to the docs and fix small doc-bugs
Original commit message from CVS:
adding more entries to the docs and fix small doc-bugs
2005-08-05 17:28:30 +00:00
Stefan Kost
da7dd48860 added long/short desc for controller docs added collectpads base class docs added correct includes to base-class docs
Original commit message from CVS:
added long/short desc for controller docs
added collectpads base class docs
added correct includes to base-class docs
2005-08-05 12:59:46 +00:00
Stefan Kost
a34f2613f9 more tests (and fixes) for the controller more docs for the controller integrated companies docs for the adapter
Original commit message from CVS:
more tests (and fixes) for the controller
more docs for the controller
integrated companies docs for the adapter
2005-08-05 10:02:44 +00:00
Stefan Kost
b3034dba54 added check test suite for the controller fixed a doc typo
Original commit message from CVS:
added check test suite for the controller
fixed a doc typo
2005-08-03 15:59:11 +00:00
Stefan Kost
c32233b7fc added controller code removed dparam pc files
Original commit message from CVS:
added controller code
removed dparam pc files
2005-08-02 21:35:34 +00:00