vp9enc

This element encodes raw video into a VP9 stream. VP9 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 ! vp9enc ! webmmux ! filesink location=videotestsrc.webm

This example pipeline will encode a test video source to VP9 muxed in an WebM container.

Hierarchy

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

Implemented interfaces

Factory details

Authors: – David Schleef , Sebastian Dröge

Classification:Codec/Encoder/Video

Rank – primary

Plugin – vpx

Package – GStreamer Good Plug-ins

Pad Templates

sink

video/x-raw:
         format: { I420, YV12, Y444, I420_10LE, I422_10LE }
          width: [ 1, 2147483647 ]
         height: [ 1, 2147483647 ]
      framerate: [ 0/1, 2147483647/1 ]

Presencealways

Directionsink

Object typeGstPad


src

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

Presencealways

Directionsrc

Object typeGstPad


Properties

row-mt

“row-mt” gboolean

Whether each row should be encoded using multiple threads

Flags : Read / Write

Default value : false


tile-columns

“tile-columns” gint

Number of tile columns, log2

Flags : Read / Write

Default value : 6


tile-rows

“tile-rows” gint

Number of tile rows, log2

Flags : Read / Write

Default value : 0


The results of the search are