## CheeseEffect

CheeseEffect — An effect to apply to a video capture stream

## Stability Level

Unstable, unless otherwise indicated

## Functions

CheeseEffect * | cheese_effect_new ()
const gchar * | cheese_effect_get_name ()
const gchar * | cheese_effect_get_pipeline_desc ()
void | cheese_effect_enable_preview ()
void | cheese_effect_disable_preview ()
gboolean | cheese_effect_is_preview_connected ()
GList * | cheese_effect_load_effects ()
CheeseEffect * | cheese_effect_load_from_file ()

## Properties

GstElement * | control-valve | Read / Write
char * | name | Read / Write / Construct Only
char * | pipeline-desc | Read / Write / Construct Only

## Types and Values

| CheeseEffect

## Object Hierarchy

        GObject
        ╰── CheeseEffect

## Includes

    #include <cheese/cheese-effect.h>

## Description

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

## Functions

### cheese_effect_new ()

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

Create a new CheeseEffect.

#### Parameters

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` .

#### Parameters

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` .

#### Parameters

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.

#### Parameters

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.

#### Parameters

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.

#### Parameters

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.

#### Parameters

filename | name of the file containing the effect specification. | [type filename]

#### Returns

a CheeseEffect, or `NULL` on error.

[transfer full]

## Types and Values

### CheeseEffect

    typedef struct _CheeseEffect CheeseEffect;

Use the accessor functions below.

## Property Details

### The `“control-valve”` property

      “control-valve”            GstElement *

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

Owner: CheeseEffect

Flags: Read / Write

### The `“name”` property

      “name”                     char *

Name of the effect, for display in a UI.

Owner: CheeseEffect

Flags: Read / Write / Construct Only

Default value: ""

### The `“pipeline-desc”` property

      “pipeline-desc”            char *

Description of the GStreamer pipeline associated with the effect.

Owner: CheeseEffect

Flags: Read / Write / Construct Only

Default value: ""