vtenc_h265a

Apple VideoToolbox H265 encoder with alpha channel support. This encoder can either use HW or a SW implementation depending on the device.

Example pipeline (assuming a PNG with an alpha channel as input)

 gst-launch-1.0 -v filesrc location=test.png ! pngdec ! imagefreeze num-buffers=1000 ! videoconvert ! vtenc_h265a ! qtmux ! filesink location=out.mov

Encode 1000 frames of a PNG image with an alpha channel and save it as an MOV file.

Hierarchy

GObject
    ╰──GInitiallyUnowned
        ╰──GstObject
            ╰──GstElement
                ╰──GstVideoEncoder
                    ╰──GstVTEnc
                        ╰──vtenc_h265a

Implemented interfaces

Factory details

Authors: – Piotr Brzeziński

Classification:Codec/Encoder/Video/Hardware

Rank – primary

Plugin – applemedia

Package – GStreamer Bad Plug-ins

Pad Templates

sink

video/x-raw:
         format: { AYUV64, UYVY, NV12, I420, ARGB64_BE, RGBA64_LE }
          width: [ 1, 2147483647 ]
         height: [ 1, 2147483647 ]
      framerate: [ 0/1, 2147483647/1 ]

Presencealways

Directionsink

Object typeGstPad


src

video/x-h265:
          width: [ 1, 2147483647 ]
         height: [ 1, 2147483647 ]
      framerate: [ 0/1, 2147483647/1 ]
 interlace-mode: { (string)progressive, (string)interleaved }
  stream-format: hvc1
      alignment: au

Presencealways

Directionsrc

Object typeGstPad


Properties

allow-frame-reordering

“allow-frame-reordering” gboolean

Whether to allow frame reordering or not

Flags : Read / Write / Construct

Default value : true


bitrate

“bitrate” guint

Target video bitrate in kbps (0 = auto)

Flags : Read / Write / Construct

Default value : 0


data-rate-limits

“data-rate-limits” gchararray

Desired bitrate in kbps averaged over a duration in seconds: bitrate,duration (0,0 = disabled)

Flags : Read / Write / Construct

Default value : 0,0.00000


max-keyframe-interval

“max-keyframe-interval” gint

Maximum number of frames between keyframes (0 = auto)

Flags : Read / Write / Construct

Default value : 0


max-keyframe-interval-duration

“max-keyframe-interval-duration” guint64

Maximum number of nanoseconds between keyframes (0 = no limit)

Flags : Read / Write / Construct

Default value : 0


quality

“quality” gdouble

The desired compression quality

Flags : Read / Write / Construct

Default value : 0.5


rate-control

“rate-control” GstVtencRateControl *

Desired rate control for the encoder

Flags : Read / Write / Construct

Default value : abr (0)


realtime

“realtime” gboolean

Configure the encoder for realtime output

Flags : Read / Write / Construct

Default value : false


The results of the search are