# vp8enc

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

     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.

## Hierarchy

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

## Implemented interfaces

    GstPreset
    GstTagSetter

## Factory details

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

Classification: – `Codec/Encoder/Video`

Rank – primary

Plugin – vpx

Package – GStreamer Good Plug-ins

## Pad Templates

### `sink`

    video/x-raw:
             format: I420
              width: [ 1, 16383 ]
             height: [ 1, 16383 ]
          framerate: [ 0/1, 2147483647/1 ]

Presence – always

Direction – sink

Object type – GstPad

### `src`

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

Presence – always

Direction – src

Object type – GstPad

The results of the search are