## x264enc x264enc — H264 Encoder |

## Synopsis

    struct              GstX264Enc;

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GstObject
                   +----GstElement
                         +----GstX264Enc

## Implemented Interfaces

GstX264Enc implements GstPreset.

## Properties

      "analyse"                  GstX264EncAnalyse     : Read / Write
      "aud"                      gboolean              : Read / Write
      "b-adapt"                  gboolean              : Read / Write
      "b-pyramid"                gboolean              : Read / Write
      "bframes"                  guint                 : Read / Write
      "bitrate"                  guint                 : Read / Write
      "byte-stream"              gboolean              : Read / Write
      "cabac"                    gboolean              : Read / Write
      "dct8x8"                   gboolean              : Read / Write
      "interlaced"               gboolean              : Read / Write
      "ip-factor"                gfloat                : Read / Write
      "key-int-max"              guint                 : Read / Write
      "me"                       GstX264EncMe          : Read / Write
      "multipass-cache-file"     gchar*                : Read / Write
      "noise-reduction"          guint                 : Read / Write
      "pass"                     GstX264EncPass        : Read / Write
      "pb-factor"                gfloat                : Read / Write
      "qp-max"                   guint                 : Read / Write
      "qp-min"                   guint                 : Read / Write
      "qp-step"                  guint                 : Read / Write
      "quantizer"                guint                 : Read / Write
      "ref"                      guint                 : Read / Write
      "sps-id"                   guint                 : Read / Write
      "stats-file"               gchar*                : Read / Write
      "subme"                    guint                 : Read / Write
      "threads"                  guint                 : Read / Write
      "trellis"                  gboolean              : Read / Write
      "vbv-buf-capacity"         guint                 : Read / Write
      "weightb"                  gboolean              : Read / Write
      "intra-refresh"            gboolean              : Read / Write
      "mb-tree"                  gboolean              : Read / Write
      "rc-lookahead"             gint                  : Read / Write
      "sliced-threads"           gboolean              : Read / Write
      "sync-lookahead"           gint                  : Read / Write
      "option-string"            gchar*                : Read / Write
      "profile"                  GstX264EncProfile     : Read / Write
      "psy-tune"                 GstX264EncPsyTune     : Read / Write
      "speed-preset"             GstX264EncPreset      : Read / Write
      "tune"                     GstX264EncTune        : Read / Write

## Description

## Synopsis

### Element Information

plugin | x264
author | Josef Zlomek <josef.zlomek@itonis.tv>, Mark Nauwelaerts <mnauw@users.sf.net>
class | Codec/Encoder/Video

### Element Pads

name | sink
direction | sink
presence | always
details | video/x-raw, format=(string){ I420, YV12 }, framerate=(fraction)[ 0/1, 2147483647/1 ], width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]

name | src
direction | source
presence | always
details | video/x-h264, framerate=(fraction)[ 0/1, 2147483647/1 ], width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], stream-format=(string){ byte-stream, avc }, alignment=(string){ au }, profile=(string){ high-10, high, main, baseline, constrained-baseline, high-10-intra }

## Details

### struct GstX264Enc

    struct GstX264Enc;

## Property Details

### The `"analyse"` property

      "analyse"                  GstX264EncAnalyse     : Read / Write

Partitions to consider.

### The `"aud"` property

      "aud"                      gboolean              : Read / Write

Use AU (Access Unit) delimiter.

Default value: TRUE

### The `"b-adapt"` property

      "b-adapt"                  gboolean              : Read / Write

Automatically decide how many B-frames to use.

Default value: TRUE

### The `"b-pyramid"` property

      "b-pyramid"                gboolean              : Read / Write

Keep some B-frames as references.

Default value: FALSE

### The `"bframes"` property

      "bframes"                  guint                 : Read / Write

Number of B-frames between I and P.

Allowed values: <= 4

Default value: 0

### The `"bitrate"` property

      "bitrate"                  guint                 : Read / Write

Bitrate in kbit/sec.

Allowed values: [1,102400]

Default value: 2048

### The `"byte-stream"` property

      "byte-stream"              gboolean              : Read / Write

Generate byte stream format of NALU.

Default value: FALSE

### The `"cabac"` property

      "cabac"                    gboolean              : Read / Write

Enable CABAC entropy coding.

Default value: TRUE

### The `"dct8x8"` property

      "dct8x8"                   gboolean              : Read / Write

Adaptive spatial transform size.

Default value: FALSE

### The `"interlaced"` property

      "interlaced"               gboolean              : Read / Write

Interlaced material.

Default value: FALSE

### The `"ip-factor"` property

      "ip-factor"                gfloat                : Read / Write

Quantizer factor between I- and P-frames.

Allowed values: [0,2]

Default value: 1.4

### The `"key-int-max"` property

      "key-int-max"              guint                 : Read / Write

Maximal distance between two key-frames (0 for automatic).

Allowed values: <= G_MAXINT

Default value: 0

### The `"me"` property

      "me"                       GstX264EncMe          : Read / Write

Integer pixel motion estimation method.

Default value: hex

### The `"multipass-cache-file"` property

      "multipass-cache-file"     gchar*                : Read / Write

Filename for multipass cache file.

Default value: "x264.log"

### The `"noise-reduction"` property

      "noise-reduction"          guint                 : Read / Write

Noise reduction strength.

Allowed values: <= 100000

Default value: 0

### The `"pass"` property

      "pass"                     GstX264EncPass        : Read / Write

Encoding pass/type.

Default value: Constant Bitrate Encoding

### The `"pb-factor"` property

      "pb-factor"                gfloat                : Read / Write

Quantizer factor between P- and B-frames.

Allowed values: [0,2]

Default value: 1.3

### The `"qp-max"` property

      "qp-max"                   guint                 : Read / Write

Maximum quantizer.

Allowed values: [1,51]

Default value: 51

### The `"qp-min"` property

      "qp-min"                   guint                 : Read / Write

Minimum quantizer.

Allowed values: [1,51]

Default value: 10

### The `"qp-step"` property

      "qp-step"                  guint                 : Read / Write

Maximum quantizer difference between frames.

Allowed values: [1,50]

Default value: 4

### The `"quantizer"` property

      "quantizer"                guint                 : Read / Write

Constant quantizer or quality to apply.

Allowed values: [1,50]

Default value: 21

### The `"ref"` property

      "ref"                      guint                 : Read / Write

Number of reference frames.

Allowed values: [1,12]

Default value: 1

### The `"sps-id"` property

      "sps-id"                   guint                 : Read / Write

SPS and PPS ID number.

Allowed values: <= 31

Default value: 0

### The `"stats-file"` property

      "stats-file"               gchar*                : Read / Write

Filename for multipass statistics (deprecated, use multipass-cache-file).

Default value: "x264.log"

### The `"subme"` property

      "subme"                    guint                 : Read / Write

Subpixel motion estimation and partition decision quality: 1=fast, 10=best.

Allowed values: [1,10]

Default value: 1

### The `"threads"` property

      "threads"                  guint                 : Read / Write

Number of threads used by the codec (0 for automatic).

Allowed values: <= 4

Default value: 0

### The `"trellis"` property

      "trellis"                  gboolean              : Read / Write

Enable trellis searched quantization.

Default value: TRUE

### The `"vbv-buf-capacity"` property

      "vbv-buf-capacity"         guint                 : Read / Write

Size of the VBV buffer in milliseconds.

Allowed values: <= 10000

Default value: 600

### The `"weightb"` property

      "weightb"                  gboolean              : Read / Write

Weighted prediction for B-frames.

Default value: FALSE

### The `"intra-refresh"` property

      "intra-refresh"            gboolean              : Read / Write

Use Periodic Intra Refresh instead of IDR frames.

Default value: FALSE

### The `"mb-tree"` property

      "mb-tree"                  gboolean              : Read / Write

Macroblock-Tree ratecontrol.

Default value: TRUE

### The `"rc-lookahead"` property

      "rc-lookahead"             gint                  : Read / Write

Number of frames for frametype lookahead.

Allowed values: [0,250]

Default value: 40

### The `"sliced-threads"` property

      "sliced-threads"           gboolean              : Read / Write

Low latency but lower efficiency threading.

Default value: FALSE

### The `"sync-lookahead"` property

      "sync-lookahead"           gint                  : Read / Write

Number of buffer frames for threaded lookahead (-1 for automatic).

Allowed values: [G_MAXULONG,250]

Default value: -1

### The `"option-string"` property

      "option-string"            gchar*                : Read / Write

String of x264 options (overridden by element properties).

Default value: ""

### The `"profile"` property

      "profile"                  GstX264EncProfile     : Read / Write

Apply restrictions to meet H.264 Profile constraints. This will override other properties if necessary. This will only be used if downstream elements do not specify a profile in their caps (DEPRECATED).

Default value: main

### The `"psy-tune"` property

      "psy-tune"                 GstX264EncPsyTune     : Read / Write

Preset name for psychovisual tuning options.

Default value: No tuning

### The `"speed-preset"` property

      "speed-preset"             GstX264EncPreset      : Read / Write

Preset name for speed/quality tradeoff options (can affect decode compatibility - impose restrictions separately for your target decoder).

Default value: medium

### The `"tune"` property

      "tune"                     GstX264EncTune        : Read / Write

Preset name for non-psychovisual tuning options.