vaapivp8enc

vaapivp8enc — A VA-API based VP8 video encoder

Properties

guint bitrate Read / Write
guint keyframe-period Read / Write
guint loop-filter-level Read / Write
GstVaapiRateControlVP8 rate-control Read / Write
guint sharpness-level Read / Write
GstVaapiEncoderTuneVP8 tune Read / Write
guint yac-qi Read / Write

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GstObject
            ╰── GstElement
                ╰── GstVideoEncoder
                    ╰── GstVaapiEncode
                        ╰── GstVaapiEncodeVP8

Description

Encodes raw video streams into VP8 bitstreams.

Example launch line

1
gst-launch-1.0 -ev videotestsrc num-buffers=60 ! timeoverlay ! vaapivp8enc ! matroskamux ! filesink location=test.mkv

Synopsis

Element Information

plugin

vaapi

author

Sreerenj Balachandran <sreerenj.balachandran@intel.com>

class

Codec/Encoder/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 ], interlace-mode=(string)progressive

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 ], interlace-mode=(string)progressive

name

src

direction

source

presence

always

details

video/x-vp8

Functions

Types and Values

Property Details

The “bitrate” property

  “bitrate”                  guint

The desired bitrate expressed in kbps (0: auto-calculate).

Flags: Read / Write

Allowed values: <= 102400

Default value: 0


The “keyframe-period” property

  “keyframe-period”          guint

Maximal distance between two keyframes (0: auto-calculate).

Flags: Read / Write

Allowed values: [1,300]

Default value: 30


The “loop-filter-level” property

  “loop-filter-level”        guint

Controls the deblocking filter strength.

Flags: Read / Write

Allowed values: <= 63

Default value: 0


The “rate-control” property

  “rate-control”             GstVaapiRateControlVP8

Rate control mode.

Flags: Read / Write

Default value: Constant QP


The “sharpness-level” property

  “sharpness-level”          guint

Controls the deblocking filter sensitivity.

Flags: Read / Write

Allowed values: <= 7

Default value: 0


The “tune” property

  “tune”                     GstVaapiEncoderTuneVP8

Encoder tuning option.

Flags: Read / Write

Default value: None


The “yac-qi” property

  “yac-qi”                   guint

Quantization Table index for Luma AC Coefficients, (in default case, yac_qi=4 for key frames and yac_qi=40 for P frames).

Flags: Read / Write

Allowed values: <= 127

Default value: 40