vaapih265enc: GStreamer VA-API Plugins 1.0 Plugins Reference Manual

## vaapih265enc vaapih265enc — A VA-API based HEVC video encoder |

## Properties

guint | bitrate | Read / Write
guint | init-qp | Read / Write
guint | keyframe-period | Read / Write
guint | max-bframes | Read / Write
guint | min-qp | Read / Write
guint | num-slices | Read / Write
GstVaapiRateControlH265 | rate-control | Read / Write
GstVaapiEncoderTuneH265 | tune | Read / Write

## Object Hierarchy

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

## Description

Encodes raw video streams into HEVC bitstreams.

### Example launch line

    1
    gst-launch-1.0 -ev videotestsrc num-buffers=60 ! timeoverlay ! vaapih265enc ! 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-h265, stream-format=(string){ hvc1, byte-stream }, alignment=(string)au, profile=(string){ main }

## 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 `“init-qp”` property

      “init-qp”                  guint

Initial quantizer value.

Flags: Read / Write

Allowed values: [1,51]

Default value: 26

### 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 `“max-bframes”` property

      “max-bframes”              guint

Number of B-frames between I and P.

Flags: Read / Write

Allowed values: <= 10

Default value: 0

### The `“min-qp”` property

      “min-qp”                   guint

Minimum quantizer value.

Flags: Read / Write

Allowed values: [1,51]

Default value: 1

### The `“num-slices”` property

      “num-slices”               guint

Number of slices per frame.

Flags: Read / Write

Allowed values: [1,200]

Default value: 1

### The `“rate-control”` property

      “rate-control”             GstVaapiRateControlH265

Rate control mode.

Flags: Read / Write

Default value: Constant QP

### The `“tune”` property

      “tune”                     GstVaapiEncoderTuneH265

Encoder tuning option.

Flags: Read / Write

Default value: None