vaapisink: GStreamer VA-API Plugins 1.0 Plugins Reference Manual

## vaapisink vaapisink — A VA-API based video sink |

## Properties

gfloat | brightness | Read / Write / Construct
gfloat | contrast | Read / Write / Construct
GstVaapiDisplayType | display | Read / Write
gchar * | display-name | Read / Write
gboolean | force-aspect-ratio | Read / Write
gboolean | fullscreen | Read / Write
gfloat | hue | Read / Write / Construct
GstVaapiRotation | rotation | Read / Write
gfloat | saturation | Read / Write / Construct
gboolean | signal-handoffs | Read / Write
gint | view-id | Read / Write

## Signals

void | handoff | Run Last

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GstObject
                ╰── GstElement
                    ╰── GstBaseSink
                        ╰── GstVideoSink
                            ╰── GstVaapiSink

## Description

vaapisink renders video frames to a drawable (X Window) on a local display using the Video Acceleration (VA) API. The element will create its own internal window and render into it.

### Example launch line

    1
    gst-launch-1.0 videotestsrc ! vaapisink

## Synopsis

### Element Information

plugin | vaapi
author | Gwenole Beauchesne <gwenole.beauchesne@intel.com>
class | Sink/Video

### Element Pads

name | sink
direction | sink
presence | always
details | video/x-raw(memory:VASurface), format=(string){ ENCODED, NV12, I420, YV12 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
| video/x-raw(memory:VASurface, meta:GstVideoOverlayComposition), format=(string){ ENCODED, NV12, I420, YV12 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
| video/x-raw(meta:GstVideoOverlayComposition), format=(string){ I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, Y41B, Y42B, YVYU, Y444, v210, v216, NV12, NV21, NV16, NV61, NV24, GRAY8, GRAY16_BE, GRAY16_LE, v308, RGB16, BGR16, RGB15, BGR15, UYVP, A420, RGB8P, YUV9, YVU9, IYU1, ARGB64, AYUV64, r210, I420_10LE, I420_10BE, I422_10LE, I422_10BE, Y444_10LE, Y444_10BE, GBR, GBR_10LE, GBR_10BE, NV12_64Z32, A420_10LE, A420_10BE, A422_10LE, A422_10BE, A444_10LE, A444_10BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
| video/x-raw, format=(string){ I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, Y41B, Y42B, YVYU, Y444, v210, v216, NV12, NV21, NV16, NV61, NV24, GRAY8, GRAY16_BE, GRAY16_LE, v308, RGB16, BGR16, RGB15, BGR15, UYVP, A420, RGB8P, YUV9, YVU9, IYU1, ARGB64, AYUV64, r210, I420_10LE, I420_10BE, I422_10LE, I422_10BE, Y444_10LE, Y444_10BE, GBR, GBR_10LE, GBR_10BE, NV12_64Z32, A420_10LE, A420_10BE, A422_10LE, A422_10BE, A444_10LE, A444_10BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]

## Functions

## Types and Values

## Property Details

### The `“brightness”` property

      “brightness”               gfloat

The VA display brightness, expressed as a float value. Range is -1.0 to 1.0. Default value is 0.0 and represents no modification.

Flags: Read / Write / Construct

Allowed values: [-1,1]

Default value: 0

### The `“contrast”` property

      “contrast”                 gfloat

The VA display contrast, expressed as a float value. Range is 0.0 to 2.0. Default value is 1.0 and represents no modification.

Flags: Read / Write / Construct

Allowed values: [0,2]

Default value: 1

### The `“display”` property

      “display”                  GstVaapiDisplayType

The type of display to use.

Flags: Read / Write

Default value: Auto detection

### The `“display-name”` property

      “display-name”             gchar *

The native display name.

Flags: Read / Write

Default value: NULL

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

      “force-aspect-ratio”       gboolean

When enabled, scaling respects video aspect ratio; when disabled, the video is distorted to fit the window.

Flags: Read / Write

Default value: TRUE

### The `“fullscreen”` property

      “fullscreen”               gboolean

Selects whether fullscreen mode is enabled or not.

Flags: Read / Write

Default value: FALSE

### The `“hue”` property

      “hue”                      gfloat

The VA display hue, expressed as a float value. Range is -180.0 to 180.0. Default value is 0.0 and represents no modification.

Flags: Read / Write / Construct

Allowed values: [-180,180]

Default value: 0

### The `“rotation”` property

      “rotation”                 GstVaapiRotation

The VA display rotation mode, expressed as a GstVaapiRotation.

Flags: Read / Write

Default value: Unrotated mode

### The `“saturation”` property

      “saturation”               gfloat

The VA display saturation, expressed as a float value. Range is 0.0 to 2.0. Default value is 1.0 and represents no modification.

Flags: Read / Write / Construct

Allowed values: [0,2]

Default value: 1

### The `“signal-handoffs”` property

      “signal-handoffs”          gboolean

Send a signal after rendering the buffer.

Flags: Read / Write

Default value: FALSE

### The `“view-id”` property

      “view-id”                  gint

When not set to -1, the displayed frame will always be the one that matches the view-id of the very first displayed frame. Any other number will indicate the desire to display the supplied view-id only.

Flags: Read / Write

Allowed values: >= G_MAXULONG

Default value: -1

## Signal Details

### The `“handoff”` signal

    void
    user_function (GstVaapiSink *object,
                   GstBuffer    *buffer,
                   gpointer      user_data)

This signal gets emitted after rendering the frame.

#### Parameters

object | the GstVaapiSink instance |
buffer | the buffer that was rendered |
user_data | user data set when the signal handler was connected. |

Flags: Run Last