Michael Niedermayer
a66ee3dc87
Merge commit 'aaaf2dc023d31f30eeec874f24b50f44b9295185'
...
* commit 'aaaf2dc023d31f30eeec874f24b50f44b9295185':
h263: Check init_get_bits return value
Conflicts:
libavcodec/h263dec.c
See: d47e14b53a3908e5bad82e22129bbd175b49e89b
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-28 12:09:12 +01:00
Michael Niedermayer
d57a6fe6ab
Merge commit '0749314886390f6ec81d45e0ba424fcb36c945cf'
...
* commit '0749314886390f6ec81d45e0ba424fcb36c945cf':
h263: Return meaningful errors
Conflicts:
libavcodec/h263dec.c
See: 7b62d3415e8e44618cb97775567d453295c4f4d9
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-28 11:54:46 +01:00
Michael Niedermayer
ac3fa95e73
Merge commit '94603feb1b3ad01a821a1a1cef1570b13f471821'
...
* commit '94603feb1b3ad01a821a1a1cef1570b13f471821':
h264_ps: when parsing a VUI fails, only abort when explode is set
Merge only for metadata, ignoring invalid data can put the context
into an invalid state and can possibly be used for remote code
execution exploits.
Also we support all non standard VUIs that have been reported so
ignoring parsing failure makes no sense for us unless theres
some issue that has not been reported
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-28 11:08:58 +01:00
Mickaël Raulet
a21839149c
hevc: add profile idc warning
...
(cherry picked from commit 15f7a481fd19529b13631bfff5b3d65bfe5729d5)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-28 10:37:11 +01:00
Anton Khirnov
cb148e56dc
hevc: refactor pic_arrays and set_sps
...
(cherry picked from commit a6686c6d83b50c0962269f2c487f4f0c57e0df79)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-28 10:37:10 +01:00
Anton Khirnov
4db81f0817
hevc: add irap checks
...
(cherry picked from commit 3d3bbe35541a308937d0fe72b20a1c29d1c4100d)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-28 10:37:09 +01:00
Michael Niedermayer
8930637819
Merge commit 'fc06ee6ee377cc3b512dff8f02057e26311bc4da'
...
* commit 'fc06ee6ee377cc3b512dff8f02057e26311bc4da':
mmvideo: fix uninitialized variable use in mm_decode_intra
Conflicts:
libavcodec/mmvideo.c
See: c2e3b564b32d596f5a66d47409f9e07a067a3084
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-28 10:12:13 +01:00
Anton Khirnov
a1c5cc429d
lavc: don't set AVFrame.pts to random numbers in decoders.
2013-10-28 09:28:29 +01:00
Martin Storsjö
f2521563d1
g722dec: Change bits_per_codeword to the right option type
...
This isn't a set of flags but just a plain integer in the range
6-8.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-10-28 09:53:48 +02:00
Anton Khirnov
97de206b44
lavc: disable CRC checking by default
2013-10-28 07:22:43 +01:00
Anton Khirnov
23a211cbba
lavc: change all decoders to behave consistently with AV_EF_CRCCHECK.
...
Just crccheck prints a warning, crccheck+explode returns an error.
Also document this behavior.
2013-10-28 07:22:18 +01:00
Anton Khirnov
f354f30836
error resilience: check error_concealment, not err_recognition.
...
err_recognition is supposed to trigger detecting and reporting errors,
not trying to fix them.
2013-10-28 07:22:11 +01:00
Michael Niedermayer
aaaf2dc023
h263: Check init_get_bits return value
...
And use init_get_bits8 to check for integer overflows while at it.
CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-10-28 00:04:49 +01:00
Luca Barbato
0749314886
h263: Return meaningful errors
2013-10-28 00:04:49 +01:00
Mickaël Raulet
0ddd3c5ba6
hevc: add decode hrd
...
(cherry picked from commit ab4061dff796b1dd2bc884101226aab48c2c875e)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 23:50:35 +01:00
Anton Khirnov
2f77894ccc
hevc: better mt implementation
...
Signed-off-by: Mickaël Raulet <mraulet@insa-rennes.fr>
(cherry picked from commit 93afb8c519deca85b3c97804927de5b016dd32d1)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 23:49:50 +01:00
Mickaël Raulet
c1882e801d
hevc: clean up mvs(cherry picked from commit 955317c09b877a513d3fcfcd1615909b2f4f651c)
...
Decreases the difference to Anton Khirnovs patch v5
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 23:48:43 +01:00
Mickaël Raulet
2707cca78f
hevc: cosmetic change(cherry picked from commit 3b57513b3f39c04337801fb9d159c7ca8dfa9deb)
...
Decreases the difference to Anton Khirnovs patch v5
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 23:48:11 +01:00
Mickaël Raulet
3106cbd321
hevc: more cosmetic(cherry picked from commit 9697abe41daa234602915f85bf6b1c0ca0252cff)
...
Decreases the difference to Anton Khirnovs patch v5
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 23:46:54 +01:00
Mickaël Raulet
3c3ece24ea
hevc : cosmetic changes(cherry picked from commit 7308c0ccf13f18cebe4851e6dcd6b5c0b09be1dd)
...
Decreases the difference to Anton Khirnovs patch v5
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 23:45:34 +01:00
Marton Balint
dbe6f9f2c2
lavc: add support for CODEC_CAP_DELAY in subtitles
...
This patch adds CODEC_CAP_DELAY support to avcodec_decode_subtitle2.
For DVB teletext decoding, a single teletext packet can contain multiple
teletext pages. In order to support that, the teletext decoder may buffer
some pages.
Signed-off-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 23:12:41 +01:00
Michael Niedermayer
758b6d39f6
avcodec/hevc: calculate checksum only if AV_EF_EXPLODE is set
...
This avoids a slowdown with the default of enabled CRC checks
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 22:31:04 +01:00
Michael Niedermayer
69d39cb90c
Revert "avcodec/options_table: disable CRC checking by default"
...
This reverts commit c7027ce9eac04fb20bd85fa37dbf24856c080c45.
It appears there is no complete consensus on this currently.
2013-10-27 22:30:31 +01:00
Michael Niedermayer
e797bd9dc7
Revert "avcodec/options_table: set err_detect to careful by default"
...
This reverts commit b1348eb68b432041b2557b9073590cf0fa60ff14.
2013-10-27 22:30:00 +01:00
Anton Khirnov
94603feb1b
h264_ps: when parsing a VUI fails, only abort when explode is set
...
A VUI doesn't contain anything strictly necessary for decoding.
Apparently there are many samples with truncated VUIs in the wild, this
commit should allow decoding them.
2013-10-27 21:39:01 +01:00
Vittorio Giovara
fc06ee6ee3
mmvideo: fix uninitialized variable use in mm_decode_intra
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-10-27 21:32:11 +01:00
Michael Niedermayer
b1348eb68b
avcodec/options_table: set err_detect to careful by default
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 21:18:50 +01:00
Anton Khirnov
c7027ce9ea
avcodec/options_table: disable CRC checking by default
...
3 runs each of fate-suite/hevc-conformance/ENTP_C_LG_3.bit
with crc flag
1841819858 decicycles in frame decode, 32 runs, 0 skips
1833937180 decicycles in frame decode, 32 runs, 0 skips
1843283884 decicycles in frame decode, 32 runs, 0 skips
without crc flag
1703897301 decicycles in frame decode, 32 runs, 0 skips
1695031879 decicycles in frame decode, 32 runs, 0 skips
1697524383 decicycles in frame decode, 32 runs, 0 skips
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 21:18:50 +01:00
Michael Niedermayer
2886d6cbb7
avcodec/takdec: also do crc check when er compliant is set
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 21:18:40 +01:00
Michael Niedermayer
fc7be7ddf3
avcodec/avcodec.h: Add documentation for the AV_EF_* defifines
...
The documentation is copied from the AVOption texts
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 20:05:36 +01:00
Michael Niedermayer
2ef1e62c8d
correct the AVOption documentation for AV_EF_CAREFUL
...
The flag was and is intended to be a sane default and thus does not enable
time consuming checks. This also matches how the flag is used in decoders and
demuxers.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 20:03:08 +01:00
Ronald S. Bultje
efc5a54cab
vp9: skip itxfm_add if the whole block has no coefficients.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 15:02:48 +01:00
Ronald S. Bultje
960490c0b2
avcodec/x86/videodsp: Small speedups in ff_emulated_edge_mc x86 SIMD.
...
Don't use word-size multiplications if size == 2, and if we're using
SIMD instructions (size >= 8), complete leftover 4byte sets using movd,
not mov. Both of these changes lead to minor speedups.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 15:02:48 +01:00
Ronald S. Bultje
cd86eb265f
avcodec/x86/videodsp: fix a bug in a %if statement where we used '%%' instead of '&&'.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 15:02:48 +01:00
Michael Niedermayer
2c7c2a53b9
vcodec/vc1dec: remove dead code
...
Fixes CID732196
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 13:34:35 +01:00
Michael Niedermayer
7eda2e524b
avcodec/vc1_parser: check ff_vc1_parse_frame_header*() return value
...
Fixed CID739860
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 13:28:08 +01:00
Michael Niedermayer
46143d2555
avcodec/tiff: factorize offset init code
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 13:10:38 +01:00
Michael Niedermayer
d5ad4e4a2f
avcodec/tiff: remove TIFF_LONG special case
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 13:10:38 +01:00
Michael Niedermayer
0aba920d61
avcodec/tiff: Fix use of uninitialized off variable
...
Fixes CID1108608
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 13:10:38 +01:00
Michael Niedermayer
09ef98f1ae
avcodec/hevcpred_template: Fix integer overflows
...
signed integer overflow is undefined in C
Fixes the following gcc warnings:
In file included from libavcodec/hevcpred.c:27:0:
libavcodec/hevcpred_template.c: In function ‘intra_pred_8’:
libavcodec/hevcpred_template.c:302:9: warning: assuming signed overflow does not occur when assuming that (X - c) > X is always false [-Wstrict-overflow]
In file included from libavcodec/hevcpred.c:31:0:
libavcodec/hevcpred_template.c: In function ‘intra_pred_9’:
libavcodec/hevcpred_template.c:302:9: warning: assuming signed overflow does not occur when assuming that (X - c) > X is always false [-Wstrict-overflow]
In file included from libavcodec/hevcpred.c:35:0:
libavcodec/hevcpred_template.c: In function ‘intra_pred_10’:
libavcodec/hevcpred_template.c:302:9: warning: assuming signed overflow does not occur when assuming that (X - c) > X is always false [-Wstrict-overflow]
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 11:54:53 +01:00
Michael Niedermayer
10386710fd
Merge commit 'afa93d198aaf2cc661c4df6d4095cd030265d30a'
...
* commit 'afa93d198aaf2cc661c4df6d4095cd030265d30a':
hevc_parser: Set pict_type, key_frame and output_picture_number.
hevc: Search start code in decode_nal_units().
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 11:29:37 +01:00
Yusuke Nakamura
afa93d198a
hevc_parser: Set pict_type, key_frame and output_picture_number.
...
Conflicts:
libavcodec/hevc.c
2013-10-27 11:07:43 +01:00
Yusuke Nakamura
f7f8801839
hevc: Search start code in decode_nal_units().
...
User may cut off a weird position and send a packet from there.
This avoids returning as invalid data immediately.
2013-10-27 10:43:14 +01:00
Michael Niedermayer
3b56f665b1
avcodec/flacdec: also do crc check when er compliant is set
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 09:51:21 +01:00
Anton Khirnov
346e09638c
avcodec/error_resilience check error_concealment, not err_recognition.
...
err_recognition is supposed to trigger detecting and reporting errors,
not trying to fix them.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 09:51:21 +01:00
Michael Niedermayer
c78a416985
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
fft-test: add a missing #include
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-26 21:59:24 +02:00
Michael Niedermayer
e0b2bdd37a
avcodec/h264_parser: heuristically detect non marked keyframes
...
Fixes Ticket3083
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-26 15:56:11 +02:00
Michael Niedermayer
41efb8d9a7
avcodec/x86/cabac: include get_cabac_bypass_sign_x86() under #if !BROKEN_COMPILER
...
this might fix Ticket2999 as well as some fate clients
untested as the original patch submitter no longer has the environment to test
this should be reverted if it does not fix the issues
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-26 15:06:55 +02:00
Anton Khirnov
834259528b
fft-test: add a missing #include
...
stdio.h needed for printf since 7177df90a043bd59e172843fc7cb9e767080ea12
2013-10-26 09:11:22 +02:00
Michael Niedermayer
780669ef7c
avcodec/jpeg2000dec: non zero image offsets are not supported
...
Fixes out of array accesses
Fixes Ticket3080
Found-by: ami_stuff
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-26 02:19:13 +02:00