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
James Almer
26800e3864
vp9/x86: rename ff_avg[48]_sse to ff_avg[48]_mmxext
...
pavgb is an sse integer instruction, so the mmxext flag is enough
Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-18 17:08:25 +01:00
Michael Niedermayer
0117ba5594
avcodec/mpegvideo_enc: fix custom matrixes with jpeg
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-18 06:33:45 +01:00
Michael Niedermayer
19df5dcb47
avcodec/dnxhdenc: check that qmax is within the supported range
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-17 20:58:43 +01:00
Michael Niedermayer
f1caaa1c61
dnxhdenc: fix mb_rc size
...
Fixes out of array access with RC_VARIANCE set to 0
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-17 20:24:36 +01:00
Carl Eugen Hoyos
ee3fc8aa86
Fix libxvid crash on failing initialisation.
...
Fixes ticket #3297 .
2014-01-17 14:52:55 +01:00
James Almer
d2a7314f1e
vp9/x86: add ff_vp9_loop_filter_[vh]_16_16_sse2().
...
Similar gains in performance as the SSSE3 version
Signed-off-by: James Almer <jamrial@gmail.com>
2014-01-17 14:16:38 +01:00
Michael Niedermayer
3ca7085ae2
avcodec: make "bitrate tolerance too small for bitrate" error more verbose
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-17 03:10:42 +01:00
Michael Niedermayer
d0004a1959
avcodec/kgv1dec: fix memleak, reintroduce lost decode_flush() call
...
fixes regression since 80d44190c4d909e9685d04bcde693da3e2441dfd and 1a0370ad94de094a5ac754e790d4ec8d8d0d9ee7
this reverts the buggy changes in these 2 commits
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-17 02:50:50 +01:00
Michael Niedermayer
2fd39642c9
avcodec/huffyuv: fix median prediction for >8bps
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-16 18:33:17 +01:00
Michael Niedermayer
3d87927959
avcodec/huffyuv: add YUVA{420,422,444}P{9,10} support
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-16 17:43:24 +01:00
Michael Niedermayer
ef0282125c
avcodec/huffyuv: add YUV{420,422,444}P{9,10,12,14} support
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-16 17:29:58 +01:00
Michael Niedermayer
b53aab1a58
libavcodec/huffyuv: >8 bit support
...
This adds only yuv420p10, others are trivial to add after this commit
and will be added in a subsequent commit.
Currently the implementation is not optimized, optimizations will be
added later
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-16 16:59:15 +01:00
Michael Niedermayer
6c004e8aad
avcodec/huffyuvenc: init bps from pixel descriptor
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-16 16:24:24 +01:00
Michael Niedermayer
534a89478d
avcodec/huffyuv: add a field that represents the number of symbols
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-16 16:24:16 +01:00
Ronald S. Bultje
8173d1ffc0
vp9/x86: 16x16 iadst_idct, idct_iadst and iadst_iadst (ssse3+avx).
...
Sample timings on ped1080p.webm (of the ssse3 functions):
iadst_idct: 4672 -> 1175 cycles
idct_iadst: 4736 -> 1263 cycles
iadst_iadst: 4924 -> 1438 cycles
Total decoding time changed from 6.565s to 6.413s.
2014-01-16 13:49:31 +01:00
Clément Bœsch
9cc8fa63dd
vp9/x86: simplify a few mc inits.
2014-01-16 07:48:27 +01:00
Michael Niedermayer
1a01dc8343
avcodec/pgssubdec: Use av_fast_padded_malloc() for rle buffer
...
Fixes: use of uninitialized memeory
Fixes: msan_uninit-mem_7fa421d0e222_1765_Girl_With_The_Dragon_Tattoo_2_23_56.mkv
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-15 23:09:22 +01:00
Michael Niedermayer
6391dec82a
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
x86: dsputil: Simplify xvmc deprecation conditional
Conflicts:
libavcodec/x86/dsputil_init.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-15 20:41:08 +01:00
Michael Niedermayer
221dc52d03
Merge commit 'dc4d726bab59f349d366916ba01df16289e5c81f'
...
* commit 'dc4d726bab59f349d366916ba01df16289e5c81f':
build: Add separate hidden config option for the intrax8 code
Conflicts:
libavcodec/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-15 20:05:18 +01:00
Michael Niedermayer
949adce125
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
aarch64: port neon clobber test from arm
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-15 15:49:22 +01:00
Michael Niedermayer
92d07ea4b5
Merge commit 'f896bca03fc63b93851c1c14c9321c20b3cd44a6'
...
* commit 'f896bca03fc63b93851c1c14c9321c20b3cd44a6':
aarch64: h264 (bi)weight NEON optimizations
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-15 15:36:37 +01:00
Michael Niedermayer
bf0470a5be
Merge commit '36e3b1f2fd262028834a9d7b1eb533c1218ee6c2'
...
* commit '36e3b1f2fd262028834a9d7b1eb533c1218ee6c2':
aarch64: h264 loop filter NEON optimizations
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-15 15:27:26 +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
Michael Niedermayer
28207bfafb
Merge commit 'c65d67ef50241886b9749e88fd333c52090f70c7'
...
* commit 'c65d67ef50241886b9749e88fd333c52090f70c7':
aarch64: hpeldsp NEON optimizations
Conflicts:
libavcodec/hpeldsp.c
libavcodec/hpeldsp.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-15 15:20:30 +01:00
Michael Niedermayer
19fc3c0122
Merge commit 'd5dd8c7bf0f0d77c581db3236e0d938f06fd5591'
...
* commit 'd5dd8c7bf0f0d77c581db3236e0d938f06fd5591':
aarch64: h264 qpel NEON optimizations
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-15 15:13:41 +01:00
Michael Niedermayer
fb1c786a9d
Merge commit '8438b3f09f6b225d0886cc385117c38eb44ca0c1'
...
* commit '8438b3f09f6b225d0886cc385117c38eb44ca0c1':
aarch64: h264 idct NEON assembler optimizations
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-15 15:06:47 +01:00
Michael Niedermayer
6f001d87ff
Merge commit '71617884a2a673908bd5c0f73d4f91fdca3da82a'
...
* commit '71617884a2a673908bd5c0f73d4f91fdca3da82a':
aarch64: h264 chroma motion compensation NEON optimizations
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-15 15:00:06 +01:00
Michael Niedermayer
d01f8790d9
Merge commit '1e9265cd8f0821acbeca1db437be1361a3976b85'
...
* commit '1e9265cd8f0821acbeca1db437be1361a3976b85':
dct-test: test ff_simple_idct_neon only on ARM for now
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-15 14:19:29 +01:00
Clément Bœsch
8b4190da93
vp9/x86: add AVX for itxfm and lpf.
...
4412 decicycles in ff_vp9_loop_filter_h_16_16_ssse3, 4193462 runs, 842 skips
3600 decicycles in ff_vp9_loop_filter_h_16_16_avx, 4193621 runs, 683 skips
3010 decicycles in ff_vp9_loop_filter_v_16_16_ssse3, 4193528 runs, 776 skips
2678 decicycles in ff_vp9_loop_filter_v_16_16_avx, 4193742 runs, 562 skips
23025 decicycles in ff_vp9_idct_idct_32x32_add_ssse3, 2096871 runs, 281 skips
19943 decicycles in ff_vp9_idct_idct_32x32_add_avx, 2096815 runs, 337 skips
4675 decicycles in ff_vp9_idct_idct_16x16_add_ssse3, 4194018 runs, 286 skips
3980 decicycles in ff_vp9_idct_idct_16x16_add_avx, 4194022 runs, 282 skips
967 decicycles in ff_vp9_idct_idct_8x8_add_ssse3, 16776972 runs, 244 skips
887 decicycles in ff_vp9_idct_idct_8x8_add_avx, 16777002 runs, 214 skips
2014-01-15 15:54:03 +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
Michael Niedermayer
ab296c7a9f
avcodec/hevc_ps: Override max_dec_pic_buffering when its inconsistent with num_reorder_pics
...
Fixes Ticket3304
Alternatively max_dec_pic_buffering could be removed completely as its not used.
Based on a patch by Jose Santiago <santiago@haivision.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-15 04:45:42 +01:00
James Almer
8bfa5f7fab
webp: fix capitalization of the word Exif
...
Also remove "webp:" from log messages. Using the AVCodecContext is enough.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-15 02:54:36 +01:00
Michael Niedermayer
785dc14654
avcodec/adpcm: fix sample count for stereo SBPRO3
...
Fixes use of uninitialized memory
Fixes: msan_uninit-mem_7f9b9902ed90_7462_new_alaw.voc
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-15 01:30:38 +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
Michael Niedermayer
afbe8c6a84
avcodec/mpegaudiodec_template: decode_frame_mp3on4: conceal errors in decoding instead of discarding data
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-14 21:00:58 +01:00
Michael Niedermayer
2545182c29
avcodec/mpegaudiodec_template/mp3on4: check that all channels have been decoded before returnig a frame
...
Fixes use of uninitialized memory
Fixes: msan_uninit-mem_7f80bf9a259e_5774_id5_1.mp4
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-14 20:56:08 +01:00
Michael Niedermayer
b821def9f5
avcodec/proresdsp: rename CLIP_AND_BIAS to BANANA
...
See: IRC log
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-14 16:33:16 +01:00
Michael Niedermayer
cb613657ee
avcodec/x86/proresdsp_init: x86 prores IDCT is bitexact again
...
reenable it for for bitexact mode
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-14 15:59:00 +01:00