Diego Biurrun
794fcf79a8
Rename CONFIG_FFT_FLOAT ---> FFT_FLOAT
...
The define does not originate from configure, so it should not
have a name that is CONFIG_-prefixed.
2014-01-06 19:12:48 +01:00
Paul B Mahol
63debaa74c
libopusenc: Change default frame duration to 20 ms
...
20 ms is the default in the libopus encoder, and gives better
quality than 10 ms.
Signed-off-by: Martin Storsjö <martin@martin.st >
2014-01-06 18:56:44 +02:00
Anton Khirnov
9cbf2d78f0
pthread_frame: unref decoded frames on failure
...
This is similar to what the non-threaded code already does.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-06 08:25:55 +01:00
Anton Khirnov
a03a642d5c
h264: do not use 422 functions for monochrome
...
Fixes invalid memory access.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-06 08:25:36 +01:00
Anton Khirnov
9eef9eb301
h264: check that execute_decode_slices() is not called too many times
...
Fixes invalid reads.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-06 08:25:25 +01:00
Anton Khirnov
bfd26b7ce6
h264: reject mismatching luma/chroma bit depths during sps parsing
...
There is no point in delaying the check and it avoids bugs with a
half-initialized context.
Fixes invalid reads.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-06 08:23:45 +01:00
Anton Khirnov
9a026c7298
h264: rebuild the default ref list if the reference count changes
...
Fixes possible access to freed memory.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-06 08:23:17 +01:00
Anton Khirnov
4736d003fa
cavsdec: check ff_get_buffer() return value
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-06 08:22:48 +01:00
Anton Khirnov
50079a6aa9
lavc: do not leak the internal frame if opening the codec fails
2014-01-06 08:21:58 +01:00
Anton Khirnov
8058284ce0
lavc: add 422/444 YUV with alpha to align_dimensions()
...
Aligns frame dimensions to 16, which fixes potential invalid writes.
2014-01-06 08:20:56 +01:00
Kostya Shishkov
2f97094608
lagarith: do not call simd functions on unaligned lines
...
They end up overwriting past the line end.
Partially based on a patch by Michael Niedermayer <michaelni@gmx.at >
Bug-Id: vlc/9700
Signed-off-by: Luca Barbato <lu_zero@gentoo.org >
Signed-off-by: Anton Khirnov <anton@khirnov.net >
2014-01-06 08:19:29 +01:00
Anton Khirnov
f4a8a00805
sgidec: fix buffer size check in expand_rle_row()
...
Right now it will spuriously fail if the linesize is exactly equal to
the data width.
CC:libav-stable@libav.org
2014-01-06 08:18:45 +01:00
Anton Khirnov
adb199d1bc
kgv1dec: replace forcing EMU_EDGE by a copy
...
The decoder currently sets CODEC_FLAG_EMU_EDGE and relies on
get_buffer2() to always provide buffers with linesize == 2 * width.
This is wrong, since we place no such restriction on get_buffer2()
implementations.
Fix this by decoding into internal buffers and copying them to output
frames. Since this is a very obscure decoder, the performance hit should
not be an issue.
2014-01-06 08:15:36 +01:00
Anton Khirnov
fe80fa53bc
4xm: replace forcing EMU_EDGE by a copy
...
The decoder currently sets CODEC_FLAG_EMU_EDGE and relies on
get_buffer2() to always provide buffers with linesize == 2 * width.
This is wrong, since we place no such restriction on get_buffer2()
implementations.
Fix this by decoding into internal buffers and copying them to output
frames. Since this is a very obscure decoder, the performance hit should
not be an issue.
2014-01-06 08:14:14 +01:00
Anton Khirnov
fffca3d278
4xm: return a proper error code.
2014-01-06 08:13:50 +01:00
Tim Walker
7840c40445
(e)ac3dec: set AV_FRAME_DATA_MATRIXENCODING side data.
2014-01-05 16:41:56 +01:00
Tim Walker
13345fc1f8
(e)ac3: parse and store the Dolby Surround, Surround EX and Headphone mode flags.
2014-01-05 16:41:56 +01:00
Tim Walker
e92123093d
mlpdec: set AV_FRAME_DATA_MATRIXENCODING side data.
2014-01-05 16:41:56 +01:00
Tim Walker
4b7f1a7ced
mlp: Parse TrueHD decoder channel modifiers and set the AVMatrixEncoding for each substream.
2014-01-05 16:41:56 +01:00
Tim Walker
30d70e79a6
dcadec: set AV_FRAME_DATA_MATRIXENCODING side data.
2014-01-05 16:41:56 +01:00
Tim Walker
6bfdb2de88
dcadec: set the output channel mode more accurately.
...
When downmixing 2.1 to 2-channel, if the 2.0 portion is Lt/Rt, sum-difference or dual mono, the actual output will be the same (with the LFE either mixed-in or discarded).
Also, when downmixing an arbitrary layout to 2-channel, if the bitstream contains custom downmix coefficients targeting Lt/Rt, then the output will be Lt/Rt rather than regular Stereo.
2014-01-05 16:41:56 +01:00
Tim Walker
5b4797a21d
avframe: add AV_FRAME_DATA_MATRIXENCODING side data type.
...
Includes a libavcodec utility function to update a frame's side data.
2014-01-05 16:41:56 +01:00
Alex Converse
7f29644108
aac: Fix low delay windowing.
...
AAC LD uses a low overlap sine window instead of a KBD window.
2014-01-04 14:42:38 -08:00
Alex Converse
b2212dec0f
aac: Fix TNS decoding for the 512 sample window family.
2014-01-04 14:42:38 -08:00
Martin Storsjö
3348e3492d
arm: Use the matching endfunc macro instead of the assembler directive directly
...
Signed-off-by: Martin Storsjö <martin@martin.st >
2014-01-04 13:53:08 +02:00
Martin Storsjö
2ad4ee345a
arm: Add a missing endfunc macro call
...
Signed-off-by: Martin Storsjö <martin@martin.st >
2014-01-04 13:53:02 +02:00
Anton Khirnov
a3a55645f0
mpegvideo: remove disabled bfin asm
...
It has been disabled as 'broken' over 3 years ago in b716a792
2014-01-03 16:54:24 +01:00
Anton Khirnov
a4d0c6e050
mpegvideo: move dct_unquantize functions up to avoid forward declarations
2014-01-03 16:54:00 +01:00
Anton Khirnov
aec25b1c46
mpegvideo: split the encoding-only parts of frame_start() into a separate function
...
This introduces some code duplication. However, much of it should go
away once the decoders stop using MpegEncContext.
2014-01-03 16:52:49 +01:00
Anton Khirnov
58312b2472
h264: reset data_partitioning if decoding the slice header for NAL_DPA fails
...
If it was set before then we can end up trying to decode a slice without
a valid slice header, which can lead to invalid memory access.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-03 16:42:02 +01:00
Anton Khirnov
e89aa4bf56
lzw: switch to bytestream2
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-03 16:40:43 +01:00
Anton Khirnov
24057c8320
eacmv: check the framerate before setting it.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-03 16:39:09 +01:00
Anton Khirnov
5569146d48
adx: check that the offset is not negative
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-03 16:38:36 +01:00
Anton Khirnov
a6a2282c25
rv30: fix extradata size check.
...
It has been checking the number of bits in the offset instead of the
actual offset.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-03 16:38:33 +01:00
Anton Khirnov
feded990e3
mpegvideo: set reference/pict_type on generated reference frames
...
Otherwise the generic code will unref them, which can then result in
last_picture_ptr == current_picture_ptr, which causes deadlocks at least
in rv40.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-03 16:36:43 +01:00
Luca Barbato
4d2bb28931
h264: namespace the decode function
...
Make much easier debugging.
2013-12-27 07:48:13 +01:00
Diego Biurrun
b83d1ee3b4
avutil: Move library version related macros to version.h
...
This is a more sensible place for these macros.
2013-12-26 19:05:22 +01:00
Mason Carter
61ae993957
vc1: Fix intensity compensation performance regression
...
Introduced by 28243b0d35
Intensity compensation is always used once it was encountered, because
v->next_use_ic is never set back to zero.
Reset v->next_use_ic, when resetting v->next_luty/uv.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org >
2013-12-22 18:31:44 +01:00
Guillaume Martres
7398e0516f
hevc: move DSP declarations from hevc.h into hevcdsp.h
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org >
2013-12-22 03:49:11 +01:00
Justin Ruggles
be7c323176
Add a libwebp encoder
2013-12-21 17:01:42 -05:00
Martin Storsjö
d307e408d4
arm: Don't clobber callee saved registers in scalarproduct
...
q4-q7/d8-d15 are supposed to not be clobbered by the callee.
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st >
2013-12-20 20:48:30 +02:00
Mickaël Raulet
5c3fa74b94
hevc: support luma bit depth != chroma bit depth for PCM coding units
...
Signed-off-by: Anton Khirnov <anton@khirnov.net >
2013-12-20 19:39:53 +01:00
Guillaume Martres
78d0b7f36e
hevc: warn when an unknown profile is used
...
Bitstreams conforming to the spec should not use profiles not defined
in it.
Signed-off-by: Anton Khirnov <anton@khirnov.net >
2013-12-20 19:39:38 +01:00
Gildas Cocherel
259cddb137
hevc_ps: fix indentation
...
Signed-off-by: Anton Khirnov <anton@khirnov.net >
2013-12-20 19:39:10 +01:00
Gildas Cocherel
2d18aaa14b
hevc: refactor Profile Tier Level
...
Also store a few PTL flags which were skipped before
Signed-off-by: Anton Khirnov <anton@khirnov.net >
2013-12-20 19:38:59 +01:00
Guillaume Martres
67bbaed5c4
hevc: don't check for errors in PTL code
...
According to the spec, the value of XXX_reserved_zero_44bits should be
ignored, so don't report an error when it's not zero.
Signed-off-by: Anton Khirnov <anton@khirnov.net >
2013-12-20 19:36:44 +01:00
Gildas Cocherel
321cb8b048
hevc: store profile and level in AVCodecContext
...
Signed-off-by: Anton Khirnov <anton@khirnov.net >
2013-12-20 19:36:24 +01:00
Gildas Cocherel
2a41826bea
lavc: add HEVC profiles names
...
Signed-off-by: Anton Khirnov <anton@khirnov.net >
2013-12-20 19:35:27 +01:00
Anton Khirnov
dfc50ac85e
x86: mpegvideo: move denoise_dct asm to mpegvideoenc
...
This function is encoding-only.
Signed-off-by: Diego Biurrun <diego@biurrun.de >
2013-12-20 17:16:11 +01:00
Mason Carter
b254490bda
vc1: arm: Add NEON no_rnd chroma MC
...
Apply David Conrad's old patch to the modern codebase.
http://ffmpeg.org/pipermail/ffmpeg-devel/2009-April/059877.html
Signed-off-by: Martin Storsjö <martin@martin.st >
2013-12-20 14:53:42 +02:00