# vtenc_h265_hw

Apple VideoToolbox H265 HW-only encoder (only available on macOS at present).

## Example pipeline

     gst-launch-1.0 -v videotestsrc ! vtenc_h265_hw ! qtmux ! filesink location=out.mov

Encode a test video pattern and save it as an MOV file

## Hierarchy

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

## Implemented interfaces

    GstPreset

## 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 ]

Presence – always

Direction – sink

Object type – GstPad

### `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

Presence – always

Direction – src

Object type – GstPad

## 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

Flags : Read / Write / Construct

Default value : 0,0.00000

Since : 1.26

### 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 *

Flags : Read / Write / Construct

Default value : abr (0)

Since : 1.26

### realtime

    “realtime” gboolean

Configure the encoder for realtime output

Flags : Read / Write / Construct

Default value : false

The results of the search are