## gstvideoorientation gstvideoorientation — Interface for elements providing video orientation controls |

## Functions

gboolean | gst_video_orientation_get_hcenter ()
gboolean | gst_video_orientation_get_hflip ()
gboolean | gst_video_orientation_get_vcenter ()
gboolean | gst_video_orientation_get_vflip ()
gboolean | gst_video_orientation_set_hcenter ()
gboolean | gst_video_orientation_set_hflip ()
gboolean | gst_video_orientation_set_vcenter ()
gboolean | gst_video_orientation_set_vflip ()

## Types and Values

| GstVideoOrientation
struct | GstVideoOrientationInterface

## Object Hierarchy

        GInterface
        ╰── GstVideoOrientation

## Includes

    #include <gst/video/videoorientation.h>

## Description

The interface allows unified access to control flipping and autocenter operation of video-sources or operators.

## Functions

### gst_video_orientation_get_hcenter ()

    gboolean
    gst_video_orientation_get_hcenter (GstVideoOrientation *video_orientation,
                                       gint *center);

Get the horizontal centering offset from the given object.

#### Parameters

video_orientation | GstVideoOrientation interface of a GstElement |
center | return location for the result |

#### Returns

`TRUE` in case the element supports centering

### gst_video_orientation_get_hflip ()

    gboolean
    gst_video_orientation_get_hflip (GstVideoOrientation *video_orientation,
                                     gboolean *flip);

Get the horizontal flipping state (`TRUE` for flipped) from the given object.

#### Parameters

video_orientation | GstVideoOrientation interface of a GstElement |
flip | return location for the result |

#### Returns

`TRUE` in case the element supports flipping

### gst_video_orientation_get_vcenter ()

    gboolean
    gst_video_orientation_get_vcenter (GstVideoOrientation *video_orientation,
                                       gint *center);

Get the vertical centering offset from the given object.

#### Parameters

video_orientation | GstVideoOrientation interface of a GstElement |
center | return location for the result |

#### Returns

`TRUE` in case the element supports centering

### gst_video_orientation_get_vflip ()

    gboolean
    gst_video_orientation_get_vflip (GstVideoOrientation *video_orientation,
                                     gboolean *flip);

Get the vertical flipping state (`TRUE` for flipped) from the given object.

#### Parameters

video_orientation | GstVideoOrientation interface of a GstElement |
flip | return location for the result |

#### Returns

`TRUE` in case the element supports flipping

### gst_video_orientation_set_hcenter ()

    gboolean
    gst_video_orientation_set_hcenter (GstVideoOrientation *video_orientation,
                                       gint center);

Set the horizontal centering offset for the given object.

#### Parameters

video_orientation | GstVideoOrientation interface of a GstElement |
center | centering offset |

#### Returns

`TRUE` in case the element supports centering

### gst_video_orientation_set_hflip ()

    gboolean
    gst_video_orientation_set_hflip (GstVideoOrientation *video_orientation,
                                     gboolean flip);

Set the horizontal flipping state (`TRUE` for flipped) for the given object.

#### Parameters

video_orientation | GstVideoOrientation interface of a GstElement |
flip | use flipping |

#### Returns

`TRUE` in case the element supports flipping

### gst_video_orientation_set_vcenter ()

    gboolean
    gst_video_orientation_set_vcenter (GstVideoOrientation *video_orientation,
                                       gint center);

Set the vertical centering offset for the given object.

#### Parameters

video_orientation | GstVideoOrientation interface of a GstElement |
center | centering offset |

#### Returns

`TRUE` in case the element supports centering

### gst_video_orientation_set_vflip ()

    gboolean
    gst_video_orientation_set_vflip (GstVideoOrientation *video_orientation,
                                     gboolean flip);

Set the vertical flipping state (`TRUE` for flipped) for the given object.

#### Parameters

video_orientation | GstVideoOrientation interface of a GstElement |
flip | use flipping |

#### Returns

`TRUE` in case the element supports flipping

## Types and Values

### GstVideoOrientation

    typedef struct _GstVideoOrientation GstVideoOrientation;

Opaque GstVideoOrientation data structure.

### struct GstVideoOrientationInterface

    struct GstVideoOrientationInterface {
      GTypeInterface iface;

      /* FIXME 0.11: fix awkward API? add some kind of get_supported flags thing
       * and then just return booleans/int from all vfuncs requiring the caller
       * to check the flags first */

      /* virtual functions */
      gboolean (* get_hflip)   (GstVideoOrientation *video_orientation, gboolean *flip);
      gboolean (* get_vflip)   (GstVideoOrientation *video_orientation, gboolean *flip);
      gboolean (* get_hcenter) (GstVideoOrientation *video_orientation, gint *center);
      gboolean (* get_vcenter) (GstVideoOrientation *video_orientation, gint *center);

      gboolean (* set_hflip)   (GstVideoOrientation *video_orientation, gboolean flip);
      gboolean (* set_vflip)   (GstVideoOrientation *video_orientation, gboolean flip);
      gboolean (* set_hcenter) (GstVideoOrientation *video_orientation, gint center);
      gboolean (* set_vcenter) (GstVideoOrientation *video_orientation, gint center);
    };

GstVideoOrientationInterface interface.

#### Members

GTypeInterface `iface`; | parent interface type. |
`get_hflip` () | virtual method to get horizontal flipping state |
`get_vflip` () | virtual method to get vertical flipping state |
`get_hcenter` () | virtual method to get horizontal centering state |
`get_vcenter` () | virtual method to get vertical centering state |
`set_hflip` () | virtual method to set horizontal flipping state |
`set_vflip` () | virtual method to set vertical flipping state |
`set_hcenter` () | virtual method to set horizontal centering state |
`set_vcenter` () | virtual method to set vertical centering state |