## gleffects

gleffects — GL Shading Language effects

## Synopsis

    void                (*GstGLEffectProcessFunc)           (GstGLEffects *effects);
    #define             NEEDED_TEXTURES
    struct              GstGLEffects;
    struct              GstGLEffectsClass;
    void                gst_gl_effects_draw_texture         (GstGLEffects *effects,
                                                             GLuint tex);
    void                gst_gl_effects_identity             (GstGLEffects *effects);
    void                gst_gl_effects_mirror               (GstGLEffects *effects);
    void                gst_gl_effects_squeeze              (GstGLEffects *effects);
    void                gst_gl_effects_stretch              (GstGLEffects *effects);
    void                gst_gl_effects_tunnel               (GstGLEffects *effects);
    void                gst_gl_effects_fisheye              (GstGLEffects *effects);
    void                gst_gl_effects_twirl                (GstGLEffects *effects);
    void                gst_gl_effects_bulge                (GstGLEffects *effects);
    void                gst_gl_effects_square               (GstGLEffects *effects);
    void                gst_gl_effects_heat                 (GstGLEffects *effects);
    void                gst_gl_effects_sepia                (GstGLEffects *effects);
    void                gst_gl_effects_xpro                 (GstGLEffects *effects);
    void                gst_gl_effects_xray                 (GstGLEffects *effects);
    void                gst_gl_effects_luma_xpro            (GstGLEffects *effects);
    void                gst_gl_effects_sin                  (GstGLEffects *effects);
    void                gst_gl_effects_glow                 (GstGLEffects *effects);

## Object Hierarchy

      GObject
       +----GstObject
             +----GstElement
                   +----GstBaseTransform
                         +----GstGLFilter
                               +----GstGLEffects

## Properties

      "effect"                   GstGLEffectsEffect    : Read / Write
      "hswap"                    gboolean              : Read / Write

## Description

## Synopsis

### Element Information

plugin | opengl
author | Filippo Argiolas <filippo.argiolas@gmail.com>
class | Filter/Effect

### Element Pads

name | sink
direction | sink
presence | always
details | video/x-raw-gl, width=(int)[ 1, 8000 ], height=(int)[ 1, 6000 ], pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)[ 0/1, 100/1 ]

name | src
direction | source
presence | always
details | video/x-raw-gl, width=(int)[ 1, 8000 ], height=(int)[ 1, 6000 ], pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)[ 0/1, 100/1 ]

## Details

### GstGLEffectProcessFunc ()

    void                (*GstGLEffectProcessFunc)           (GstGLEffects *effects);

### NEEDED_TEXTURES

    #define NEEDED_TEXTURES 5

### struct GstGLEffects

    struct GstGLEffects;

### struct GstGLEffectsClass

    struct GstGLEffectsClass {
      GstGLFilterClass filter_class;
    };

### gst_gl_effects_draw_texture ()

    void                gst_gl_effects_draw_texture         (GstGLEffects *effects,
                                                             GLuint tex);

### gst_gl_effects_identity ()

    void                gst_gl_effects_identity             (GstGLEffects *effects);

### gst_gl_effects_mirror ()

    void                gst_gl_effects_mirror               (GstGLEffects *effects);

### gst_gl_effects_squeeze ()

    void                gst_gl_effects_squeeze              (GstGLEffects *effects);

### gst_gl_effects_stretch ()

    void                gst_gl_effects_stretch              (GstGLEffects *effects);

### gst_gl_effects_tunnel ()

    void                gst_gl_effects_tunnel               (GstGLEffects *effects);

### gst_gl_effects_fisheye ()

    void                gst_gl_effects_fisheye              (GstGLEffects *effects);

### gst_gl_effects_twirl ()

    void                gst_gl_effects_twirl                (GstGLEffects *effects);

### gst_gl_effects_bulge ()

    void                gst_gl_effects_bulge                (GstGLEffects *effects);

### gst_gl_effects_square ()

    void                gst_gl_effects_square               (GstGLEffects *effects);

### gst_gl_effects_heat ()

    void                gst_gl_effects_heat                 (GstGLEffects *effects);

### gst_gl_effects_sepia ()

    void                gst_gl_effects_sepia                (GstGLEffects *effects);

### gst_gl_effects_xpro ()

    void                gst_gl_effects_xpro                 (GstGLEffects *effects);

### gst_gl_effects_xray ()

    void                gst_gl_effects_xray                 (GstGLEffects *effects);

### gst_gl_effects_luma_xpro ()

    void                gst_gl_effects_luma_xpro            (GstGLEffects *effects);

### gst_gl_effects_sin ()

    void                gst_gl_effects_sin                  (GstGLEffects *effects);

### gst_gl_effects_glow ()

    void                gst_gl_effects_glow                 (GstGLEffects *effects);

## Property Details

### The `"effect"` property

      "effect"                   GstGLEffectsEffect    : Read / Write

Select which effect apply to GL video texture.

Default value: Do nothing Effect

### The `"hswap"` property

      "hswap"                    gboolean              : Read / Write

Switch video texture left to right, useful with webcams.

Default value: FALSE