Tim Walker
ade75fb811
(e)ac3: clip surround mix level indexes.
...
Values 0-2 are reserved, 3 (-1.5dB) should be used instead.
2014-01-19 19:12:52 +01:00
Tim Walker
c229f571fd
(e)ac3: parse and store the Lt/Rt and LFE mix levels.
2014-01-19 19:12:42 +01:00
Tim Walker
1f604f96ea
ac3: set default matrix encoding modes in parse_frame_header.
...
Deduplicates some code.
2014-01-19 19:12:33 +01:00
Anton Khirnov
8b2e5e42bb
h264: check that an IDR NAL only contains I slices
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-18 20:53:31 +01:00
Anton Khirnov
9ecabd7892
h264: reset num_reorder_frames if it is invalid
...
An invalid VUI is not considered a fatal error, so the SPS containing it
may still be used. Leaving an invalid value of num_reorder_frames there
can result in writing over the bounds of H264Context.delayed_pic.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-18 20:53:06 +01:00
Anton Khirnov
0652e024c6
h264: reset ref count if decoding the slice header fails
...
Otherwise the ER code might try to use some already freed references.
Fixes possible access to freed memory.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-18 20:51:04 +01:00
Anton Khirnov
98cc9efc5f
h264: prevent two matching fields from being both a short/long ref combination
...
Fixes possible access to freed memory.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-18 20:42:39 +01:00
Anton Khirnov
00dbff4c3e
h264: do not call field_end if we do not have a current picture
...
Fixes invalid reads.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-18 20:42:21 +01:00
Anton Khirnov
7f0e81db3c
h264: limit allowed pred modes in ff_h264_check_intra_pred_mode() to 3
...
Higher modes are not allowed for 16x16/chroma, which is what this
function is used for. Otherwise this function would return 0 (vertical
prediction) for invalid higher modes, which could result in invalid
reads.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-18 20:41:59 +01:00
Anton Khirnov
d1b3fabe69
h264: reset first_field if frame_start() fails for missing refs
...
In this case we may not have a current frame, while first_field being
set implies we do.
Fixes invalid reads.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2014-01-18 20:41:24 +01:00
Diego Biurrun
aab40bbfd5
x86: dsputil: Simplify xvmc deprecation conditional
2014-01-15 15:23:46 +01:00
Diego Biurrun
dc4d726bab
build: Add separate hidden config option for the intrax8 code
...
This allows for slightly cleaner dependency specification.
2014-01-15 15:23:46 +01:00
Janne Grunau
fe96769bed
aarch64: port neon clobber test from arm
2014-01-15 12:31:07 +01:00
Janne Grunau
f896bca03f
aarch64: h264 (bi)weight NEON optimizations
...
Ported from ARMv7 NEON.
2014-01-15 12:31:07 +01:00
Janne Grunau
36e3b1f2fd
aarch64: h264 loop filter NEON optimizations
...
Ported from ARMv7 NEON.
2014-01-15 12:31:04 +01:00
Janne Grunau
c65d67ef50
aarch64: hpeldsp NEON optimizations
...
Ported from ARMv7 NEON.
2014-01-15 12:30:24 +01:00
Janne Grunau
d5dd8c7bf0
aarch64: h264 qpel NEON optimizations
...
Ported from ARMv7 NEON.
2014-01-15 12:17:49 +01:00
Janne Grunau
8438b3f09f
aarch64: h264 idct NEON assembler optimizations
...
Ported from ARMv7 NEON.
2014-01-15 12:13:41 +01:00
Janne Grunau
71617884a2
aarch64: h264 chroma motion compensation NEON optimizations
...
Since RV40 and VC-1 use almost the same algorithm so optimizations for
those two decoders are easy to do and included.
2014-01-15 12:07:18 +01:00
Janne Grunau
1e9265cd8f
dct-test: test ff_simple_idct_neon only on ARM for now
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2014-01-15 11:58:39 +01:00
Janne Grunau
8b4119187b
cabac: remove leftovers from the cabac encoder
...
The cabac encoder was only used by the removed cabac test.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2014-01-14 22:19:03 +01:00
Diego Biurrun
46bacb5cc6
x86: Consistently use cpu flag detection macros in places that still miss it
2014-01-14 00:04:58 +01:00
Diego Biurrun
7151c5d04a
arm: Use full filenames as multiple inclusion guards
2014-01-14 00:04:52 +01:00
Tim Walker
49b9badcaa
vc1: Enable the interlaced B-frame codepath.
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-01-13 10:23:01 +01:00
Michael Niedermayer
6d98959c8a
vc1: Add avg_no_rnd_vc1_chroma_mc4_c()
...
Needed for proper interlaced support.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-01-13 10:22:58 +01:00
Luca Barbato
c798a6fedc
vc1: Factorize out chroma MC
2014-01-13 10:21:53 +01:00
Luca Barbato
a1f5164814
vc1dsp: K&R formatting cosmetics
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-01-12 18:33:25 +01:00
Martin Storsjö
44a0a98f92
arm: Add an option for making sure NEON registers aren't clobbered
...
This is pretty much based on the same test for XMM registers.
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-01-11 00:03:00 +02:00
Maxim Polijakowski
e6f0bb6527
ATRAC3+ decoder
...
Cleanup by Diego Biurrun.
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2014-01-09 19:33:07 +01:00
Diego Biurrun
4c642d8d98
x86: hpeldsp: Add missing av_cold attribute to init function
2014-01-09 15:09:07 +01:00
Diego Biurrun
b0be1ae792
x86: avcodec: Add a bunch of missing #includes for av_cold
2014-01-09 15:09:07 +01:00
Diego Biurrun
4b48201d4d
ac3tab.h: #include the correct headers
2014-01-09 15:09:07 +01:00
Anton Khirnov
d48132b7de
mjpegdec: apply flipping after decoding, not before
...
This is simpler and removes a silly restriction on edges being present.
2014-01-09 09:56:51 +01:00
Guillaume Martres
e588615d93
hevc: fix decoding of one PU wide files
...
For those the block size may be larger than the source linesize (if the
edges are not allocated).
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-01-09 09:46:13 +01:00
Anton Khirnov
ca96e33716
vp9: drop support for real (non-emulated) edges
...
They are not measurably faster on x86, they might be somewhat faster on
other platforms due to missing emu edge SIMD, but the gain is not large
enough to justify the added complexity.
2014-01-09 09:43:59 +01:00
Anton Khirnov
ef8c93e2f1
vp8: drop support for real (non-emulated) edges
...
They are not measurably faster on x86, they might be somewhat faster on
other platforms due to missing emu edge SIMD, but the gain is not large
enough to justify the added complexity.
2014-01-09 09:41:24 +01:00
Anton Khirnov
ebfe622bb1
mpegvideo: drop support for real (non-emulated) edges
...
Several decoders disable those anyway and they are not measurably faster
on x86. They might be somewhat faster on other platforms due to missing
emu edge SIMD, but the gain is not large enough (and those decoders
relevant enough) to justify the added complexity.
2014-01-09 09:41:19 +01:00
Martin Storsjö
952d3187d8
arm: Add a missing # as prefix for an immediate constant
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-01-07 19:30:13 +02:00
Martin Storsjö
5dae487235
arm: Allow overriding the alignment set in the function macro
...
The function macro always sets .align 2 before declaring the
function label (since 5c5e1ea3
) and always sets the section to
.text (since 278caa6a
).
The .align 5 before certain functions, added in fc252eba
, were added
before .text and .align were added to the function macro and thus
became useless/unused when the function macro got them.
This restores the original intention, to align the loop entry
points.
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-01-07 19:29:56 +02:00
Martin Storsjö
b7b932f5e3
arm: Remove a leftover define for the pld instruction
...
This file no longer uses the pld instruction at all, all such uses
have been split into hpeldsp_arm.S.
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-01-07 19:29:42 +02:00
Martin Storsjö
67bb3a4e28
arm: cosmetics: Reindent the h264dsp neon init function
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-01-07 19:29:31 +02:00
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