Commit graph

36698 commits

Author SHA1 Message Date
Andreas Cadhalpun
ed412d2850 tiff: fix overflows when calling av_reduce
The arguments of av_reduce are signed, so the cast to uint64_t is misleading.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2016-12-15 01:30:57 +01:00
Michael Niedermayer
457e933919 Bump for psd demuxer and decoder
Found-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-14 11:43:33 +01:00
Martin Vignali
90af962911 libavcodec : add decoder for Photoshop PSD image files
Decode the Image Data Section (which contains merged pictures).
Support RGB/A and Grayscale/A in 8bits and 16 bits per channel.
Support uncompress and rle decompression in Image Data Section.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-14 03:21:27 +01:00
Alex Converse
bf15981b12 libvpxenc: Don't spam level errors for VP8 encodes
Fixes "Failed to set VP9E_GET_LEVEL codec control: Codec does not
implement requested capability" log messages on VP8 encodes.
2016-12-13 10:43:57 -08:00
Zhou Xiaoyong
d84e635d06 avcodec/mips: version 1 of wmv2dsp optimizations for loongson mmi
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-13 03:47:04 +01:00
Zhou Xiaoyong
c5c6e30781 avcodec/mips: version 1 of vp8dsp optimizations for loongson mmi
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-13 03:47:04 +01:00
Timo Rothenpieler
00223132e9 avcodec/cuvid: fix compilation with msvc11 2016-12-12 13:09:55 +01:00
Michael Niedermayer
2f07830e69 avcodec: Add max_pixels options
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-10 22:24:10 +01:00
Derek Buitenhuis
51c673a0d7 libavcodec/tests: Add avpacket test to .gitignore
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-12-10 15:51:01 +00:00
Andreas Cadhalpun
c085f1a7e1 opus_parser: make ParseContext the first element in OpusParseContext
ff_parse_close expects priv_data to be the ParseContext directly and
thus doesn't work if it isn't at the beginning of OpusParseContext.

Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2016-12-10 13:36:57 +01:00
Andreas Cadhalpun
7d3baebe40 opus_parser: fix leaking channel_maps on error
Make ff_opus_parse_extradata free allocated memory on error instead of
expecting callers to free it in that case.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2016-12-10 13:36:12 +01:00
Michael Niedermayer
5b73ba9887 avcodec/mpeg12dec: Add FF_CODEC_CAP_SKIP_FRAME_FILL_PARAM
This decreases the amount of computations and memory needed for analysing mpeg1/2 streams

the properties update is moved from code that is skiped if skip_frame is set
to code that is not skiped so the change doesnt loose that
from being executed

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-10 04:58:52 +01:00
Michael Niedermayer
8258e36385 avcodec/mpeg4videodec: Fix undefined shifts in mpeg4_decode_sprite_trajectory()
Fixes: part of 670190.ogg

Found-by: Matt Wolenetz <wolenetz@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-09 17:44:54 +01:00
Derek Buitenhuis
4413e950b2 h264_slice: Wait for refs to be available before we use them in error concealment
This could happen when there was a frame number gap and frame threading was used.

This fixes #5458.

Debugging-by: Ronald S. Bultje <rsbultje@gmail.com>
Debugging-by: Justin Ruggles <justin.ruggles@gmail.com>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-12-09 15:00:29 +00:00
Michael Niedermayer
38a7834bbb avcodec/ffv1enc: Allocate smaller packet if the worst case size cannot be allocated
We are checking during encoding if there is enough space as version 4 needs that
check.

Fixes Ticket6005

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-09 01:59:40 +01:00
Michael Niedermayer
cff1c0edaa avcodec/ffv1enc: Fix size of first slice
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-09 01:59:30 +01:00
Alex Converse
51a055b206 aacdec: Rename elem_type_prev to che_prev_type.
It describes the type of the previous che element (SCE, CPE, CCE, or
LFE) and does not reflect non-che elements.
2016-12-08 13:31:50 -08:00
Alex Converse
d379592687 aacdec: Allow SBR after DRC.
Fixes https://www2.iis.fraunhofer.de/AAC/7.1auditionOutLeader_v2_rtb.mp4

Reported-by: rcombs on IRC
2016-12-08 13:31:50 -08:00
Martin Storsjö
da5c8284c0 aarch64: h264idct: Use the offset parameter to movrel
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit 6a62795d40)
Cherry pick Suggested-by: Martin Storsjö

This should fix the build failure on macosx

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-08 18:11:07 +01:00
Michael Niedermayer
3ab1311aba avcodec/golomb: Consume invalid data in get_ur_golomb_jpegls()
Fixes slow loops on fuzzed data
Fixes: 245/fuzz-3-ffmpeg_AUDIO_AV_CODEC_ID_FLAC_fuzzer

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-08 02:47:47 +01:00
James Darnley
acdd2d805d avcodec/h264: resolve assert being triggered when stack is not aligned
32-bit msvc.
2016-12-07 22:32:19 +01:00
Vittorio Giovara
e7a6f8c972 lavc: Add spherical packet side data API
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-12-07 14:40:06 -05:00
Michael Niedermayer
c188f358aa avcodec/wavpack: Treat the first block coding too many channels as an error
Fixes memleak
Fixes: 236/8aeebc9ca49b91bf71c114dcefac56c154a3a563

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-07 13:16:32 +01:00
James Darnley
728651df06 avcodec/h264: mmx2, sse2, avx 10-bit 4:2:2 h chroma deblock/loop filter
Yorkfield:
 - mmx2: 2.53x (504 vs. 199 cycles)
 - sse2: 3.83x (504 vs. 131 cycles)

Nehalem:
 - mmx2: 2.42x (365 vs. 151 cycles)
 - sse2: 3.56x (365 vs. 103 cycles)

Skylake:
 - mmx2: 1.81x (308 vs. 170 cycles)
 - sse2: 2.84x (308 vs. 108 cycles)
 - avx:  2.93x (308 vs. 105 cycles)
2016-12-07 00:29:13 +01:00
James Darnley
add21d0bb3 avcodec/h264: mmx2, sse2, avx 10-bit h chroma deblock/loop filter
Yorkfield:
 - mmx2: 2.45x (279 vs. 114 cycles)
 - sse2: 3.36x (279 vs.  83 cycles)

Nehalem:
 - mmx2: 2.10x (192 vs.  92 cycles)
 - sse2: 2.84x (192 vs.  68 cycles)

Skylake:
 - mmx2: 1.75x (170 vs.  97 cycles)
 - sse2: 2.47x (170 vs.  69 cycles)
 - avx:  2.47x (170 vs.  69 cycles)
2016-12-07 00:29:13 +01:00
James Darnley
58ca2ef62e whitespace changes after last commit 2016-12-07 00:29:13 +01:00
James Darnley
f33714a694 avcodec/h264: clean up and expand x86 function definitions 2016-12-07 00:29:13 +01:00
Timothy Gu
b6f80b16d1 qsvdec: Fix memory leak
Fixes CID1396851.
2016-12-06 13:21:08 -08:00
Timothy Gu
16a75304fe omx: Fix OOM check
Also use av_mallocz_array().

Fixes CID1396839.
2016-12-06 13:20:55 -08:00
Thomas Turner
da3c69a5a9 Added test for libavcodec/avpacket.c
Signed-off-by: Thomas Turner <thomastdt@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-06 17:12:38 +01:00
Mathieu Velten
49e8e5fc56 avcodec/vaapi-vp9: add support for profile 2 (bpp > 8)
Signed-off-by: Mark Thompson <sw@jkqxz.net>
2016-12-05 22:12:34 +00:00
Mathieu Velten
b1f630f1a6 avcodec/vp9: move bpp to the shared context for use in hwaccel
Signed-off-by: Mark Thompson <sw@jkqxz.net>
2016-12-05 22:12:26 +00:00
Andreas Cadhalpun
46e75617d9 truemotion1: fix leaking frame on init failure
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2016-12-05 23:04:35 +01:00
Mark Thompson
51020adcec vaapi_encode: Write sequence header as extradata
Only works if packed headers are supported, where we can know the
output before generating the first frame.

(cherry picked from commit 0cf86fabfa)
2016-12-05 21:04:00 +00:00
Michael Niedermayer
1f5630af51 avcodec/flacdec: Fix undefined shift in decode_subframe()
Fixes undefined behavior
Fixes: 639961-media

Found-by: Matt Wolenetz <wolenetz@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-04 00:12:06 +01:00
Michael Niedermayer
c72fa43234 avcodec/get_bits: Fix get_sbits_long(0)
Fixes undefined behavior
Fixes: 640889-media

Found-by: Matt Wolenetz <wolenetz@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-03 23:45:43 +01:00
Michael Niedermayer
6567c59c49 avcodec/flac: forward errors from ff_flac_parse_streaminfo()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-03 23:39:11 +01:00
Michael Niedermayer
020d53ebdb avcodec/flac: Check bps in ff_flac_parse_streaminfo() 2016-12-03 23:37:27 +01:00
Michael Niedermayer
83a75bf6c3 avcodec/flacdec: Fix signed integer overflow in decode_subframe_fixed()
Fixes undefined behavior
Fixes: 640912-media

Found-by: Matt Wolenetz <wolenetz@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-03 17:26:39 +01:00
Michael Niedermayer
acc163c6ab avcodec/flacdsp_template: Fix undefined shift in flac_decorrelate_indep_c
Fixes: left shift of negative value
Fixes: 668346-media

Found-by: Matt Wolenetz <wolenetz@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-12-03 17:25:40 +01:00
Carl Eugen Hoyos
a8cb567e55 lavc: Remove CR/LF from avpriv_request_sample() calls. 2016-12-03 15:40:26 +01:00
Vittorio Giovara
25fcbf7a84 hevc: Support extradata changes
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-12-02 15:04:24 -05:00
Vittorio Giovara
46fae40d25 hevc: Allow parsing external extradata buffers 2016-12-02 15:03:24 -05:00
Philip Langdale
4e6d1c1f4e avcodec/vdpau_hevc: Fix potential out-of-bounds write
The maximum number of references is 16, so the index value cannot
exceed 15.

Fixes Coverity CID 1348139, 1348140, 1348141
2016-11-30 16:14:39 -08:00
Philip Langdale
5512dbe37f avcodec/crystalhd: Handle errors from av_image_get_linesize
This function can return an error in certain situations.

Fixes Coverity CID 703707.
2016-11-30 16:14:39 -08:00
James Darnley
13d71c28cc avcodec/h264: sse2 and avx 4:2:2 idct add8 10-bit functions
Yorkfield:
 - sse2:
   - complex: 4.13x faster (1514 vs. 367 cycles)
   - simple:  4.38x faster (1836 vs. 419 cycles)

Skylake:
 - sse2:
   - complex: 3.61x faster ( 936 vs. 260 cycles)
   - simple:  3.97x faster (1126 vs. 284 cycles)
 - avx (versus sse2):
   - complex: 1.07x faster (260 vs. 244 cycles)
   - simple:  1.03x faster (284 vs. 274 cycles)
2016-11-30 22:58:28 +01:00
James Darnley
1dae7ffa0b avcodec/h264: mmx 4:2:2 idct add8 function
2.87 times faster (1830 vs. 638 cycles)
2016-11-30 22:58:27 +01:00
James Darnley
815ea8c6cc avcodec/h264: mmxext 4:2:2 chroma intra deblock/loop filter
2.1 times faster (401 vs. 194 cycles)
2016-11-30 22:58:27 +01:00
Timo Rothenpieler
c2f3af57a5 avcodec/nvenc: mark intentional fall through 2016-11-30 12:36:23 +01:00
Miroslav Slugeň
f2dd6aee80 avcodec/nvenc: always reduce DAR width and height
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2016-11-30 12:36:23 +01:00