## glsinkbin

glsinkbin

## Properties

gboolean | async | Read / Write
guint | blocksize | Read / Write
gdouble | brightness | Read / Write
gdouble | contrast | Read / Write
gboolean | enable-last-sample | Read / Write
gboolean | force-aspect-ratio | Read / Write
gdouble | hue | Read / Write
GstSample * | last-sample | Read
guint64 | max-bitrate | Read / Write
gint64 | max-lateness | Read / Write
gboolean | qos | Read / Write
guint64 | render-delay | Read / Write
gdouble | saturation | Read / Write
GstElement * | sink | Read / Write
gboolean | sync | Read / Write
guint64 | throttle-time | Read / Write
gint64 | ts-offset | Read / Write

## Signals

GstElement* | create-element | Run Last

## Types and Values

struct | GstGLSinkBin

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GstObject
                ╰── GstElement
                    ╰── GstBin
                        ╰── GstGLSinkBin
                            ╰── GstGLImageSinkBin

## Implemented Interfaces

GstGLSinkBin implements GstChildProxy, GstVideoOverlay, GstNavigation and GstColorBalance.

## Description

## Synopsis

### Element Information

plugin | opengl
author | Matthew Waters <matthew@centricular.com>
class | Sink/Video

### Element Pads

name | sink
direction | sink
presence | always
details | video/x-raw(memory:GLMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
| video/x-raw(memory:DMABuf, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
| video/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
| video/x-raw(meta:GstVideoGLTextureUploadMeta, meta:GstVideoOverlayComposition), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
| video/x-raw(memory:GLMemory), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
| video/x-raw(memory:DMABuf), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
| video/x-raw, format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
| video/x-raw(meta:GstVideoGLTextureUploadMeta), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]

## Functions

## Types and Values

### struct GstGLSinkBin

    struct GstGLSinkBin;

## Property Details

### The `“async”` property

      “async”                    gboolean

Go asynchronously to PAUSED.

Flags: Read / Write

Default value: TRUE

### The `“blocksize”` property

      “blocksize”                guint

Size in bytes to pull per buffer (0 = default).

Flags: Read / Write

Default value: 4096

### The `“brightness”` property

      “brightness”               gdouble

brightness.

Flags: Read / Write

Allowed values: [-1,1]

Default value: 0

### The `“contrast”` property

      “contrast”                 gdouble

contrast.

Flags: Read / Write

Allowed values: [0,2]

Default value: 1

### The `“enable-last-sample”` property

      “enable-last-sample”       gboolean

Enable the last-sample property.

Flags: Read / Write

Default value: TRUE

### The `“force-aspect-ratio”` property

      “force-aspect-ratio”       gboolean

When enabled, scaling will respect original aspect ratio.

Flags: Read / Write

Default value: TRUE

### The `“hue”` property

      “hue”                      gdouble

hue.

Flags: Read / Write

Allowed values: [-1,1]

Default value: 0

### The `“last-sample”` property

      “last-sample”              GstSample *

The last sample received in the sink.

Flags: Read

### The `“max-bitrate”` property

      “max-bitrate”              guint64

The maximum bits per second to render (0 = disabled).

Flags: Read / Write

Default value: 0

### The `“max-lateness”` property

      “max-lateness”             gint64

Maximum number of nanoseconds that a buffer can be late before it is dropped (-1 unlimited).

Flags: Read / Write

Allowed values: >= G_MAXULONG

Default value: -1

### The `“qos”` property

      “qos”                      gboolean

Generate Quality-of-Service events upstream.

Flags: Read / Write

Default value: FALSE

### The `“render-delay”` property

      “render-delay”             guint64

Additional render delay of the sink in nanoseconds.

Flags: Read / Write

Default value: 0

### The `“saturation”` property

      “saturation”               gdouble

saturation.

Flags: Read / Write

Allowed values: [0,2]

Default value: 1

### The `“sink”` property

      “sink”                     GstElement *

The GL sink chain to use.

Flags: Read / Write

### The `“sync”` property

      “sync”                     gboolean

Sync on the clock.

Flags: Read / Write

Default value: TRUE

### The `“throttle-time”` property

      “throttle-time”            guint64

The time to keep between rendered buffers (0 = disabled).

Flags: Read / Write

Default value: 0

### The `“ts-offset”` property

      “ts-offset”                gint64

Timestamp offset in nanoseconds.

Flags: Read / Write

Default value: 0

## Signal Details

### The `“create-element”` signal

    GstElement*
    user_function (GstGLSinkBin *object,
                   gpointer      user_data)

Will be emitted when we need the processing element/s that this bin will use

#### Parameters

object | the GstGLSinkBin |
user_data | user data set when the signal handler was connected. |

#### Returns

a new GstElement

Flags: Run Last