amfh265enc

amfh265enc element encodes raw video stream into compressed H.265 bitstream via AMD AMF API.

Example launch line

gst-launch-1.0 videotestsrc num-buffers=100 ! amfh265enc ! h265parse ! mp4mux ! filesink location=encoded.mp4

Hierarchy

GObject
    ╰──GInitiallyUnowned
        ╰──GstObject
            ╰──GstElement
                ╰──GstVideoEncoder
                    ╰──GstAmfEncoder
                        ╰──amfh265enc

Implemented interfaces

Factory details

Authors: – Seungha Yang

Classification:Codec/Encoder/Video/Hardware

Rank – primary

Plugin – amfcodec

Package – GStreamer Bad Plug-ins

Pad Templates

sink

video/x-raw(memory:D3D11Memory):
         format: { NV12, P010_10LE }
          width: [ 128, 4096 ]
         height: [ 128, 4096 ]
video/x-raw:
         format: { NV12, P010_10LE }
          width: [ 128, 4096 ]
         height: [ 128, 4096 ]

Presencealways

Directionsink

Object typeGstPad


src

video/x-h265:
          width: [ 128, 4096 ]
         height: [ 128, 4096 ]
        profile: { (string)main, (string)main-10 }
  stream-format: byte-stream
      alignment: au

Presencealways

Directionsrc

Object typeGstPad


Properties

adapter-luid

“adapter-luid” gint64

DXGI Adapter LUID (Locally Unique Identifier) of associated GPU

Flags : Read

Default value : 0


aud

“aud” gboolean

Use AU (Access Unit) delimiter

Flags : Read / Write

Default value : true


bitrate

“bitrate” guint

Target bitrate in kbit/sec (0: USAGE default)

Flags : Read / Write

Default value : 0


gop-size

“gop-size” guint

Number of pictures within a GOP

Flags : Read / Write

Default value : 30


max-bitrate

“max-bitrate” guint

Maximum bitrate in kbit/sec (0: USAGE default)

Flags : Read / Write

Default value : 0


max-qp-i

“max-qp-i” gint

Maximum allowed QP value for I frames (-1: USAGE default)

Flags : Read / Write

Default value : -1


max-qp-p

“max-qp-p” gint

Maximum allowed QP value for P frames (-1: USAGE default)

Flags : Read / Write

Default value : -1


min-qp-i

“min-qp-i” gint

Minimum allowed QP value for I frames (-1: USAGE default)

Flags : Read / Write

Default value : -1


min-qp-p

“min-qp-p” gint

Minimum allowed QP value for P frames (-1: USAGE default)

Flags : Read / Write

Default value : -1


pa-activity-type

“pa-activity-type” GstAmfEncPAActivityType *

Set the type of activity analysis for pre-analysis

Flags : Read / Write

Default value : y (0)

Since : 1.24


pa-caq-strength

“pa-caq-strength” GstAmfEncPACAQStrength *

Content Adaptive Quantization strength for pre-analysis

Flags : Read / Write

Default value : medium (1)

Since : 1.24


pa-frame-sad

“pa-frame-sad” gboolean

Enable Frame SAD algorithm

Flags : Read / Write

Default value : true

Since : 1.24


pa-hqmb-mode

“pa-hqmb-mode” GstAmfEncPAHQMBMode *

Set the PA high motion quality boost mode

Flags : Read / Write

Default value : none (0)

Since : 1.24


pa-initial-qp

“pa-initial-qp” guint

Pre-analysis initial QP

Flags : Read / Write

Default value : 0

Since : 1.24


pa-lookahead-buffer-depth

“pa-lookahead-buffer-depth” guint

Pre-analysis lookahead buffer depth

Flags : Read / Write

Default value : 0

Since : 1.24


pa-ltr

“pa-ltr” gboolean

Enable long term reference frame management

Flags : Read / Write

Default value : false

Since : 1.24


pa-max-qp

“pa-max-qp” guint

Pre-analysis max QP

Flags : Read / Write

Default value : 35

Since : 1.24


pa-paq-mode

“pa-paq-mode” GstAmfEncPAPAQMode *

Set the perceptual adaptive quantization mode

Flags : Read / Write

Default value : none (0)

Since : 1.24


pa-scene-change-detection

“pa-scene-change-detection” gboolean

Enable scene change detection for pre-analysis

Flags : Read / Write

Default value : true

Since : 1.24


pa-scene-change-detection-sensitivity

“pa-scene-change-detection-sensitivity” GstAmfEncPASceneChangeDetectionSensitivity *

Pre-analysis scene change detection sensitivity

Flags : Read / Write

Default value : medium (1)

Since : 1.24


pa-static-scene-detection

“pa-static-scene-detection” gboolean

Enable static scene detection for pre-analysis

Flags : Read / Write

Default value : false

Since : 1.24


pa-static-scene-detection-sensitivity

“pa-static-scene-detection-sensitivity” GstAmfEncPAStaticSceneDetectionSensitivity *

Pre-analysis static scene detection sensitivity

Flags : Read / Write

Default value : high (2)

Since : 1.24


pa-taq-mode

“pa-taq-mode” GstAmfEncPATAQMode *

Set the temporal adaptive quantization mode

Flags : Read / Write

Default value : none (0)

Since : 1.24


pre-analysis

“pre-analysis” gboolean

Enable the pre-analysis module

Flags : Read / Write

Default value : false

Since : 1.24


pre-encode

“pre-encode” gboolean

Enable pre-encode assisted rate control

Flags : Read / Write

Default value : false

Since : 1.24


preset

“preset” Amf-h265enc-preset *

Preset

Flags : Read / Write

Default value : default (-1)


qp-i

“qp-i” guint

Constant QP for I frames

Flags : Read / Write

Default value : 26


qp-p

“qp-p” guint

Constant QP for P frames

Flags : Read / Write

Default value : 26


rate-control

“rate-control” Amf-h265enc-rate-control *

Rate Control Method

Flags : Read / Write

Default value : default (-1)


ref-frames

“ref-frames” guint

Number of reference frames

Flags : Read / Write

Default value : 1


smart-access-video

“smart-access-video” gboolean

Enable AMF SmartAccess Video feature

Flags : Read / Write

Default value : false

Since : 1.24


usage

“usage” Amf-h265enc-usage *

Target usage

Flags : Read / Write

Default value : transcoding (0)


Named constants

GstAmfEncPAActivityType

Determines whether activity analysis is performed on the Luma component only (Y) or on both Luma and Chroma (YUV).

Members

y (0) – Luma (Y) component only
yuv (1) – Luma and Chroma components (YUV)

Since : 1.24


GstAmfEncPACAQStrength

Content Adaptive Quantization strength. Stronger CAQ strength means larger variation in block level QP assignment.

Members

low (0) – Low
medium (1) – Medium
high (2) – High

Since : 1.24


GstAmfEncPAHQMBMode

Sets the PA high motion quality boost (HQMB) mode to help the encoder in motion search.

Members

none (0) – None
auto (1) – Auto

Since : 1.24


GstAmfEncPAPAQMode

Sets the perceptual adaptive quantization mode.

Members

none (0) – None
caq (1) – Content Adaptive Quantization (CAQ) mode

Since : 1.24


GstAmfEncPASceneChangeDetectionSensitivity

Sensitivity of scene change detection. The higher the sensitivity, the more restrictive it is to detect a scene change. This parameter takes effect only when AMF_PA_LOOKAHEAH_BUFFER_DEPTH is set to 0.

Members

low (0) – Low
medium (1) – Medium
high (2) – High

Since : 1.24


GstAmfEncPAStaticSceneDetectionSensitivity

Sensitivity of static scene detection. The higher the sensitivity, the more restrictive it is to detect a static scene.

Members

low (0) – Low
medium (1) – Medium
high (2) – High

Since : 1.24


GstAmfEncPATAQMode

Sets the temporal adaptive quantization mode. MODE_1 is suitable for non-gaming applications whereas MODE_2 is suitable for gaming applications.

Members

none (0) – None
mode1 (1) – Mode_1 is suitable for non-gaming applications
mode2 (2) – Mode_2 is suitable for gaming applications

Since : 1.24


Amf-h265enc-preset

Encoding quality presets

Members

default (-1) – Default, depends on USAGE
quality (0) – Quality
balanced (5) – Balanced
speed (10) – Speed

Since : 1.22


Amf-h265enc-rate-control

Rate control methods

Members

default (-1) – Default, depends on Usage
cqp (0) – Constant QP
lcvbr (1) – Latency Constrained VBR
vbr (2) – Peak Constrained VBR
cbr (3) – Constant Bitrate

Since : 1.22


Amf-h265enc-usage

Encoder usages

Members

transcoding (0) – Transcoding
ultra-low-latency (1) – Ultra Low Latency
low-latency (2) – Low Latency
webcam (3) – Webcam

Since : 1.22


The results of the search are