# d3d11colorconvert

A Direct3D11 based color conversion element

## Example launch line

    gst-launch-1.0 videotestsrc ! video/x-raw,format=NV12 ! d3d11upload ! d3d11colorconvert ! d3d11download ! video/x-raw,format=RGBA ! fakesink

This will upload a test video (generated in NV12 format) to Direct3D11 memory space and convert it to RGBA format. Then a converted Direct3D11 frame will be downloaded to system memory space.

## Hierarchy

    GObject
        ╰──GInitiallyUnowned
            ╰──GstObject
                ╰──GstElement
                    ╰──GstBaseTransform
                        ╰──GstD3D11BaseFilter
                            ╰──GstD3D11BaseConvert
                                ╰──d3d11colorconvert

## Factory details

Authors: – Seungha Yang

Classification: – `Filter/Converter/Video/Hardware`

Rank – none

Plugin – d3d11

Package – GStreamer Bad Plug-ins

## Pad Templates

### `sink`

    video/x-raw(memory:D3D11Memory):
             format: { RGBA64_LE, BGRA64_LE, Y416_LE, Y412_LE, RGB10A2_LE, Y410, BGR10A2_LE, Y216_LE, Y212_LE, Y210, VUYA, RGBA, BGRA, RBGA, P016_LE, P012_LE, P010_10LE, RGBx, BGRx, YUY2, NV12, AYUV64, GBRA_12LE, GBRA_10LE, AYUV, ABGR, ARGB, GBRA, Y444_16LE, GBR_16LE, Y444_12LE, GBR_12LE, I422_12LE, I420_12LE, Y444_10LE, GBR_10LE, I422_10LE, I420_10LE, Y444, BGRP, GBR, RGBP, xBGR, xRGB, Y42B, NV21, I420, YV12, GRAY16_LE, GRAY8, v216, v210, r210, v308, IYU2, RGB, BGR, UYVY, VYUY, YVYU, RGB16, BGR16, RGB15, BGR15 }
              width: [ 1, 16384 ]
             height: [ 1, 16384 ]
          framerate: [ 0/1, 2147483647/1 ]

    video/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):
             format: { RGBA64_LE, BGRA64_LE, Y416_LE, Y412_LE, RGB10A2_LE, Y410, BGR10A2_LE, Y216_LE, Y212_LE, Y210, VUYA, RGBA, BGRA, RBGA, P016_LE, P012_LE, P010_10LE, RGBx, BGRx, YUY2, NV12, AYUV64, GBRA_12LE, GBRA_10LE, AYUV, ABGR, ARGB, GBRA, Y444_16LE, GBR_16LE, Y444_12LE, GBR_12LE, I422_12LE, I420_12LE, Y444_10LE, GBR_10LE, I422_10LE, I420_10LE, Y444, BGRP, GBR, RGBP, xBGR, xRGB, Y42B, NV21, I420, YV12, GRAY16_LE, GRAY8, v216, v210, r210, v308, IYU2, RGB, BGR, UYVY, VYUY, YVYU, RGB16, BGR16, RGB15, BGR15 }
              width: [ 1, 16384 ]
             height: [ 1, 16384 ]
          framerate: [ 0/1, 2147483647/1 ]

Presence – always

Direction – sink

Object type – GstPad

### `src`

    video/x-raw(memory:D3D11Memory):
             format: { RGBA64_LE, BGRA64_LE, Y416_LE, Y412_LE, RGB10A2_LE, Y410, BGR10A2_LE, Y216_LE, Y212_LE, Y210, VUYA, RGBA, BGRA, RBGA, P016_LE, P012_LE, P010_10LE, RGBx, BGRx, YUY2, NV12, AYUV64, GBRA_12LE, GBRA_10LE, AYUV, ABGR, ARGB, GBRA, Y444_16LE, GBR_16LE, Y444_12LE, GBR_12LE, I422_12LE, I420_12LE, Y444_10LE, GBR_10LE, I422_10LE, I420_10LE, Y444, BGRP, GBR, RGBP, xBGR, xRGB, Y42B, NV21, I420, YV12, GRAY16_LE, GRAY8, v216, v210, r210, v308, IYU2, RGB, BGR, UYVY, VYUY, YVYU, RGB16, BGR16, RGB15, BGR15 }
              width: [ 1, 16384 ]
             height: [ 1, 16384 ]
          framerate: [ 0/1, 2147483647/1 ]

    video/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):
             format: { RGBA64_LE, BGRA64_LE, Y416_LE, Y412_LE, RGB10A2_LE, Y410, BGR10A2_LE, Y216_LE, Y212_LE, Y210, VUYA, RGBA, BGRA, RBGA, P016_LE, P012_LE, P010_10LE, RGBx, BGRx, YUY2, NV12, AYUV64, GBRA_12LE, GBRA_10LE, AYUV, ABGR, ARGB, GBRA, Y444_16LE, GBR_16LE, Y444_12LE, GBR_12LE, I422_12LE, I420_12LE, Y444_10LE, GBR_10LE, I422_10LE, I420_10LE, Y444, BGRP, GBR, RGBP, xBGR, xRGB, Y42B, NV21, I420, YV12, GRAY16_LE, GRAY8, v216, v210, r210, v308, IYU2, RGB, BGR, UYVY, VYUY, YVYU, RGB16, BGR16, RGB15, BGR15 }
              width: [ 1, 16384 ]
             height: [ 1, 16384 ]
          framerate: [ 0/1, 2147483647/1 ]

Presence – always

Direction – src

Object type – GstPad

## Properties

### dest-alpha-mode

    “dest-alpha-mode” GstD3D11AlphaMode *

Alpha mode to be applied to output stream. In case of "premultiplied", straight to premultiplied alpha conversion will be performed

Flags : Read / Write

Default value : unspecified (0)

Since : 1.24

### gamma-mode

    “gamma-mode” GstVideoGammaMode *

Gamma conversion mode

Flags : Read / Write

Default value : none (0)

Since : 1.22

### primaries-mode

    “primaries-mode” GstVideoPrimariesMode *

Primaries conversion mode

Flags : Read / Write

Default value : none (0)

Since : 1.22

### src-alpha-mode

    “src-alpha-mode” GstD3D11AlphaMode *

Input stream's applied alpha mode. In case of "premultiplied", premultiplied to straight alpha conversion will be performed

Flags : Read / Write

Default value : unspecified (0)

Since : 1.24

The results of the search are