vp8enc

vp8enc

Properties

gint arnr-maxframes Read / Write
gint arnr-strength Read / Write
gint arnr-type Read / Write
gboolean auto-alt-ref Read / Write
gint buffer-initial-size Read / Write
gint buffer-optimal-size Read / Write
gint buffer-size Read / Write
gint cpu-used Read / Write
gint cq-level Read / Write
gint64 deadline Read / Write
gint dropframe-threshold Read / Write
GstVP8EncEndUsage end-usage Read / Write
GstVP8EncErFlags error-resilient Read / Write
gint lag-in-frames Read / Write
gint max-quantizer Read / Write
gint min-quantizer Read / Write
gchar * multipass-cache-file Read / Write
GstVP8EncMultipassMode multipass-mode Read / Write
gint noise-sensitivity Read / Write
gboolean resize-allowed Read / Write
gint resize-down-threshold Read / Write
gint resize-up-threshold Read / Write
gint sharpness Read / Write
gint static-threshold Read / Write
gint target-bitrate Read / Write
gint threads Read / Write
GstVP8EncTokenPartitions token-partitions Read / Write
GstVP8EncTuning tuning Read / Write
GstVP8EncScalingMode horizontal-scaling-mode Read / Write
gint keyframe-max-dist Read / Write
GstVP8EncKfMode keyframe-mode Read / Write
gint max-intra-bitrate Read / Write
gint overshoot Read / Write
GValueArray * temporal-scalability-layer-id Read / Write
gint temporal-scalability-number-layers Read / Write
gint temporal-scalability-periodicity Read / Write
GValueArray * temporal-scalability-rate-decimator Read / Write
GValueArray * temporal-scalability-target-bitrate Read / Write
gint twopass-vbr-bias Read / Write
gint twopass-vbr-maxsection Read / Write
gint twopass-vbr-minsection Read / Write
gint undershoot Read / Write
GstVP8EncScalingMode vertical-scaling-mode Read / Write
GstFraction timebase Read / Write

Types and Values

struct GstVP8Enc

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GstObject
            ╰── GstElement
                ╰── GstVideoEncoder
                    ╰── GstVPXEnc
                        ╰── GstVP8Enc

Implemented Interfaces

GstVP8Enc implements GstPreset and GstTagSetter.

Description

This element encodes raw video into a VP8 stream.

VP8 is a royalty-free

video codec maintained by Google . It's the successor of On2 VP3, which was the base of the Theora video codec.

To control the quality of the encoding, the “target-bitrate”, “min-quantizer”, “max-quantizer” or “cq-level” properties can be used. Which one is used depends on the mode selected by the “end-usage” property. See Encoder Parameters for explanation, examples for useful encoding parameters and more details on the encoding parameters.

Example pipeline

1
gst-launch-1.0 -v videotestsrc num-buffers=1000 ! vp8enc ! webmmux ! filesink location=videotestsrc.webm
This example pipeline will encode a test video source to VP8 muxed in an WebM container.

Synopsis

Element Information

plugin

vpx

author

David Schleef <ds@entropywave.com>, Sebastian Dröge <sebastian.droege@collabora.co.uk>

class

Codec/Encoder/Video

Element Pads

name

sink

direction

sink

presence

always

details

video/x-raw, format=(string)I420, width=(int)[ 1, 16383 ], height=(int)[ 1, 16383 ], framerate=(fraction)[ 0/1, 2147483647/1 ]

name

src

direction

source

presence

always

details

video/x-vp8, profile=(string){ 0, 1, 2, 3 }

Functions

Types and Values

struct GstVP8Enc

struct GstVP8Enc;

Property Details

The “arnr-maxframes” property

  “arnr-maxframes”           gint

AltRef maximum number of frames.

Flags: Read / Write

Allowed values: [0,15]

Default value: 0


The “arnr-strength” property

  “arnr-strength”            gint

AltRef strength.

Flags: Read / Write

Allowed values: [0,6]

Default value: 3


The “arnr-type” property

  “arnr-type”                gint

AltRef type.

Flags: Read / Write

Allowed values: [1,3]

Default value: 3


The “auto-alt-ref” property

  “auto-alt-ref”             gboolean

Automatically generate AltRef frames.

Flags: Read / Write

Default value: FALSE


The “buffer-initial-size” property

  “buffer-initial-size”      gint

Initial client buffer size (ms).

Flags: Read / Write

Allowed values: >= 0

Default value: 4000


The “buffer-optimal-size” property

  “buffer-optimal-size”      gint

Optimal client buffer size (ms).

Flags: Read / Write

Allowed values: >= 0

Default value: 5000


The “buffer-size” property

  “buffer-size”              gint

Client buffer size (ms).

Flags: Read / Write

Allowed values: >= 0

Default value: 6000


The “cpu-used” property

  “cpu-used”                 gint

CPU used.

Flags: Read / Write

Allowed values: [-16,16]

Default value: 0


The “cq-level” property

  “cq-level”                 gint

Constrained quality level.

Flags: Read / Write

Allowed values: [0,63]

Default value: 10


The “deadline” property

  “deadline”                 gint64

Deadline per frame (usec, 0=disabled).

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “dropframe-threshold” property

  “dropframe-threshold”      gint

Temporal resampling threshold (buf %).

Flags: Read / Write

Allowed values: [0,100]

Default value: 0


The “end-usage” property

  “end-usage”                GstVP8EncEndUsage

Rate control mode.

Flags: Read / Write

Default value: Variable Bit Rate (VBR) mode


The “error-resilient” property

  “error-resilient”          GstVP8EncErFlags

Error resilience flags.

Flags: Read / Write


The “lag-in-frames” property

  “lag-in-frames”            gint

Maximum number of frames to lag.

Flags: Read / Write

Allowed values: [0,25]

Default value: 0


The “max-quantizer” property

  “max-quantizer”            gint

Maximum Quantizer (worst).

Flags: Read / Write

Allowed values: [0,63]

Default value: 63


The “min-quantizer” property

  “min-quantizer”            gint

Minimum Quantizer (best).

Flags: Read / Write

Allowed values: [0,63]

Default value: 4


The “multipass-cache-file” property

  “multipass-cache-file”     gchar *

Multipass cache file. If stream caps reinited, multiple files will be created: file, file.1, file.2, ... and so on.

Flags: Read / Write

Default value: "multipass.cache"


The “multipass-mode” property

  “multipass-mode”           GstVP8EncMultipassMode

Multipass encode mode.

Flags: Read / Write

Default value: One pass encoding (default)


The “noise-sensitivity” property

  “noise-sensitivity”        gint

Noise sensisivity (frames to blur).

Flags: Read / Write

Allowed values: [0,6]

Default value: 0


The “resize-allowed” property

  “resize-allowed”           gboolean

Allow spatial resampling.

Flags: Read / Write

Default value: FALSE


The “resize-down-threshold” property

  “resize-down-threshold”    gint

Downscale threshold (buf %).

Flags: Read / Write

Allowed values: [0,100]

Default value: 60


The “resize-up-threshold” property

  “resize-up-threshold”      gint

Upscale threshold (buf %).

Flags: Read / Write

Allowed values: [0,100]

Default value: 30


The “sharpness” property

  “sharpness”                gint

Filter sharpness.

Flags: Read / Write

Allowed values: [0,7]

Default value: 0


The “static-threshold” property

  “static-threshold”         gint

Motion detection threshold.

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “target-bitrate” property

  “target-bitrate”           gint

Target bitrate (in bits/sec).

Flags: Read / Write

Allowed values: >= 0

Default value: 256000


The “threads” property

  “threads”                  gint

Number of threads to use.

Flags: Read / Write

Allowed values: [0,64]

Default value: 0


The “token-partitions” property

  “token-partitions”         GstVP8EncTokenPartitions

Number of token partitions.

Flags: Read / Write

Default value: One token partition


The “tuning” property

  “tuning”                   GstVP8EncTuning

Tuning.

Flags: Read / Write

Default value: Tune for PSNR


The “horizontal-scaling-mode” property

  “horizontal-scaling-mode”  GstVP8EncScalingMode

Horizontal scaling mode.

Flags: Read / Write

Default value: Normal


The “keyframe-max-dist” property

  “keyframe-max-dist”        gint

Maximum distance between keyframes (number of frames).

Flags: Read / Write

Allowed values: >= 0

Default value: 128


The “keyframe-mode” property

  “keyframe-mode”            GstVP8EncKfMode

Keyframe placement.

Flags: Read / Write

Default value: Determine optimal placement automatically


The “max-intra-bitrate” property

  “max-intra-bitrate”        gint

Maximum Intra frame bitrate.

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “overshoot” property

  “overshoot”                gint

Datarate overshoot (max) target (%).

Flags: Read / Write

Allowed values: [0,1000]

Default value: 100


The “temporal-scalability-layer-id” property

  “temporal-scalability-layer-id” GValueArray *

Sequence defining coding layer membership.

Flags: Read / Write


The “temporal-scalability-number-layers” property

  “temporal-scalability-number-layers” gint

Number of coding layers to use.

Flags: Read / Write

Allowed values: [1,5]

Default value: 1


The “temporal-scalability-periodicity” property

  “temporal-scalability-periodicity” gint

Length of sequence that defines layer membership periodicity.

Flags: Read / Write

Allowed values: [0,16]

Default value: 0


The “temporal-scalability-rate-decimator” property

  “temporal-scalability-rate-decimator” GValueArray *

Rate decimation factors for each layer.

Flags: Read / Write


The “temporal-scalability-target-bitrate” property

  “temporal-scalability-target-bitrate” GValueArray *

Target bitrates for coding layers (one per layer, decreasing).

Flags: Read / Write


The “twopass-vbr-bias” property

  “twopass-vbr-bias”         gint

CBR/VBR bias (0=CBR, 100=VBR).

Flags: Read / Write

Allowed values: [0,100]

Default value: 50


The “twopass-vbr-maxsection” property

  “twopass-vbr-maxsection”   gint

GOP maximum bitrate (% target).

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “twopass-vbr-minsection” property

  “twopass-vbr-minsection”   gint

GOP minimum bitrate (% target).

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “undershoot” property

  “undershoot”               gint

Datarate undershoot (min) target (%).

Flags: Read / Write

Allowed values: [0,1000]

Default value: 100


The “vertical-scaling-mode” property

  “vertical-scaling-mode”    GstVP8EncScalingMode

Vertical scaling mode.

Flags: Read / Write

Default value: Normal


The “timebase” property

  “timebase”                 GstFraction

Fraction of one second that is the shortest interframe time - normally left as zero which will default to the framerate.

Flags: Read / Write

See Also

vp8dec, webmmux, oggmux