James Zern
fd004e10d3
libvpxenc: add overshoot-pct option
...
balances the presence of undershoot-pct
Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Zern <jzern@google.com>
2015-06-10 21:01:32 -07:00
James Zern
2c70436e69
libvpxenc: add undershoot-pct option
...
replaces deprecated rc_buffer_aggressivity
Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Zern <jzern@google.com>
2015-06-10 21:01:20 -07:00
James Almer
40bf3687a1
libvpx: add support for yuv440p and yuv440p10/12 encoding
...
Reviewed-by: James Zern <jzern@google.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2015-05-20 20:08:56 -03:00
James Zern
e07ef1ada3
libvpxenc: cosmetics: reindent
...
Signed-off-by: James Zern <jzern@google.com>
2015-04-24 00:00:12 -07:00
James Zern
238ec505e2
libvpxenc: only set noise reduction w/vp8
...
this quiets a warning:
Failed to set VP8E_SET_NOISE_SENSITIVITY codec control: Unspecified
internal error
Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Zern <jzern@google.com>
2015-04-23 23:59:41 -07:00
Deb Mukherjee
26a0bcb15b
Support for VP9 high-color/high-bit-depth encoding
...
Patch to support VP9 encoding with new profiles 1-3.
Profile 1 (8-bit 422/444) should work with default libvpx
configuration.
However you will need to configure libvpx with
--enable-vp9-highbitdepth before building and linking
with ffmpeg for profile 2 (10-/12-bit 420) and profile 3
(10-/12-bit 422/444) encoding.
You may use the appropriate profile option on the
command line:
-profile:v 1 for 422/444 8-bit encoding
-profile:v 2 for 420 10-/12- bit encoding
-profile:v 3 for 422/444 10-/12-bit encoding
If you do not use the -profile:v option, it will be deduced
from the source format.
Signed-off-by: James Zern <jzern@google.com>
2015-04-20 15:24:13 -07:00
Michael Niedermayer
2a8198b32f
avcodec/libvpxenc: Set min/max quantizer to 0 for lossless mode
...
Fixes Ticket4246
Reviewed-by: James Zern <jzern@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-20 19:22:33 +01:00
Michael Niedermayer
cf714205bd
avcodec/libvpxenc: Clear twopass_stats.sz on deallocation
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-09 21:18:43 +01:00
Michael Niedermayer
a11440c185
Merge commit '93f7948136fcda8ddbbc44a6c24418f11ca829b8'
...
* commit '93f7948136fcda8ddbbc44a6c24418f11ca829b8':
libvpx: Fix mixed use of av_malloc() and av_reallocp()
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-09 21:18:36 +01:00
Vittorio Giovara
93f7948136
libvpx: Fix mixed use of av_malloc() and av_reallocp()
...
This buffer is resized when vpx_codec_get_cx_data() returns a
VPX_CODEC_STATS_PKT packet.
CC: libav-stable@libav.org
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-03-09 12:58:18 +00:00
Clément Bœsch
546d69eb43
avcodec: use av_frame_free() for coded_frame
2015-03-02 21:27:21 +01:00
Michael Niedermayer
21518f5a0a
avcodec/libvpxenc: Check for av_malloc() failure
...
Fixes CID1271045
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-22 02:40:16 +01:00
Matt Oliver
87deebe11a
avcodec/libvpxenc.c: Fix linking with codec interface with msvc.
...
Default libvpx msvc buils used module definition to export symbols.
These symbols are exported as pointers to data which dont link when
referenced directly.
Reviewed-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-01-10 21:10:02 +01:00
Michael Niedermayer
8426edef4c
Merge commit '771656bd85416cd6308b11aed6f2c69a8db9c21b'
...
* commit '771656bd85416cd6308b11aed6f2c69a8db9c21b':
libvpxenc: clean memory on error
Conflicts:
libavcodec/libvpxenc.c
See: 104b1d9e10
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-18 03:08:20 +01:00
Vittorio Giovara
771656bd85
libvpxenc: clean memory on error
...
CC: libav-stable@libav.org
Bug-Id: CID 733795
2014-11-18 00:38:56 +01:00
Michael Niedermayer
765abb3b76
avcodec/libvpxenc: use av_freep(), do not leave stale pointers in memory
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-19 03:04:04 +02:00
Michael Niedermayer
8be1120deb
Merge commit '685be3d1aecf965281128f3b631ed965bcfa754d'
...
* commit '685be3d1aecf965281128f3b631ed965bcfa754d':
libvpxenc: add static-thresh private option
Conflicts:
libavcodec/libvpxenc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-18 15:33:57 +02:00
Anton Khirnov
685be3d1ae
libvpxenc: add static-thresh private option
...
Currently, this option is accessed through AVCodecContext.mb_threshold,
which originally controlled reusing MB data when transcoding mpeg to
mpeg. Since the libvpx meaning is completely different from the original
mpegvideo meaning, it is better to use a separate private option for
this.
2014-10-18 05:28:03 +02:00
Stefano Sabatini
39b517fac0
lavc/libvpxenc: show crf CQ value in error message
2014-09-05 11:20:07 +02:00
Deb Mukherjee
b543a29020
avcodec/libvpxenc: Adds support for constant quality mode in VP9.
...
Changes in the parameter mapping for libvpx to support the constant
quality mode in VP9. The assumption in the patch is that if crf is
provided but bitrate is 0, then the 'constant quality' mode of VP9
is used. However if both are present, the 'constrained quality' mode
is used as before.
Reviewed-by: James Zern <jzern@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-28 15:21:57 +02:00
Deb Mukherjee
b6a0b8bcf4
Adds support for setting aq_mode in libvpx encoder
...
Reviewed-by: James Zern <jzern@google.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2014-08-27 23:12:47 -03:00
Michael Niedermayer
60dbed6067
Merge commit '4b1f5e5090abed6c618c8ba380cd7d28d140f867'
...
* commit '4b1f5e5090abed6c618c8ba380cd7d28d140f867':
cosmetics: Write NULL pointer inequality checks more compactly
Conflicts:
libavcodec/dvdsubdec.c
libavcodec/h263dec.c
libavcodec/libxvid.c
libavcodec/rv10.c
libavcodec/utils.c
libavformat/format.c
libavformat/matroskadec.c
libavformat/segment.c
libavutil/opt.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-15 21:26:12 +02:00
Michael Niedermayer
fb33bff990
Merge commit 'f929ab0569ff31ed5a59b0b0adb7ce09df3fca39'
...
* commit 'f929ab0569ff31ed5a59b0b0adb7ce09df3fca39':
cosmetics: Write NULL pointer equality checks more compactly
Conflicts:
cmdutils.c
ffmpeg_opt.c
ffplay.c
libavcodec/dvbsub.c
libavcodec/dvdsubdec.c
libavcodec/dvdsubenc.c
libavcodec/dxa.c
libavcodec/libxvid_rc.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo_enc.c
libavcodec/rv10.c
libavcodec/tiffenc.c
libavcodec/utils.c
libavcodec/vc1dec.c
libavcodec/zmbv.c
libavdevice/v4l2.c
libavformat/matroskadec.c
libavformat/movenc.c
libavformat/sdp.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-08-15 21:00:50 +02:00
Gabriel Dume
4b1f5e5090
cosmetics: Write NULL pointer inequality checks more compactly
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-08-15 05:34:13 -07:00
Rafaël Carré
9affa784a0
vp9 encoder: use a decent default speed setting
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-06-17 21:38:43 +02:00
Michael Niedermayer
71da91e887
avcodec/libvpxenc: update the ranges for "cpu_used" so it matches the "speed" alias
...
Reviewed-by: James Zern <jzern@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-06 23:52:20 +02:00
Rafaël Carré
5265e3e40f
avcodec/libvpxenc: Update the "cpu-used" options default to match the "speed" alias
...
Reviewed-by: James Zern <jzern@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-06 23:50:03 +02:00
Carl Eugen Hoyos
ced0d6c14d
Use correct msvc type specifiers for ptrdiff_t and size_t.
...
The Windows runtime aborts if it finds %t or %z.
Fixes ticket #3472 .
Reviewed-by: Ronald Bultje
2014-04-24 18:01:30 +02:00
Michael Niedermayer
8e5a2989a3
avcodec/libvpx: set CODEC_CAP_EXPERIMENTAL correctly instead of testing at codec open time
...
Reviewed-by: James Zern <jzern@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-10 04:02:10 +01:00
Michael Niedermayer
8c677a9f06
Merge commit '9b8d11a76ae7bca8bbb58abb822138f8b42c776c'
...
* commit '9b8d11a76ae7bca8bbb58abb822138f8b42c776c':
avcodec: Use av_reallocp where suitable
Conflicts:
libavcodec/bitstream.c
libavcodec/eatgv.c
libavcodec/flashsv.c
libavcodec/libtheoraenc.c
libavcodec/libvpxenc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-09 20:31:29 +01:00
Alexandra Khirnova
9b8d11a76a
avcodec: Use av_reallocp where suitable
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-12-09 12:27:51 +02:00
Michael Niedermayer
eb87d1f678
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
libvpx: do not mark VP9 as experimental when using libvpx >= 1.3.0
Conflicts:
libavcodec/libvpxdec.c
libavcodec/libvpxenc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-08 13:49:16 +01:00
James Almer
ae330070ee
libvpxenc: token_parts is VP8 specific
...
Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: James Zern <jzern@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-08 00:38:40 +01:00
Guillaume Martres
9aa053cede
libvpx: do not mark VP9 as experimental when using libvpx >= 1.3.0
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-12-08 00:28:27 +01:00
James Zern
34e32d6464
libvpxenc: update cpu-used default
...
3 -> 1. vp8 encoding speed has improved since the initial release and 1
is a reasonable default for vp9 as well.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-23 16:59:05 +01:00
Michael Niedermayer
0ee905e243
Merge commit '5b9c3b4505206143d85398c1410949319fa1180f'
...
* commit '5b9c3b4505206143d85398c1410949319fa1180f':
Replace all instances of avcodec_alloc_frame() with av_frame_alloc().
Conflicts:
doc/examples/decoding_encoding.c
doc/examples/muxing.c
ffmpeg.c
libavcodec/alacenc.c
libavcodec/libopenjpegenc.c
libavcodec/libvpxenc.c
libavcodec/pcm.c
libavcodec/xbmenc.c
libavcodec/xwdenc.c
libavformat/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-16 23:54:10 +01:00
Anton Khirnov
5b9c3b4505
Replace all instances of avcodec_alloc_frame() with av_frame_alloc().
2013-11-16 12:44:20 +01:00
James Zern
23c03ac91e
libvpxenc: allow qmax of 0
...
this is valid for both vp8 & vp9 and necessary for lossless in the
latter
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-03 01:00:16 +01:00
James Zern
517afd72c6
libvpxenc: add VP9 options
...
same as their vpxenc equivalents:
-lossless
-tile-columns
-tile-rows
-frame-parallel
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-03 00:35:15 +01:00
James Zern
a8bcc956fd
libvpxenc: split vp8/vp9 options array
...
the current options are left for both to provide command line compatibility
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-02 20:35:12 +01:00
Michael Niedermayer
ee77140afa
Merge commit 'b2bed9325dbd6be0da1d91ffed3f513c40274fd2'
...
* commit 'b2bed9325dbd6be0da1d91ffed3f513c40274fd2':
cosmetics: Group .name and .long_name together in codec/format declarations
Conflicts:
libavcodec/8svx.c
libavcodec/alac.c
libavcodec/cljr.c
libavcodec/dnxhddec.c
libavcodec/dnxhdenc.c
libavcodec/dpxenc.c
libavcodec/dvdec.c
libavcodec/dvdsubdec.c
libavcodec/dvdsubenc.c
libavcodec/ffv1dec.c
libavcodec/flacdec.c
libavcodec/flvdec.c
libavcodec/fraps.c
libavcodec/frwu.c
libavcodec/g726.c
libavcodec/gif.c
libavcodec/gifdec.c
libavcodec/h261dec.c
libavcodec/h263dec.c
libavcodec/iff.c
libavcodec/imc.c
libavcodec/libopencore-amr.c
libavcodec/libopenjpegdec.c
libavcodec/libopenjpegenc.c
libavcodec/libspeexenc.c
libavcodec/libvo-amrwbenc.c
libavcodec/libvorbisenc.c
libavcodec/libvpxenc.c
libavcodec/libx264.c
libavcodec/libxavs.c
libavcodec/libxvid.c
libavcodec/ljpegenc.c
libavcodec/mjpegbdec.c
libavcodec/mjpegdec.c
libavcodec/mpeg12dec.c
libavcodec/mpeg4videodec.c
libavcodec/msmpeg4dec.c
libavcodec/pgssubdec.c
libavcodec/pngdec.c
libavcodec/pngenc.c
libavcodec/proresdec_lgpl.c
libavcodec/proresenc_kostya.c
libavcodec/ra144enc.c
libavcodec/rawdec.c
libavcodec/rv10.c
libavcodec/sp5xdec.c
libavcodec/takdec.c
libavcodec/tta.c
libavcodec/v210dec.c
libavcodec/vp6.c
libavcodec/wavpack.c
libavcodec/xbmenc.c
libavcodec/yop.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-04 12:34:23 +02:00
Diego Biurrun
b2bed9325d
cosmetics: Group .name and .long_name together in codec/format declarations
2013-10-03 23:32:01 +02:00
Vignesh Venkatasubramanian
33968c201c
Fixing a stride issue in VP8 Alpha encode
...
When encoding alpha channel in libvpx, the stride isn't set
properly for the alpha encoder. Fixing it.
Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-17 13:38:26 +02:00
Michael Niedermayer
a20f049c2a
avcodec/libvpxenc: make class names unique
...
This should fix an infinite loop with -h full
Found-by: <Foofie>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-09 03:04:31 +02:00
Vignesh Venkatasubramanian
98c292a7a8
Adding support for encoding VP8 Alpha
...
This patch adds support for encoding VP8 files with alpha. The alpha channel
is encoded separately and the output is placed in AVPacket's side_data. The
muxer then muxes it into the BlockAdditional element of the matroska container.
More details on spec here: http://goo.gl/wCP1y
Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-17 15:11:23 +02:00
Michael Niedermayer
1d178710b4
libvpxenc: dont redundantly zero fields, the whole context is zeroed on init
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-01 00:11:53 +01:00
Pascal Massimino
3c3a8c1489
libvpxenc: add psnr support
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-28 23:29:53 +01:00
slhck
bfcc38ef48
libvpx: check if CQ level is in correct bounds
...
Check whether CQ level is within qmin..qmax and abort on error. If this isn't properly
set, encoding will fail at the first frame.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-25 20:13:10 +01:00
slhck
188947c32a
libvpx: allow 0 as min quantizer value
...
Allow setting the min quantizer to 0 instead of 1 (libvpx allows 0); fixes #2136
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-25 20:10:14 +01:00
Michael Niedermayer
353dbaa297
Merge commit '3f111804eb5c603a344706b84b7164cbf7b4e0df'
...
* commit '3f111804eb5c603a344706b84b7164cbf7b4e0df':
libvpx: make vp8 and vp9 selectable
libvpx: support vp9
nut: support vp9 tag
mkv: support vp9 tag
rtpdec: Make variables that should wrap unsigned
Conflicts:
configure
libavcodec/Makefile
libavcodec/allcodecs.c
libavcodec/avcodec.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-15 14:57:57 +01:00