# d3d11videosink

A Direct3D11 based videosink

## Hierarchy

    GObject
        ╰──GInitiallyUnowned
            ╰──GstObject
                ╰──GstElement
                    ╰──GstBin
                        ╰──d3d11videosink

## Implemented interfaces

    GstChildProxy
    GstVideoOverlay
    GstNavigation

## Factory details

Authors: – Seungha Yang

Classification: – `Sink/Video`

Rank – primary

Plugin – d3d11

Package – GStreamer Bad Plug-ins

## Pad Templates

### `sink`

    video/x-raw(memory:D3D11Memory):
             format: { BGRA, RGBA, RGB10A2_LE, VUYA, NV12, P010_10LE, P016_LE, I420, I420_10LE }
              width: [ 1, 2147483647 ]
             height: [ 1, 2147483647 ]
          framerate: [ 0/1, 2147483647/1 ]

    video/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):
             format: { BGRA, RGBA, RGB10A2_LE, VUYA, NV12, P010_10LE, P016_LE, I420, I420_10LE }
              width: [ 1, 2147483647 ]
             height: [ 1, 2147483647 ]
          framerate: [ 0/1, 2147483647/1 ]
    video/x-raw:
             format: { BGRA, RGBA, RGB10A2_LE, VUYA, NV12, P010_10LE, P016_LE, I420, I420_10LE }
              width: [ 1, 2147483647 ]
             height: [ 1, 2147483647 ]
          framerate: [ 0/1, 2147483647/1 ]

    video/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition):
             format: { BGRA, RGBA, RGB10A2_LE, VUYA, NV12, P010_10LE, P016_LE, I420, I420_10LE }
              width: [ 1, 2147483647 ]
             height: [ 1, 2147483647 ]
          framerate: [ 0/1, 2147483647/1 ]

Presence – always

Direction – sink

Object type – GstPad

## Properties

### adapter

    “adapter” gint

Adapter index for creating device (-1 for default)

Flags : Read / Write

Default value : -1

### async

    “async” gboolean

Go asynchronously to PAUSED

Flags : Read / Write

Default value : true

### blocksize

    “blocksize” guint

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

Flags : Read / Write

Default value : 4096

### enable-last-sample

    “enable-last-sample” gboolean

Enable the last-sample property

Flags : Read / Write

Default value : true

### force-aspect-ratio

    “force-aspect-ratio” gboolean

When enabled, scaling will respect original aspect ratio

Flags : Read / Write

Default value : true

### fullscreen

    “fullscreen” gboolean

Ignored when "fullscreen-toggle-mode" does not include "property"

Flags : Read / Write

Default value : false

### fullscreen-toggle-mode

    “fullscreen-toggle-mode” GstD3D11WindowFullscreenToggleMode *

Full screen toggle mode used to trigger fullscreen mode change

Flags : Read / Write

Default value : none

### last-sample

    “last-sample” GstSample *

The last sample received in the sink

Flags : Read

### max-bitrate

    “max-bitrate” guint64

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

Flags : Read / Write

Default value : 0

### max-lateness

    “max-lateness” gint64

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

Flags : Read / Write

Default value : 5000000

### processing-deadline

    “processing-deadline” guint64

Maximum processing deadline in nanoseconds

Flags : Read / Write

Default value : 15000000

### qos

    “qos” gboolean

Generate Quality-of-Service events upstream

Flags : Read / Write

Default value : true

### render-delay

    “render-delay” guint64

Additional render delay of the sink in nanoseconds

Flags : Read / Write

Default value : 0

### show-preroll-frame

    “show-preroll-frame” gboolean

Whether to render video frames during preroll

Flags : Read / Write / Construct

Default value : true

### stats

    “stats” GstStructure *

Sink Statistics

Flags : Read

Default value :

    application/x-gst-base-sink-stats, average-rate=(double)0, dropped=(guint64)0, rendered=(guint64)0;

### sync

    “sync” gboolean

Sync on the clock

Flags : Read / Write

Default value : true

### throttle-time

    “throttle-time” guint64

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

Flags : Read / Write

Default value : 0

### ts-offset

    “ts-offset” gint64

Timestamp offset in nanoseconds

Flags : Read / Write

Default value : 0

The results of the search are