# msdkvpp

A MediaSDK Video Postprocessing Filter

## Example launch line

    gst-launch-1.0 videotestsrc ! msdkvpp ! glimagesink

## Hierarchy

    GObject
        ╰──GInitiallyUnowned
            ╰──GstObject
                ╰──GstElement
                    ╰──GstBaseTransform
                        ╰──msdkvpp

## Factory details

Authors: – Sreerenj Balachandrn <sreerenj.balachandran></sreerenj.balachandran>

Classification: – `Filter/Converter/Video;Filter/Converter/Video/Scaler;Filter/Effect/Video;Filter/Effect/Video/Deinterlace`

Rank – none

Plugin – msdk

Package – GStreamer Bad Plug-ins

## Pad Templates

### `sink`

    video/x-raw
            format: { NV12, YV12, I420, YUY2, UYVY, VUYA, BGRA, BGRx, P010_10LE, RGB16, Y410, Y210 }
             width: [ 1, 2147483647 ]
            height: [ 1, 2147483647 ]
         framerate: [ 0/1, 2147483647/1 ]
    interlace-mode: { (string)progressive, (string)interleaved, (string)mixed }
    video/x-raw(memory:DMABuf)
            format: { NV12, BGRA, YUY2, UYVY, VUYA, P010_10LE, RGB16, Y410, Y210 }
             width: [ 1, 2147483647 ]
            height: [ 1, 2147483647 ]
         framerate: [ 0/1, 2147483647/1 ]

Presence – always

Direction – sink

Object type – GstPad

### `src`

    video/x-raw(memory:DMABuf)
            format: { BGRA, YUY2, UYVY, NV12, VUYA, BGRx, P010_10LE, BGR10A2_LE, YV12, Y410, Y210 }
             width: [ 1, 2147483647 ]
            height: [ 1, 2147483647 ]
         framerate: [ 0/1, 2147483647/1 ]
    video/x-raw
            format: { BGRA, NV12, YUY2, UYVY, VUYA, BGRx, P010_10LE, BGR10A2_LE, YV12, Y410, Y210 }
             width: [ 1, 2147483647 ]
            height: [ 1, 2147483647 ]
         framerate: [ 0/1, 2147483647/1 ]
    interlace-mode: { (string)progressive, (string)interleaved, (string)mixed }

Presence – always

Direction – src

Object type – GstPad

## Properties

### async-depth

    “async-depth” guint

Depth of asynchronous pipeline

Flags : Read / Write

Default value : 1

### brightness

    “brightness” gfloat

The Brightness of the video

Flags : Read / Write

Default value : 0

### contrast

    “contrast” gfloat

The Contrast of the video

Flags : Read / Write

Default value : 1

### crop-bottom

    “crop-bottom” guint

Pixels to crop at bottom

Flags : Read / Write

Default value : 0

### crop-left

    “crop-left” guint

Pixels to crop at left

Flags : Read / Write

Default value : 0

### crop-right

    “crop-right” guint

Pixels to crop at right

Flags : Read / Write

Default value : 0

### crop-top

    “crop-top” guint

Pixels to crop at top

Flags : Read / Write

Default value : 0

### deinterlace-method

    “deinterlace-method” Msdk-vppdeinterlace-method *

Deinterlace method to use

Flags : Read / Write

Default value : bob (1)

### deinterlace-mode

    “deinterlace-mode” Msdk-vppdeinterlace-mode *

Deinterlace mode to use

Flags : Read / Write

Default value : auto (0)

### denoise

    “denoise” guint

Denoising Factor

Flags : Read / Write

Default value : 0

### detail

    “detail” guint

The factor of detail/edge enhancement filter algorithm

Flags : Read / Write

Default value : 0

### force-aspect-ratio

    “force-aspect-ratio” gboolean

When enabled, scaling will respect original aspect ratio

Flags : Read / Write

Default value : true

### frc-algorithm

    “frc-algorithm” Msdk-vppfrc-algorithm *

The Framerate Control Alogorithm to use

Flags : Read / Write

Default value : none (0)

### hardware

    “hardware” gboolean

Enable hardware VPP

Flags : Read / Write

Default value : true

### hdr-tone-mapping

    “hdr-tone-mapping” gboolean

Flags : Read / Write

Default value : false

Since : 1.24

### hue

    “hue” gfloat

The hue of the video

Flags : Read / Write

Default value : 0

### mirroring

    “mirroring” Msdk-vppmirroring *

The Mirroring type (DEPRECATED, use video-direction instead)

Flags : Read / Write

Default value : disable (0)

### rotation

    “rotation” Msdk-vpprotation *

Rotation Angle (DEPRECATED, use video-direction instead)

Flags : Read / Write

Default value : 0 (0)

### saturation

    “saturation” gfloat

The Saturation of the video

Flags : Read / Write

Default value : 1

### scaling-mode

    “scaling-mode” Msdk-vppscaling-mode *

The Scaling mode to use

Flags : Read / Write

Default value : disable (0)

### video-direction

    “video-direction” GstVideoOrientationMethod *

Video direction: rotation and flipping, it will override both mirroring & rotation properties if set explicitly

Flags : Read / Write

Default value : identity (0)

## Named constants

### Msdk-vppdeinterlace-method

#### Members

`none` (0) – Disable deinterlacing
`bob` (1) – Bob deinterlacing
`advanced` (2) – Advanced deinterlacing (Motion adaptive)
`advanced-no-ref` (11) – Advanced deinterlacing mode without using of reference frames
`advanced-scd` (12) – Advanced deinterlacing mode with scene change detection
`field-weave` (13) – Field weaving

### Msdk-vppdeinterlace-mode

#### Members

`auto` (0) – Auto detection
`interlaced` (1) – Force deinterlacing
`disabled` (2) – Never deinterlace

### Msdk-vppfrc-algorithm

#### Members

`none` (0) – No FrameRate Control algorithm
`preserve-ts` (1) – Frame dropping/repetition, Preserve timestamp
`distribute-ts` (2) – Frame dropping/repetition, Distribute timestamp
`interpolate` (4) – Frame interpolation
`interpolate-preserve-ts` (5) – Frame interpolation, Preserve timestamp
`interpolate-distribute-ts` (6) – Frame interpolation, Distribute timestamp

### Msdk-vppmirroring

#### Members

`disable` (0) – Disable mirroring
`horizontal` (1) – Horizontal Mirroring
`vertical` (2) – Vertical Mirroring

### Msdk-vpprotation

#### Members

`0` (0) – Unrotated mode
`90` (90) – Rotated by 90°
`180` (180) – Rotated by 180°
`270` (270) – Rotated by 270°

### Msdk-vppscaling-mode

#### Members

`disable` (0) – Default Scaling
`lowpower` (1) – Lowpower Scaling
`quality` (2) – High Quality Scaling

The results of the search are