## theoraenc theoraenc — encode raw YUV video to a theora stream |

## Properties

gint | bitrate | Read / Write
GstTheoraEncBorderMode | border | Read / Write
gboolean | center | Read / Write
gboolean | keyframe-auto | Read / Write
gint | keyframe-force | Read / Write
gint | keyframe-freq | Read / Write
gint | keyframe-mindistance | Read / Write
gint | keyframe-threshold | Read / Write
gint | noise-sensitivity | Read / Write
gint | quality | Read / Write
gboolean | quick | Read / Write
gint | sharpness | Read / Write
gint | speed-level | Read / Write
gboolean | cap-overflow | Read / Write
gboolean | cap-underflow | Read / Write
gboolean | drop-frames | Read / Write
gint | rate-buffer | Read / Write
gboolean | vp3-compatible | Read / Write
gchar * | multipass-cache-file | Read / Write
GstTheoraEncMultipassMode | multipass-mode | Read / Write
gboolean | dup-on-gap | Read / Write

## Types and Values

struct | GstTheoraEnc

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GstObject
                ╰── GstElement
                    ╰── GstVideoEncoder
                        ╰── GstTheoraEnc

## Implemented Interfaces

GstTheoraEnc implements GstPreset.

## Description

## Synopsis

### Element Information

plugin | theora
author | Wim Taymans <wim@fluendo.com>
class | Codec/Encoder/Video

### Element Pads

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

name | src
direction | source
presence | always
details | video/x-theora, framerate=(fraction)[ 1/2147483647, 2147483647/1 ], width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ]

## Functions

## Types and Values

### struct GstTheoraEnc

    struct GstTheoraEnc;

## Property Details

### The `“bitrate”` property

      “bitrate”                  gint

Compressed video bitrate (kbps).

Flags: Read / Write

Allowed values: [0,16777215]

Default value: 0

### The `“border”` property

      “border”                   GstTheoraEncBorderMode

ignored and kept for API compat only.

Flags: Read / Write

Default value: Black Border

### The `“center”` property

      “center”                   gboolean

ignored and kept for API compat only.

Flags: Read / Write

Default value: TRUE

### The `“keyframe-auto”` property

      “keyframe-auto”            gboolean

Automatic keyframe detection.

Flags: Read / Write

Default value: TRUE

### The `“keyframe-force”` property

      “keyframe-force”           gint

Force keyframe every N frames.

Flags: Read / Write

Allowed values: [1,32768]

Default value: 64

### The `“keyframe-freq”` property

      “keyframe-freq”            gint

Keyframe frequency.

Flags: Read / Write

Allowed values: [1,32768]

Default value: 64

### The `“keyframe-mindistance”` property

      “keyframe-mindistance”     gint

ignored and kept for API compat only.

Flags: Read / Write

Allowed values: [1,32768]

Default value: 8

### The `“keyframe-threshold”` property

      “keyframe-threshold”       gint

ignored and kept for API compat only.

Flags: Read / Write

Allowed values: [0,32768]

Default value: 80

### The `“noise-sensitivity”` property

      “noise-sensitivity”        gint

ignored and kept for API compat only.

Flags: Read / Write

Allowed values: [0,32768]

Default value: 1

### The `“quality”` property

      “quality”                  gint

Video quality.

Flags: Read / Write

Allowed values: [0,63]

Default value: 48

### The `“quick”` property

      “quick”                    gboolean

ignored and kept for API compat only.

Flags: Read / Write

Default value: TRUE

### The `“sharpness”` property

      “sharpness”                gint

ignored and kept for API compat only.

Flags: Read / Write

Allowed values: [0,2]

Default value: 0

### The `“speed-level”` property

      “speed-level”              gint

Controls the amount of motion vector searching done while encoding.

Flags: Read / Write

Allowed values: [0,3]

Default value: 1

### The `“cap-overflow”` property

      “cap-overflow”             gboolean

Enable capping of bit reservoir overflows.

Flags: Read / Write

Default value: TRUE

### The `“cap-underflow”` property

      “cap-underflow”            gboolean

Enable capping of bit reservoir underflows.

Flags: Read / Write

Default value: FALSE

### The `“drop-frames”` property

      “drop-frames”              gboolean

Allow or disallow frame dropping.

Flags: Read / Write

Default value: TRUE

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

      “rate-buffer”              gint

Sets the size of the rate control buffer, in units of frames. The default value of 0 instructs the encoder to automatically select an appropriate value.

Flags: Read / Write

Allowed values: [0,1000]

Default value: 0

### The `“vp3-compatible”` property

      “vp3-compatible”           gboolean

Disables non-VP3 compatible features.

Flags: Read / Write

Default value: FALSE

### The `“multipass-cache-file”` property

      “multipass-cache-file”     gchar *

Multipass cache file.

Flags: Read / Write

Default value: NULL

### The `“multipass-mode”` property

      “multipass-mode”           GstTheoraEncMultipassMode

Single pass or first/second pass.

Flags: Read / Write

Default value: Single pass

### The `“dup-on-gap”` property

      “dup-on-gap”               gboolean

Allow codec to handle frames with GAP flag as duplicates of previous frame. This is good to work with variable frame rate stabilized by videorate element. It will add variable latency with maximal size of keyframe distance, this way it is a bad idea to use with live streams.

Flags: Read / Write

Default value: FALSE