Original commit message from CVS:
A bunch of portability fixes, derived from Steve Lhomme's MSVC
patch (bug #141317):
* gst/gst-i18n-lib.h: Allow disabling gettext.
* gst/gstatomic_impl.h: disable warning when it's dumb.
* gst/gstclock.c: fix include
* gst/gstcompat.h: fix variadic macro
* gst/gstinfo.c: fix include
* gst/gstmacros.h: add defines for inlines on MSVC
* gst/gstplugin.c: fix includes
* gst/gstregistry.c: fix includes
* gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
* gst/gstsystemclock.c: fix include
* gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
S_IREAD if S_IRUSR isn't defined. fix use of non-portable functions
* gst/registries/gstxmlregistry.c:
(gst_xml_registry_parse_element_factory): fix use of non-portable
functions
* libs/gst/control/dparam.h: Remove trailing comma in enum definition
* libs/gst/control/dparammanager.h: same
Original commit message from CVS:
many changes including:
- now the rate needs to be set explicitly, instead of from a pad
- asynchronous mode has been implemented - and it even works
- some refactoring of the process code
- a plugin api change, GST_DPMAN_PREPROCESS and GST_DPMAN_PROCESS have changed a bit
they are now *a lot* simpler to use, more flexible, and optimised so that the process func is never called if nothing changes - all in all worth the api breakage.
UPDATE YOUR PLUGINS PEOPLE!
Original commit message from CVS:
a few internal changes:
- put last_update_timestamp into GstDParam
- added a GstDParamUpdateInfo enum to the update function so that dparams know what context they are updating in (for example, the first update since the pipeline was started)
- rewrote bogus next_timestamp calculation in GstDParamSmooth
Original commit message from CVS:
added unitconvert which has a registry of Units of Measurement and an api to convert one unit to another.
Any required dparam now needs to specify what unit it represents so that an app can convert it to some other unit for presentation/other purposes.
Also added GST_DPMAN_PROCESS_CHUNK macro for elements which don't process their audio one sample at a time (ie, ladspa).
Original commit message from CVS:
Added a signal which notifies when a required dparam is added.
Added gst_dpman_bypass_dparam so that some dparams can be exposed as object properties as well. If the object property is set, a connected dparam is disconnected to avoid the two subsystems fighting over setting the value.
Original commit message from CVS:
This is a major update to the dparams api - I think it is now much cleaner and the app-side is much easier to use.
highlights are:
- GParamSpecs are now used throughout to define dparams
- currently limited to supporting types gfloat, gint and gint64. this should cover 99% of cases and new types can be added in the future
- application-side api is now based almost entirely on setting object properties
- the smoothing dparam is now a subclass of GstDParam
- array-mode is not yet implemented but is not forgotton
time to start documenting