aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* libavfilter/af_biquads: add shorter option for width_typePaul B Mahol2017-06-182-10/+18
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avformat/rmenc: do not access AVIO write buffer directlyMarton Balint2017-06-181-11/+8
| | | | | Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Marton Balint <cus@passwd.hu>
* Cleanly exit at the end of an Interplay MVEHein-Pieter van Braam2017-06-181-0/+2
| | | | | | Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Hein-Pieter van Braam <hp@tmm.cx> Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec/htmlsubtitles: Factor open brace handling into its own functionMichael Niedermayer2017-06-181-18/+26
| | | | | Suggested-by: wm4 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/htmlsubtitles: Replace very slow redundant sscanf() calls by cleaner ↵Michael Niedermayer2017-06-181-5/+15
| | | | | | | | | | | and faster code This reduces the worst case from O(n²) to O(n) time Fixes Timeout Fixes: 2127/clusterfuzz-testcase-minimized-6595787859427328 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/takdec: Fixes: integer overflow in AV_SAMPLE_FMT_U8P outputMichael Niedermayer2017-06-181-1/+1
| | | | | | | | Fixes: runtime error: signed integer overflow: 2147483543 + 128 cannot be represented in type 'int' Fixes: 2234/clusterfuzz-testcase-minimized-6266896041115648 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/iff: Cleanup on init failureMichael Niedermayer2017-06-181-0/+1
| | | | | | | | Fixes: memleak Fixes: 2272/clusterfuzz-testcase-minimized-5059103858622464 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* libavformat/file: return AVERROR_EOF on EOFDaniel Kucera2017-06-171-0/+2
| | | | | | Signed-off-by: Daniel Kucera <daniel.kucera@gmail.com> Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* libavformat/subfile: return AVERROR_EOF on EOFDaniel Kucera2017-06-171-1/+1
| | | | | | Signed-off-by: Daniel Kucera <daniel.kucera@gmail.com> Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/jpeg2000dsp: Reorder operations in ict_int() to avoid 2 integer ↵Michael Niedermayer2017-06-171-2/+2
| | | | | | | | | | overflows Fixes: runtime error: signed integer overflow: 58065 * 51981 cannot be represented in type 'int' Fixes: 2271/clusterfuzz-testcase-minimized-5778297776504832 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/hevcpred_template: Fix left shift of negative valueMichael Niedermayer2017-06-171-1/+1
| | | | | | | | Fixes: runtime error: left shift of negative value -1 Fixes: 2250/clusterfuzz-testcase-minimized-5693382112313344 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/libssh: check the user provided a password before trying to use itJames Almer2017-06-171-1/+1
| | | | | | | Fixes ticket #6413 Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec/hevcdec: Fix signed integer overflow in decode_lt_rps()Michael Niedermayer2017-06-171-2/+6
| | | | | | | | Fixes: runtime error: signed integer overflow: 2147483647 + 6 cannot be represented in type 'int' Fixes: 2263/clusterfuzz-testcase-minimized-4800359627227136 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/gdv: Fix undefined shiftMichael Niedermayer2017-06-161-1/+1
| | | | | | | | Fixes: runtime error: left shift of 255 by 24 places cannot be represented in type 'int' Fixes: 2249/clusterfuzz-testcase-minimized-5388542379294720 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/jpeg2000dec: Check nonzerobits more completelyMichael Niedermayer2017-06-161-2/+2
| | | | | | | | Fixes: runtime error: shift exponent 36 is too large for 32-bit type 'int' Fixes: 2239/clusterfuzz-testcase-minimized-5639766592716800 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/wavpack: Change wp_log2() to unsignedMichael Niedermayer2017-06-161-1/+1
| | | | | | | | Fixes: runtime error: signed integer overflow: 2143315325 + 4186162 cannot be represented in type 'int' Fixes: 2134/clusterfuzz-testcase-minimized-4619258405322752 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/shorten: Sanity check maxnlpcMichael Niedermayer2017-06-161-0/+4
| | | | | | | | Fixes OOM Fixes: 2131/clusterfuzz-testcase-minimized-4718045157130240 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* configure: use -x instead of -wN ..@ to strip assembly filesRostislav Pehlivanov2017-06-161-2/+1
| | | | | | | | Reduces the amount of debugging information of external asm from uselessly verbose to informative enough. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com> Reviewed-by: James Darnley <james.darnley@gmail.com>
* avcodec/aacps: move checks for valid length outside the stereo_interpolate ↵James Almer2017-06-152-9/+4
| | | | | | dsp function Signed-off-by: James Almer <jamrial@gmail.com>
* x86/vorbisdsp: optimize ff_vorbis_inverse_coupling_sseJames Almer2017-06-151-8/+11
| | | | About 7% faster.
* avcodec/parser: assert that there is a past buffer if theres a reference ↵Michael Niedermayer2017-06-161-0/+2
| | | | | | into the past Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/truemotion2: Move skip computation after checksMichael Niedermayer2017-06-161-2/+2
| | | | | | | | Fixes: runtime error: signed integer overflow: 630067357 * 4 cannot be represented in type 'int' Fixes: 2233/clusterfuzz-testcase-minimized-5943031318446080 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/jpeg2000: Fixes integer overflow in ff_jpeg2000_ceildivpow2()Michael Niedermayer2017-06-161-1/+1
| | | | | | | | Fixes: runtime error: negation of -2147483648 cannot be represented in type 'int'; cast to an unsigned type to negate this value to itself Fixes: 2231/clusterfuzz-testcase-minimized-4565181982048256 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/dnxhd_parser: Do not return invalid value from ↵Michael Niedermayer2017-06-161-5/+7
| | | | | | | | | | dnxhd_find_frame_end() on error Fixes: Null pointer dereference Fixes: CVE-2017-9608 Found-by: Yihan Lian Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* vc2enc: decrease default strictness levelRostislav Pehlivanov2017-06-151-3/+3
| | | | | | Given how incredibly limited the official specifications are (limiting all use to only the most common broadcasting formats), permit all supported inputs by default. This makes the encoder more useful.
* vorbisenc: Stop tracking number of samples per frameTyler Jones2017-06-151-17/+16
| | | | | | | | | Each frame is now padded with 0 values if not enough samples are present, and all frames are guaranteed to have exactly 1 << (venc->log2_blocksize[1] - 1) samples. Signed-off-by: Tyler Jones <tdjones879@gmail.com> Reviewed-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* vorbisenc: Apply and output correct length window and mdctTyler Jones2017-06-151-11/+14
| | | | | | | | | Usage of blocksize, window, mode, and mdct indexes are switched from default 0 to a default of 1 to better align with specs. A flag of 0 should correspond with short windows, a flag of 1 with long. Signed-off-by: Tyler Jones <tdjones879@gmail.com> Reviewed-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* vorbisenc: Separate copying audio samples from windowingTyler Jones2017-06-151-44/+32
| | | | | | | | | | | | Audio samples are shifted around when copying from the frame queue so that analysis can be done without negatively impacting calculation of the MDCT. Window coefficients are applied to the current two overlapped windows simultaneously instead of applying overlap for the next frame ahead of time. This improves readability when applying windows of varying lengths. Signed-off-by: Tyler Jones <tdjones879@gmail.com> Reviewed-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* avfilter/af_headphone: fix possible memory leaks on failurePaul B Mahol2017-06-151-32/+39
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avcodec/hevcdec: Check nb_spsMichael Niedermayer2017-06-151-0/+2
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/hevc_refs: Check nb_refs in add_candidate_ref()Michael Niedermayer2017-06-151-1/+1
| | | | | | | | Fixes: runtime error: index 16 out of bounds for type 'int [16]' Fixes: 2209/clusterfuzz-testcase-minimized-5012343912136704 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avutil/tests: remove float_dsp testJames Almer2017-06-144-365/+0
| | | | | | It's been ported to checkasm. Signed-off-by: James Almer <jamrial@gmail.com>
* checkasm: add float_dsp testsJames Almer2017-06-145-0/+333
| | | | | | Ported from libavutil/tests/float_dsp.c Signed-off-by: James Almer <jamrial@gmail.com>
* checkasm: add a checkasm_checked_call function that doesn't issue emmsJames Almer2017-06-142-6/+18
| | | | | | | Meant for DSP functions returning a float or double, as they'd fail if emms is called after every run on x86_32. Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec/mpeg4videodec: Check sprite delta upshift against overflowing.Michael Niedermayer2017-06-151-8/+10
| | | | | | | | Fixes: runtime error: signed integer overflow: -268386304 * 16 cannot be represented in type 'int' Fixes: 2204/clusterfuzz-testcase-minimized-5616756909408256 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/mpeg4videodec: Fix integer overflow in num_sprite_warping_points=2 caseMichael Niedermayer2017-06-151-20/+20
| | | | | | | | Fixes: runtime error: signed integer overflow: 131072 + 2147352576 cannot be represented in type 'int' Fixes: 2192/clusterfuzz-testcase-minimized-5370387988742144 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/dnxhdenc: Assert that frame size is not assigned an error codeMichael Niedermayer2017-06-151-0/+1
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* hevc: Fix scaling list prediction delta for the 32x32 inter matrixMark Thompson2017-06-141-0/+1
| | | | Fixes ticket #6356.
* doc: Document hwupload, hwdownload and hwmap filtersMark Thompson2017-06-141-0/+98
| | | | (cherry picked from commit 66aa9b94dae217a0fc5acfb704490707629d95ed)
* vf_hwmap: Add reverse mapping for hardware framesMark Thompson2017-06-141-7/+61
| | | | | | | | | | | This is something of a hack. It allocates a new hwframe context for the target format, then maps it back to the source link and overwrites the input link hw_frames_ctx so that the previous filter will receive the frames we want from ff_get_video_buffer(). It may fail if the previous filter imposes any additional constraints on the frames it wants to use as output. (cherry picked from commit 81a4cb8e58636d4efd200c2b4fec786a7e948d8b)
* vf_hwmap: Add device derivationMark Thompson2017-06-141-18/+49
| | | | | | | Also refactor a little and improve error messages to make failure cases easier to understand. (cherry picked from commit 38cb05f1c89cae1862b360d4e7e3f0cd2b5bbb67)
* hwcontext: Improve allocation in derived contextsMark Thompson2017-06-145-3/+26
| | | | | | | | | Use the flags argument of av_hwframe_ctx_create_derived() to pass the mapping flags which will be used on allocation. Also, set the format and hardware context on the allocated frame automatically - the user should not be required to do this themselves. (cherry picked from commit c5714b51aad41fef56dddac1d542e7fc6b984627)
* hwcontext_qsv: Implement mapping frames to the child device typeMark Thompson2017-06-141-2/+86
| | | | (cherry picked from commit e1c5d56b18b82e3fb42382b1b1f972e8b371fc38)
* hwcontext_qsv: Implement mapping frames from the child device typeMark Thompson2017-06-141-32/+142
| | | | | | Factorises out existing surface initialisation code to reuse. (cherry picked from commit eaa5e0710496db50fc164806e5f49eaaccc83bb5)
* hwcontext: Add frame context mapping for nontrivial contextsMark Thompson2017-06-142-1/+13
| | | | | | | | | Some frames contexts are not usable without additional format-specific state in hwctx. This change adds new functions frames_derive_from and frames_derive_to to initialise this state appropriately when deriving a frames context which will require it to be set. (cherry picked from commit 27978155bc661eec9f22bcf82c9cfc099cff4365)
* hwcontext_qsv: Support derivation from child devicesMark Thompson2017-06-141-29/+84
| | | | (cherry picked from commit aa51bb3d2756ed912ee40645efccf5f4a9609696)
* ffmpeg: Support setting the hardware device to use when filteringMark Thompson2017-06-144-2/+37
| | | | | | | | This only supports one device globally, but more can be used by passing them with input streams in hw_frames_ctx or by deriving new devices inside a filter graph with hwmap. (cherry picked from commit e669db76108de8d7a36c2274c99da82cc94d1dd1)
* vaapi: Add external control of allow-profile-mismatchMark Thompson2017-06-141-9/+2
| | | | | | Uses the just-added ALLOW_PROFILE_MISMATCH flag. (cherry picked from commit 7acb90333a187b0e847b66f9d3511245423dc0ce)
* lavc: Add flag to allow profile mismatch with hardware decodingMark Thompson2017-06-143-1/+18
| | | | (cherry picked from commit 64a5260c695dd8051509d3270295fd64eac56587)
* vaapi_encode: Use gop_size consistently in RC parametersMark Thompson2017-06-143-6/+5
| | | | | | | | | | The non-H.26[45] codecs already use this form. Since we don't currently generate I frames for codecs which support them separately to IDR, the p_per_i variable is set to infinity by default so that it doesn't interfere with any other calculation. (All the code for I frames still exists, and it works for H.264 if set manually.) (cherry picked from commit 6af014f4028238b4c50f1731b3369a41d65fa9c4)