GStreamer Base Plugins 0.10 Library Reference Manual | ||||
---|---|---|---|---|
#include <gst/interfaces/color.h> GstColorBalance; GstColorBalanceClass; enum GstColorBalanceType; const GList* gst_color_balance_list_channels (GstColorBalance *balance); gint gst_color_balance_get_value (GstColorBalance *balance, GstColorBalanceChannel *channel); void gst_color_balance_set_value (GstColorBalance *balance, GstColorBalanceChannel *channel, gint value); void gst_color_balance_value_changed (GstColorBalance *balance, GstColorBalanceChannel *channel, gint value); GstColorBalanceType gst_color_balance_get_balance_type (GstColorBalance *balance);
This interface is implemented by elements which can perform some color balance operation on video frames they process. For example, modifying the brightness, contrast, hue or saturation.
Example elements are 'xvimagesink' and 'colorbalance'
typedef struct { GTypeInterface klass; GstColorBalanceType balance_type; /* virtual functions */ const GList * (* list_channels) (GstColorBalance *balance); void (* set_value) (GstColorBalance *balance, GstColorBalanceChannel *channel, gint value); gint (* get_value) (GstColorBalance *balance, GstColorBalanceChannel *channel); /* signals */ void (* value_changed) (GstColorBalance *balance, GstColorBalanceChannel *channel, gint value); gpointer _gst_reserved[GST_PADDING]; } GstColorBalanceClass;
typedef enum { GST_COLOR_BALANCE_HARDWARE, GST_COLOR_BALANCE_SOFTWARE } GstColorBalanceType;
An enumeration indicating whether an element implements color balancing operations in software or in dedicated hardware. In general, dedicated hardware implementations (such as those provided by xvimagesink) are preferred.
const GList* gst_color_balance_list_channels (GstColorBalance *balance);
Retrieve a list of the available channels.
balance : |
A GstColorBalance instance |
Returns : | A GList containing pointers to GstColorBalanceChannel objects. The list is owned by the GstColorBalance instance and must not be freed. |
gint gst_color_balance_get_value (GstColorBalance *balance, GstColorBalanceChannel *channel);
Retrieve the current value of the indicated channel, between min_value and max_value.
See Also: The "min_value" and "max_value" members of the GstColorBalanceChannel object.
balance : |
A GstColorBalance instance |
channel : |
A GstColorBalanceChannel instance |
Returns : | The current value of the channel. |
void gst_color_balance_set_value (GstColorBalance *balance, GstColorBalanceChannel *channel, gint value);
Sets the current value of the channel to the passed value, which must be between min_value and max_value.
See Also: The "min_value" and "max_value" members of the GstColorBalanceChannel object.
balance : |
A GstColorBalance instance |
channel : |
A GstColorBalanceChannel instance |
value : |
The new value for the channel. |
void gst_color_balance_value_changed (GstColorBalance *balance, GstColorBalanceChannel *channel, gint value);
A helper function called by implementations of the GstColorBalance interface. It fires the "value-changed" signal on the instance, and the "value-changed" signal on the channel object.
balance : |
A GstColorBalance instance |
channel : |
A GstColorBalanceChannel whose value has changed |
value : |
The new value of the channel |
GstColorBalanceType gst_color_balance_get_balance_type (GstColorBalance *balance);
Get the GstColorBalanceType of this implementation.
balance : |
The GstColorBalance implementation |
Returns : | A the GstColorBalanceType. |
Since 0.10.24
"value-changed"
signalvoid user_function (GstColorBalance *colorbalance, GstColorBalanceChannel *channel, gint value, gpointer user_data) : Run Last
Fired when the value of the indicated channel has changed.
colorbalance : |
The GstColorBalance instance |
channel : |
The GstColorBalanceChannel |
value : |
The new value |
user_data : |
user data set when the signal handler was connected. |