## CheeseEffect CheeseEffect — An effect to apply to a video capture stream |

## Stability Level

Unstable, unless otherwise indicated

## Synopsis

    #include <cheese/cheese-effect.h>

    struct              CheeseEffect;
    CheeseEffect *      cheese_effect_new                   (const gchar *name,
                                                             const gchar *pipeline_desc);
    const gchar *       cheese_effect_get_name              (CheeseEffect *effect);
    const gchar *       cheese_effect_get_pipeline_desc     (CheeseEffect *effect);
    void                cheese_effect_enable_preview        (CheeseEffect *effect);
    void                cheese_effect_disable_preview       (CheeseEffect *effect);
    gboolean            cheese_effect_is_preview_connected  (CheeseEffect *effect);
    GList *             cheese_effect_load_effects          (void);
    CheeseEffect *      cheese_effect_load_from_file        (const gchar *filename);

## Object Hierarchy

      GObject
       +----CheeseEffect

## Properties

      "control-valve"            GstElement*           : Read / Write
      "name"                     gchar*                : Read / Write / Construct Only
      "pipeline-desc"            gchar*                : Read / Write / Construct Only

## Description

CheeseEffect provides an abstraction of an effect to apply to a stream from a video capture device.

## Details

### struct CheeseEffect

    struct CheeseEffect;

Use the accessor functions below.

### cheese_effect_new ()

    CheeseEffect *      cheese_effect_new                   (const gchar *name,
                                                             const gchar *pipeline_desc);

Create a new CheeseEffect.

`name` : | name of the effect
`pipeline_desc` : | GStreamer pipeline of the new effect
Returns : | a new CheeseEffect. [transfer full]

### cheese_effect_get_name ()

    const gchar *       cheese_effect_get_name              (CheeseEffect *effect);

Get the human-readable name of the `effect`.

`effect` : | a CheeseEffect
Returns : | the human-readable name of the effect. [transfer none]

### cheese_effect_get_pipeline_desc ()

    const gchar *       cheese_effect_get_pipeline_desc     (CheeseEffect *effect);

Get the Gstreamer pipeline description of the `effect`.

`effect` : | a CheeseEffect
Returns : | the Gstreamer pipeline description of the effect. [transfer none]

### cheese_effect_enable_preview ()

    void                cheese_effect_enable_preview        (CheeseEffect *effect);

Enable the preview of a CheeseEffect.

`effect` : | the CheeseEffect to enable the preview of

### cheese_effect_disable_preview ()

    void                cheese_effect_disable_preview       (CheeseEffect *effect);

Disable the preview of a CheeseEffect.

`effect` : | the CheeseEffect to disable the preview of

### cheese_effect_is_preview_connected ()

    gboolean            cheese_effect_is_preview_connected  (CheeseEffect *effect);

Get whether the `effect` is connected to a video stream, for previews.

`effect` : | a CheeseEffect
Returns : | `TRUE` if the preview is connected, `FALSE` otherwise.

### cheese_effect_load_effects ()

    GList *             cheese_effect_load_effects          (void);

Load effects from standard directories, including the user's data directory.

Returns : | a list of CheeseEffect, or `NULL` if no effects could be found. [element-type Cheese.Effect][transfer full]

### cheese_effect_load_from_file ()

    CheeseEffect *      cheese_effect_load_from_file        (const gchar *filename);

Load effect from file.

`filename` : | name of the file containing the effect specification. [type filename]
Returns : | a CheeseEffect, or `NULL` on error. [transfer full]

## Property Details

### The `"control-valve"` property

      "control-valve"            GstElement*           : Read / Write

If the control valve is active, then the effect is currently connected to a video stream, for previews.

### The `"name"` property

      "name"                     gchar*                : Read / Write / Construct Only

Name of the effect, for display in a UI.

Default value: ""

### The `"pipeline-desc"` property

      "pipeline-desc"            gchar*                : Read / Write / Construct Only

Description of the GStreamer pipeline associated with the effect.

Default value: ""