Commit 8aed5353 authored by Sebastian Dröge's avatar Sebastian Dröge 🍵

Release 1.2.2

parent 5e670cbe
=== release 1.2.2 ===
2013-12-26 Sebastian Dröge <slomo@coaxion.net>
* configure.ac:
releasing 1.2.2
2013-12-26 16:46:27 +0100 Sebastian Dröge <sebastian@centricular.com>
* po/da.po:
* po/ru.po:
po: Update translations
2013-12-26 11:21:36 +0100 Wim Taymans <wtaymans@redhat.com>
* gst/rtsp/gstrtspsrc.c:
rtspsrc: use aggregate control for PLAY/PAUSE/TEARDOWN
Use the aggregate control instead of the original request url to perform
PAUSE/PLAY and TEARDOWN.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=721003
2013-12-24 14:40:25 +0100 Sebastian Dröge <sebastian@centricular.com>
* gst/debugutils/rndbuffersize.c:
rndbuffersize: Proxy CAPS, ALLOCATION, SCHEDULING and srcpad events properly
2013-12-23 12:23:27 -0600 Brendan Long <b.long@cablelabs.com>
* configure.ac:
vp9dec: Require vpx >= 1.3.0 for building vp9dec and vp9enc
Previous versions did not have a stable bitstream for VP9.
https://bugzilla.gnome.org/show_bug.cgi?id=720986
2013-12-23 15:44:30 +0100 Sebastian Dröge <sebastian@centricular.com>
* gst/matroska/matroska-demux.c:
matroskademux: Check for the correct size of codec_data in the ACM case
2013-12-20 11:45:38 +0100 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/descriptors.c:
qtdemux: Fix calcuation of descriptor length
https://bugzilla.gnome.org/show_bug.cgi?id=720813
2013-12-17 18:28:25 +0100 Sebastian Dröge <sebastian@centricular.com>
* configure.ac:
vpx: Mark VP9 support as non-experimental
There was a libvpx release with VP9 support now and the bitstream
is frozen too.
2013-12-16 16:17:07 +0100 Sebastian Dröge <sebastian@centricular.com>
* ext/taglib/gstid3v2mux.cc:
id3v2mux: Set picture type in the APIC frames
2013-12-16 16:14:52 +0100 Sebastian Dröge <sebastian@centricular.com>
* ext/taglib/gstid3v2mux.cc:
id3v2mux: Set image-description from the info struct, not the caps
2013-11-25 17:38:06 +0100 Wim Taymans <wtaymans@redhat.com>
* tests/check/elements/rtpjitterbuffer.c:
check: fix jitterbuffer check
Don't advance the clock to 240ms too early.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=710013
2013-12-04 16:23:43 -0500 Olivier Crête <olivier.crete@collabora.com>
* ext/pulse/pulsesink.c:
pulsesink: Free device_info in accepts caps
https://bugzilla.gnome.org/show_bug.cgi?id=719811
2013-11-29 19:50:24 +0100 Sebastian Dröge <sebastian@centricular.com>
* gst/videomixer/blend.c:
videomixer: Fix segfault when filling the background of a UYVY frame
https://bugzilla.gnome.org/show_bug.cgi?id=712401
2013-11-27 16:15:12 +0100 Mathieu Duponchelle <mduponchelle1@gmail.com>
* gst/videomixer/videomixer2.c:
videomixer: explicitly fail when alpha information would have been lost.
2013-11-28 16:50:42 +0100 Wim Taymans <wtaymans@redhat.com>
* gst/rtpmanager/rtpsession.c:
rtpsession: don't unref buffer twice
Cleaning the packet info will already unref the buffer.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=715078
2013-10-24 13:16:42 +0200 Per x Johansson <perxjoh@axis.com>
* gst/matroska/matroska-demux.c:
matroskademux: Avoid division by zero assert in gst_matroska_demux_search_pos
https://bugzilla.gnome.org/show_bug.cgi?id=711829
2013-11-11 13:17:25 +0100 Mark Nauwelaerts <mnauw@users.sourceforge.net>
* gst/audioparsers/gstac3parse.c:
ac3parse: correctly handle timestamps when parsing x-private1-ac3
... the way it has always worked fine in a52dec.
2013-11-06 12:40:06 +0100 Wim Taymans <wim.taymans@collabora.co.uk>
* gst/rtpmanager/gstrtpjitterbuffer.c:
jitterbuffer: advance expected seqnum after dropping
After dropping a buffer, move our expected seqnum
Conflicts:
gst/rtpmanager/gstrtpjitterbuffer.c
2013-11-18 14:27:48 +0100 Michael Olbrich <m.olbrich@pengutronix.de>
* sys/v4l2/gstv4l2object.c:
v4l2: clear cached caps on close
A different device with different caps may be used for the next open.
https://bugzilla.gnome.org/show_bug.cgi?id=712611
2013-11-14 17:29:50 -0300 Thibault Saunier <thibault.saunier@collabora.com>
* gst/isomp4/qtdemux.c:
qtdemux: Use GstVideoInfo helper to create caps for raw video
This way we do not miss mandatory fields in caps.
At the same time use the gst_pb_utils_get_codec_description
helper to get codec description.
https://bugzilla.gnome.org/show_bug.cgi?id=712335
2013-11-14 16:11:38 -0300 Thibault Saunier <thibault.saunier@collabora.com>
* gst/matroska/Makefile.am:
* gst/matroska/matroska-demux.c:
matroskademux: Use GstVideoInfo helper to create caps for raw video
This way we do not miss mandatory fields in caps.
At the same time use the gst_pb_utils_get_codec_description helper to
get codec description.
https://bugzilla.gnome.org/show_bug.cgi?id=712328
2013-11-23 12:15:40 +0100 Mark Nauwelaerts <mnauw@users.sourceforge.net>
* gst/matroska/matroska-mux.c:
matroskamux: correctly handle negative relative timestamps
... rather than scaling these as unsigned.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=712744
Based on patch by Krzysztof Kotlenga <pocek@users.sf.net>
2013-11-26 11:17:42 +0100 Sebastian Dröge <sebastian@centricular.com>
* gst/matroska/matroska-demux.c:
matroska-demux: Allow a bit more variation when detecting common framerates
Instead of +/- 1ns we allow 2ns now. Due to rounding errors there are
some Matroska files out there with 33.333331ms per frame for 30fps.
2013-11-25 15:49:07 +0100 Wim Taymans <wtaymans@redhat.com>
* gst/rtpmanager/gstrtpjitterbuffer.c:
* tests/check/elements/rtpjitterbuffer.c:
rtpjitterbuffer: improve clear-pt-map handling
Don't reset the expected output seqnum when clearing the pt map because this
could stall the jitterbuffer forever.
Add a unit test for this.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=709800
2013-11-25 00:34:21 +0000 Tim-Philipp Müller <tim@centricular.com>
* gst/rtpmanager/gstrtpjitterbuffer.c:
rtpjitterbuffer: fix wake-up when new buffers come in after running empty
Spotted by 'gratias' on IRC. Probably introduced in recent refactoring.
https://bugzilla.gnome.org/show_bug.cgi?id=715039
2013-11-22 12:26:21 +0100 Wim Taymans <wtaymans@redhat.com>
* gst/rtpmanager/gstrtpjitterbuffer.c:
rtpjitterbuffer: pass downstream flowreturn to upstream
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=712722
2013-11-21 11:32:15 +0100 Wim Taymans <wtaymans@redhat.com>
* gst/rtp/gstrtpvorbisdepay.c:
* gst/rtp/gstrtpvorbispay.c:
rtpvorbisdepay: handle packets > 0xffff
Handle input packet sizes larger than 16 bits in the depayloader.
Remove size restrictions on the payloader.
2013-11-21 11:30:28 +0100 Wim Taymans <wtaymans@redhat.com>
* gst/rtp/gstrtptheoradepay.c:
* gst/rtp/gstrtptheorapay.c:
rtptheoradepay: handle packets > 0xffff
Reorganize some things in the depayloader so that it can handle packets larger
than 16 bits.
Remove the size restriction on the payloader.
2013-11-19 10:10:51 +0100 Wim Taymans <wim.taymans@gmail.com>
* gst/rtpmanager/rtpjitterbuffer.c:
rtpjitterbuffer: avoid mapping the buffer
Reuse the parsed structure to get the timestamps.
2013-11-05 10:48:33 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com>
* gst/rtpmanager/gstrtpjitterbuffer.c:
rtpjitterbuffer: fix crash when do-retransmission=true and a lot of buffers are lost
The problem here was that the jitterbuffer lock was unlocked to push
the event, but that caused another thread to remove the timer currently
being processed, probably because the amount of rtx events
(and therefore timers) was getting too high. The solution is to
unlock and push the event only after timer processing has finished.
fixes https://bugzilla.gnome.org/show_bug.cgi?id=711131
2013-11-08 11:09:21 +0000 Marc Leeman <marc.leeman@gmail.com>
* sys/v4l2/gstv4l2bufferpool.c:
v4l2: init v4l2_buffer to 0x0 before ioctl
https://bugzilla.gnome.org/show_bug.cgi?id=712137
=== release 1.2.1 ===
2013-11-09 Sebastian Dröge <slomo@coaxion.net>
2013-11-09 15:38:33 +0100 Sebastian Dröge <sebastian@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
* configure.ac:
releasing 1.2.1
* docs/plugins/gst-plugins-good-plugins.args:
* docs/plugins/inspect/plugin-1394.xml:
* docs/plugins/inspect/plugin-aasink.xml:
* docs/plugins/inspect/plugin-alaw.xml:
* docs/plugins/inspect/plugin-alpha.xml:
* docs/plugins/inspect/plugin-alphacolor.xml:
* docs/plugins/inspect/plugin-apetag.xml:
* docs/plugins/inspect/plugin-audiofx.xml:
* docs/plugins/inspect/plugin-audioparsers.xml:
* docs/plugins/inspect/plugin-auparse.xml:
* docs/plugins/inspect/plugin-autodetect.xml:
* docs/plugins/inspect/plugin-avi.xml:
* docs/plugins/inspect/plugin-cacasink.xml:
* docs/plugins/inspect/plugin-cairo.xml:
* docs/plugins/inspect/plugin-cutter.xml:
* docs/plugins/inspect/plugin-debug.xml:
* docs/plugins/inspect/plugin-deinterlace.xml:
* docs/plugins/inspect/plugin-dtmf.xml:
* docs/plugins/inspect/plugin-dv.xml:
* docs/plugins/inspect/plugin-effectv.xml:
* docs/plugins/inspect/plugin-equalizer.xml:
* docs/plugins/inspect/plugin-flac.xml:
* docs/plugins/inspect/plugin-flv.xml:
* docs/plugins/inspect/plugin-flxdec.xml:
* docs/plugins/inspect/plugin-gdkpixbuf.xml:
* docs/plugins/inspect/plugin-goom.xml:
* docs/plugins/inspect/plugin-goom2k1.xml:
* docs/plugins/inspect/plugin-icydemux.xml:
* docs/plugins/inspect/plugin-id3demux.xml:
* docs/plugins/inspect/plugin-imagefreeze.xml:
* docs/plugins/inspect/plugin-interleave.xml:
* docs/plugins/inspect/plugin-isomp4.xml:
* docs/plugins/inspect/plugin-jack.xml:
* docs/plugins/inspect/plugin-jpeg.xml:
* docs/plugins/inspect/plugin-level.xml:
* docs/plugins/inspect/plugin-matroska.xml:
* docs/plugins/inspect/plugin-mulaw.xml:
* docs/plugins/inspect/plugin-multifile.xml:
* docs/plugins/inspect/plugin-multipart.xml:
* docs/plugins/inspect/plugin-navigationtest.xml:
* docs/plugins/inspect/plugin-oss4.xml:
* docs/plugins/inspect/plugin-ossaudio.xml:
* docs/plugins/inspect/plugin-png.xml:
* docs/plugins/inspect/plugin-pulseaudio.xml:
* docs/plugins/inspect/plugin-replaygain.xml:
* docs/plugins/inspect/plugin-rtp.xml:
* docs/plugins/inspect/plugin-rtpmanager.xml:
* docs/plugins/inspect/plugin-rtsp.xml:
* docs/plugins/inspect/plugin-shapewipe.xml:
* docs/plugins/inspect/plugin-shout2send.xml:
* docs/plugins/inspect/plugin-smpte.xml:
* docs/plugins/inspect/plugin-soup.xml:
* docs/plugins/inspect/plugin-spectrum.xml:
* docs/plugins/inspect/plugin-speex.xml:
* docs/plugins/inspect/plugin-taglib.xml:
* docs/plugins/inspect/plugin-udp.xml:
* docs/plugins/inspect/plugin-video4linux2.xml:
* docs/plugins/inspect/plugin-videobox.xml:
* docs/plugins/inspect/plugin-videocrop.xml:
* docs/plugins/inspect/plugin-videofilter.xml:
* docs/plugins/inspect/plugin-videomixer.xml:
* docs/plugins/inspect/plugin-vpx.xml:
* docs/plugins/inspect/plugin-wavenc.xml:
* docs/plugins/inspect/plugin-wavpack.xml:
* docs/plugins/inspect/plugin-wavparse.xml:
* docs/plugins/inspect/plugin-ximagesrc.xml:
* docs/plugins/inspect/plugin-y4menc.xml:
* gst-plugins-good.doap:
* win32/common/config.h:
Release 1.2.1
2013-11-09 15:38:15 +0100 Sebastian Dröge <sebastian@centricular.com>
* po/af.po:
* po/az.po:
* po/bg.po:
* po/ca.po:
* po/cs.po:
* po/da.po:
* po/de.po:
* po/el.po:
* po/en_GB.po:
* po/eo.po:
* po/es.po:
* po/eu.po:
* po/fi.po:
* po/fr.po:
* po/gl.po:
* po/hr.po:
* po/hu.po:
* po/id.po:
* po/it.po:
* po/ja.po:
* po/lt.po:
* po/lv.po:
* po/mt.po:
* po/nb.po:
* po/nl.po:
* po/or.po:
* po/pl.po:
* po/pt_BR.po:
* po/ro.po:
* po/ru.po:
* po/sk.po:
* po/sl.po:
* po/sq.po:
* po/sr.po:
* po/sv.po:
* po/tr.po:
* po/uk.po:
* po/vi.po:
* po/zh_CN.po:
* po/zh_HK.po:
* po/zh_TW.po:
Update .po files
2013-11-09 12:01:55 +0100 Sebastian Dröge <sebastian@centricular.com>
This is GStreamer Good Plugins 1.2.1
This is GStreamer Good Plugins 1.2.2
Release notes for GStreamer Good Plugins 1.2.1
Release notes for GStreamer Good Plugins 1.2.2
The GStreamer team is proud to announce a new bug-fix release
......@@ -57,26 +57,24 @@ contains a set of codecs plugins based on libav (formerly gst-ffmpeg)
Bugs fixed in this release
* 683536 : souphttpsrc: Handles long pause (long enough to timeout TCP socket connection) as EOS
* 707933 : matroskademux: Wrong UTF8 detection causes wrong detection of subtitle encoding
* 707975 : qtdemux: Can't handle datetimes before 1970 yet
* 708505 : matroskademux: sends unnecessary gap events
* 708864 : mp4mux: Does not negotiate due to framerate caps not set on peer pad
* 709270 : qtdemux: Does not support mp2v fourcc for MPEG-2 video
* 709352 : jpegdec: Does not require width/height on caps or parsed input
* 709384 : videomixer: Check if the source pad needs reconfiguration and update the source caps in that case
* 709390 : videomixer: Update videoconversion code
* 709423 : v4l2bufferpool: O_CLOEXEC needs _GNU_SOURCE
* 709457 : Do not write out SegmentUID when muxing to WebM
* 709507 : deinterlace: Segfault in handling of planar YUV video formats
* 709614 : wavenc: Uses invalid caps for alaw and mulaw
* 709728 : dvdemux/dvdec: Sends stream-start, caps and segment events in wrong order
* 710110 : multiudpsink: Leaks GstMemories when flushing
* 710215 : audioiirfilter: Crashes when no coefficients are provided
* 710623 : qtdemux: Video captured by iPad couldn't play in push mode
* 711230 : rtspsrc: allow setting certificate validation flags
* 711497 : rtpvp8pay: Compatibility issue with linphone due to always sending a picture id
* 711699 : wavenc: bogus header generated
* 688153 : matroskademux: audio gap after seeking on webm with lacing
* 709800 : rtpjitterbuffer: stalled stream after gst_rtp_jitter_buffer_clear_pt_map() being called.
* 710013 : tests: rtpjitterbuffer test_rtx_packet_delay - spurious failures
* 711131 : rtpjitterbuffer: SIGSEGV when do-retransmission=true and a lot of packets are dopped
* 711829 : matroskademux: assert on division by zero
* 712137 : v4l2sink: fixes for uploading compressed
* 712328 : matroskademux: Use GstVideoInfo helper to create caps for raw video
* 712335 : qtdemux: Use GstVideoInfo helper to create caps for raw video
* 712401 : videomixer: Segfault when generating color backround in UYVY
* 712611 : v4l2: clear cached caps on close
* 712722 : [regression] rtpbin fails to return not linked when it should
* 712744 : matroskamux: Fix handling of negative timestamps
* 715039 : rtpjitterbuffer: Fix inconsistency in waking up
* 719431 : videomixer: Should fail negotiation if it can't preserve the alpha channel of input streams
* 719811 : pulsesink: Leak of device_info in gst_pulsesink_sink_info_cb
* 720813 : qtmux: Invalid calculation of descriptor length
* 720986 : vp9dec: Don't build with libvpx earlier than 1.3.0 because of non-final bitstream
* 721003 : rtspsrc: play requests can't find media with query parameters
==== Download ====
......@@ -113,20 +111,16 @@ subscribe to the gstreamer-devel list.
Contributors to this release
* Aleix Conchillo Flaque
* Andoni Morales Alastruey
* Hans Månsson
* Matej Knopp
* Brendan Long
* George Kiagiadakis
* Marc Leeman
* Mark Nauwelaerts
* Mathieu Duponchelle
* Matthieu Bouron
* Ognyan Tonchev
* Michael Olbrich
* Olivier Crête
* Peter Korsgaard
* Philippe Normand
* Reynaldo H. Verdejo Pinochet
* Rico Tzschichholz
* Per x Johansson
* Sebastian Dröge
* Thiago Santos
* Thibault Saunier
* Tim-Philipp Müller
* Wim Taymans
 
\ No newline at end of file
......@@ -5,7 +5,7 @@ dnl please read gstreamer/docs/random/autotools before changing this file
dnl initialize autoconf
dnl releases only do -Wall, git and prerelease does -Werror too
dnl use a three digit version number for releases, and four for git/pre
AC_INIT([GStreamer Good Plug-ins],[1.2.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-good])
AC_INIT([GStreamer Good Plug-ins],[1.2.2],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-good])
AG_GST_INIT
......@@ -43,7 +43,7 @@ AC_DEFINE_UNQUOTED(GST_API_VERSION, "$GST_API_VERSION",
[GStreamer API Version])
AG_GST_LIBTOOL_PREPARE
AS_LIBTOOL(GST, 201, 0, 201)
AS_LIBTOOL(GST, 202, 0, 202)
dnl *** required versions of GStreamer stuff ***
GST_REQ=1.2.0
......
......@@ -24008,3 +24008,493 @@
<DEFAULT>No Picture ID</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::arnr-maxframes</NAME>
<TYPE>gint</TYPE>
<RANGE>[0,15]</RANGE>
<FLAGS>rw</FLAGS>
<NICK>AltRef max frames</NICK>
<BLURB>AltRef maximum number of frames.</BLURB>
<DEFAULT>0</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::arnr-strength</NAME>
<TYPE>gint</TYPE>
<RANGE>[0,6]</RANGE>
<FLAGS>rw</FLAGS>
<NICK>AltRef strength</NICK>
<BLURB>AltRef strength.</BLURB>
<DEFAULT>3</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::arnr-type</NAME>
<TYPE>gint</TYPE>
<RANGE>[1,3]</RANGE>
<FLAGS>rw</FLAGS>
<NICK>AltRef type</NICK>
<BLURB>AltRef type.</BLURB>
<DEFAULT>3</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::auto-alt-ref</NAME>
<TYPE>gboolean</TYPE>
<RANGE></RANGE>
<FLAGS>rw</FLAGS>
<NICK>Auto alt reference frames</NICK>
<BLURB>Automatically generate AltRef frames.</BLURB>
<DEFAULT>FALSE</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::buffer-initial-size</NAME>
<TYPE>gint</TYPE>
<RANGE>>= 0</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Buffer initial size</NICK>
<BLURB>Initial client buffer size (ms).</BLURB>
<DEFAULT>4000</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::buffer-optimal-size</NAME>
<TYPE>gint</TYPE>
<RANGE>>= 0</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Buffer optimal size</NICK>
<BLURB>Optimal client buffer size (ms).</BLURB>
<DEFAULT>5000</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::buffer-size</NAME>
<TYPE>gint</TYPE>
<RANGE>>= 0</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Buffer size</NICK>
<BLURB>Client buffer size (ms).</BLURB>
<DEFAULT>6000</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::cpu-used</NAME>
<TYPE>gint</TYPE>
<RANGE>[-16,16]</RANGE>
<FLAGS>rw</FLAGS>
<NICK>CPU used</NICK>
<BLURB>CPU used.</BLURB>
<DEFAULT>0</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::cq-level</NAME>
<TYPE>gint</TYPE>
<RANGE>[0,63]</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Constrained quality level</NICK>
<BLURB>Constrained quality level.</BLURB>
<DEFAULT>10</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::deadline</NAME>
<TYPE>gint64</TYPE>
<RANGE>>= 0</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Deadline</NICK>
<BLURB>Deadline per frame (usec, 0=disabled).</BLURB>
<DEFAULT>0</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::dropframe-threshold</NAME>
<TYPE>gint</TYPE>
<RANGE>[0,100]</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Drop Frame Threshold</NICK>
<BLURB>Temporal resampling threshold (buf %).</BLURB>
<DEFAULT>0</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::end-usage</NAME>
<TYPE>GstVP9EncEndUsage</TYPE>
<RANGE></RANGE>
<FLAGS>rw</FLAGS>
<NICK>Rate control mode</NICK>
<BLURB>Rate control mode.</BLURB>
<DEFAULT>Variable Bit Rate (VBR) mode</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::error-resilient</NAME>
<TYPE>GstVP9EncErFlags</TYPE>
<RANGE></RANGE>
<FLAGS>rw</FLAGS>
<NICK>Error resilient</NICK>
<BLURB>Error resilience flags.</BLURB>
<DEFAULT></DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::horizontal-scaling-mode</NAME>
<TYPE>GstVP9EncScalingMode</TYPE>
<RANGE></RANGE>
<FLAGS>rw</FLAGS>
<NICK>Horizontal scaling mode</NICK>
<BLURB>Horizontal scaling mode.</BLURB>
<DEFAULT>Normal</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::keyframe-max-dist</NAME>
<TYPE>gint</TYPE>
<RANGE>>= 0</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Keyframe max distance</NICK>
<BLURB>Maximum distance between keyframes (number of frames).</BLURB>
<DEFAULT>128</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::keyframe-mode</NAME>
<TYPE>GstVP9EncKfMode</TYPE>
<RANGE></RANGE>
<FLAGS>rw</FLAGS>
<NICK>Keyframe Mode</NICK>
<BLURB>Keyframe placement.</BLURB>
<DEFAULT>Determine optimal placement automatically</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::lag-in-frames</NAME>
<TYPE>gint</TYPE>
<RANGE>[0,25]</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Lag in frames</NICK>
<BLURB>Maximum number of frames to lag.</BLURB>
<DEFAULT>0</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::max-intra-bitrate</NAME>
<TYPE>gint</TYPE>
<RANGE>>= 0</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Max Intra bitrate</NICK>
<BLURB>Maximum Intra frame bitrate.</BLURB>
<DEFAULT>0</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::max-quantizer</NAME>
<TYPE>gint</TYPE>
<RANGE>[0,63]</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Maximum Quantizer</NICK>
<BLURB>Maximum Quantizer (worst).</BLURB>
<DEFAULT>63</DEFAULT>
</ARG>
<ARG>
<NAME>GstVP9Enc::min-quantizer</NAME>
<TYPE>gint</TYPE>
<RANGE>[0,63]</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Minimum Quantizer</NICK>
<BLURB>Minimum Quantizer (best).</BLURB>
<DEFAULT>4</DEFAULT>
</ARG>