1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-11-21 10:55:51 +02:00
Commit Graph

100788 Commits

Author SHA1 Message Date
Josh Dekker
9c513edb79 checkasm: add hevc_pel tests
Co-authored-by: Niklas Haas <git@haasn.xyz>
Signed-off-by: Josh Dekker <josh@itanimul.li>
2021-01-25 09:24:11 +01:00
Reimar Döffinger
a16bcc13d9 configure: add fallback to $arch in msvc assembler check.
Setting the defaults for $arch happens only later, so
the current code would not set AS correctly if --arch
was not specified on the command-line.
Fix it by adding an explicit fallback to $arch_default.

Signed-off-by: Josh Dekker <josh@itanimul.li>
2021-01-25 09:09:00 +01:00
Michael Niedermayer
9e3d09f435 avformat/asfdec_o: Check for EOF in asf_read_marker()
Fixes: Timeout
Fixes: 26460/clusterfuzz-testcase-minimized-ffmpeg_dem_ASF_O_fuzzer-5710884393189376

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2021-01-25 01:10:14 +01:00
Paul B Mahol
b897b52618 avfilter: add epx pixel art scaler 2021-01-25 00:48:35 +01:00
Paul B Mahol
833338a02c avfilter/vf_lenscorrection: add support for more 8-bit formats 2021-01-25 00:47:06 +01:00
Paul B Mahol
d7c4dc2f1a avfilter/vf_lenscorrection: add timeline support 2021-01-25 00:47:06 +01:00
Paul B Mahol
e41a92910a avfilter/vf_lenscorrection: add bilinear interpolation 2021-01-25 00:47:06 +01:00
Paul B Mahol
4f5a1bcd55 avfilter/vf_lenscorrection: simplify options 2021-01-25 00:47:06 +01:00
Andreas Rheinhardt
ae5be6236f avcodec/tiff_common: Remove declarations of inexistent functions
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2021-01-25 00:23:17 +01:00
Andreas Rheinhardt
a82001c8cf avcodec/vp8data: Remove unused array
Unused since 748f921ad1.

Reviewed-by: Peter Ross <pross@xvid.org>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2021-01-25 00:18:47 +01:00
Andreas Rheinhardt
2bcec40cce avfilter/vf_nnedi: Fix segfault when prescreening is disabled
Since c737f6edce prescreening is
nevertheless run because of a wrong check: "if (s->prescreen > 0)".
s->prescreen is an array of two function pointers that is contained in
the context and comparing it with 0 (i.e. NULL) is actually undefined
behaviour, because NULL and s->prescreen do not point to the same
object (NULL after all never points to any object). Nevertheless both
Clang as well as GCC compile this to code that treat s->prescreen > 0 as
true, leading to segfaults, because the code then tries to access the
-1th member of an array.

This commit fixes the check as well as another such check a few lines
below.

(Found via compiler warnings enabled by -pedantic:
"ordered comparison between pointer and zero is an extension".)

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2021-01-24 22:37:55 +01:00
Carl Eugen Hoyos
2687070d9b lsws/ppc/yuv2rgb: Fix transparency converting from yuv->rgb32.
Based on 68363b69 by Reimar Döffinger.

Fixes ticket #9077.
2021-01-24 17:17:29 +01:00
Carl Eugen Hoyos
3ee45eca98 tests/fate/fits: Add a todo for a 64bit test.
The test should currently fail on big endian but passes because of the
unsuitable input file.
2021-01-24 17:13:19 +01:00
Carl Eugen Hoyos
9c9174b9c1 tests/fate/hlsenc: ffprobe is needed for hls-fmp4_ac3. 2021-01-24 17:12:05 +01:00
Andreas Rheinhardt
e0ca8a7a51 avfilter/avfilter: Remove AVFilterLink.flags
It is a private field that is unused since
44f660e7e7.

Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2021-01-24 15:02:01 +01:00
Andreas Rheinhardt
a6d741920f avformat/rtpdec: Constify RTPDynamicProtocolHandlers
Also constify the list of pointers to said RTPDynamicProtocolHandlers.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2021-01-24 11:28:53 +01:00
Andreas Rheinhardt
3567fab6e2 avformat/rtpdec: Remove next pointer from Protocol Handlers
Forgotten in 6197453761 (notice that
RTPDynamicProtocolHandler is not a public struct, so one can remove
the linked-list pointer immediately (unlike in most other patches of
this kind)).

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2021-01-24 11:19:10 +01:00
Zhao Zhili
1775688292 avformat/hlsenc: EXT-X-I-FRAMES-ONLY requires version 4 or higher 2021-01-24 10:55:44 +08:00
Zhao Zhili
47327aa2d9 avformat/hls: change sequence number type to int64_t
Fix atoi() overflow for large EXT-X-MEDIA-SEQUENCE.

The spec says the type of sequence number is uint64_t. Use int64_t
here since current implementation requires it to be signed integer,
and hlsenc use int64_t too.
2021-01-24 10:55:29 +08:00
Peter Ross
5d8e86d15a avfilter/vf_waveform: flat_pix_fmts never used
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2021-01-24 09:35:36 +11:00
Peter Ross
63be96414b avcodec/dvenc: dv100_weight_shift never used
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2021-01-24 09:35:12 +11:00
Paul B Mahol
b2bbcede5e avfilter/vf_colorchannelmixer: add option to preserve lightness 2021-01-23 22:28:35 +01:00
Marton Balint
257a83b969 avcodec/flashsv2enc: factorize updating block dimensions
The patch changes the init function to initialize block dimensions to fixed
64x64 instead of the previously used image width/height based value.

This should not cause any actual change in behaviour because block dimensions
are recalculated on every keyframe in optimum_block_width() and
optimum_block_height() functions and in the current code the result is always
64x64 regardless of the image dimensions used.

Signed-off-by: Marton Balint <cus@passwd.hu>
2021-01-23 20:13:39 +01:00
Marton Balint
daac7f4d9c avformat/swf: add support for reading and writing VP6A and Flash Screen Video codecs
Signed-off-by: Marton Balint <cus@passwd.hu>
2021-01-23 20:10:05 +01:00
Marton Balint
8d5f2a005d avformat/swfenc: add support for muxing png images
Signed-off-by: Marton Balint <cus@passwd.hu>
2021-01-23 20:10:04 +01:00
Marton Balint
041e735c81 avformat/swfenc: fix generation of FileAttributes tag
Signed-off-by: Marton Balint <cus@passwd.hu>
2021-01-23 20:10:04 +01:00
Marton Balint
c8e1e56509 avfilter/af_astats: fix possible crash because of undefined float to integer rounding
Fixes ticket #9049.

Signed-off-by: Marton Balint <cus@passwd.hu>
2021-01-23 19:54:14 +01:00
Marton Balint
16766bf8a8 Revert "avutil/timecode: fix sscanf format string with garbage at the end"
This reverts commit 6696a07ac6.

It is wrong to restrict timecodes to always contain leading zeros or for hours
or frames to be 2 chars only.

Signed-off-by: Marton Balint <cus@passwd.hu>
2021-01-23 19:54:14 +01:00
Haihao Xiang
b8cd37a59f qsv: dump more info in error, debug and verbose mode
Dump iopattern mode and the SDK error/warning desciptions for qsv based
filters and iopattern mode for qsvenc

Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
Signed-off-by: Linjie Fu <linjie.justin.fu@gmail.com
2021-01-23 16:10:16 +00:00
Haihao Xiang
db28e9c1d9 lavf/qsv: Add functions to print mfx iopattern, warning and error
It is a copy of the relevant part in lavc/qsv but use different function
names to avoid multiple definition when linking lavc and lavf statically.

Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
Signed-off-by: Linjie Fu <linjie.justin.fu@gmail.com
2021-01-23 16:09:16 +00:00
Xu Guangxin
7a5a5e68bf avcodec/qsvdec: refact, remove duplicate code for plugin loading
Signed-off-by: Xu Guangxin <guangxin.xu@intel.com>
Signed-off-by: Linjie Fu <linjie.justin.fu@gmail.com>
2021-01-23 16:07:54 +00:00
Xu Guangxin
d78ecf10bd avcodec/qsvdec: refact, move qsvdec_other.c to qsvdec.c
Signed-off-by: Xu Guangxin <guangxin.xu@intel.com>
Signed-off-by: Linjie Fu <linjie.justin.fu@gmail.com>
2021-01-23 16:07:27 +00:00
Xu Guangxin
399c1f9235 avcodec/qsvdec: refact, move qsvdec_h2645.c to qsvdec.c
Signed-off-by: Xu Guangxin <guangxin.xu@intel.com>
Signed-off-by: Linjie Fu <linjie.justin.fu@gmail.com>
2021-01-23 16:06:37 +00:00
Xu Guangxin
e8df3808bd avcodec/qsvdec_h2645: refact, use DEFINE_QSV_DECODER to remove duplicate code
Signed-off-by: Xu Guangxin <guangxin.xu@intel.com>
Signed-off-by: Linjie Fu <linjie.justin.fu@gmail.com>
2021-01-23 16:04:40 +00:00
Xu Guangxin
96915ac51b avcodec/qsvdec_other: refact, use DEFINE_QSV_DECODER to remove duplicate code
Signed-off-by: Xu Guangxin <guangxin.xu@intel.com>
Signed-off-by: Linjie Fu <linjie.justin.fu@gmail.com>
2021-01-23 16:04:09 +00:00
Xu Guangxin
4c47b41782 avcodec/qsv_h2645: fix memory leak for plugin load
Signed-off-by: Xu Guangxin <guangxin.xu@intel.com>
Signed-off-by: Linjie Fu <linjie.justin.fu@gmail.com>
2021-01-23 16:01:12 +00:00
Michael Niedermayer
7a6666b19d avformat/flvdec: Use av_sat_add64() for pts computation
Fixes: signed integer overflow: -9223372036854767583 + -65536 cannot be represented in type 'long'
Fixes: 26910/clusterfuzz-testcase-minimized-ffmpeg_dem_FLV_fuzzer-6734549467922432

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2021-01-23 14:32:54 +01:00
Michael Niedermayer
d82ee907d6 avformat/utils: Check dts - (1<<pts_wrap_bits) overflow
Fixes: signed integer overflow: -9223372036842389247 - 2147483648 cannot be represented in type 'long long'
Fixes: 26910/clusterfuzz-testcase-minimized-ffmpeg_dem_FLV_fuzzer-4845007531671552

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2021-01-23 14:32:54 +01:00
Michael Niedermayer
638a151a87 avformat/bfi: Check chunk_header
Fixes: signed integer overflow: -2147483648 - 3 cannot be represented in type 'int'
Fixes: 26910/clusterfuzz-testcase-minimized-ffmpeg_dem_BFI_fuzzer-6665764123836416

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2021-01-23 14:32:54 +01:00
Michael Niedermayer
c78b2b138c avformat/ads: Check size
Fixes: signed integer overflow: -2147483616 - 64 cannot be represented in type 'int'
Fixes: 26910/clusterfuzz-testcase-minimized-ffmpeg_dem_ADS_fuzzer-6617769344892928

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2021-01-23 14:32:54 +01:00
Michael Niedermayer
b17ffe8f8f avformat/iff: Check block align also for ID_MAUD
Fixes: Timeout & OOM
Fixes: 28701/clusterfuzz-testcase-minimized-ffmpeg_dem_IFF_fuzzer-5185094964871168
Fixes: 29116/clusterfuzz-testcase-minimized-ffmpeg_dem_IFF_fuzzer-4874284795297792

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2021-01-23 14:32:54 +01:00
Gyan Doshi
d8a585d4d5 doc/ffmpeg: document adrift_threshold 2021-01-23 16:43:51 +05:30
Gyan Doshi
e8b46b2c73 doc/ffmpeg: restore location of stray passage
Added in 88fc1438c6, this passage was separated from its original
context over the years with unrelated entries sandwiched in between.
2021-01-23 15:41:52 +05:30
Gyan Doshi
c52ced7ca2 doc/fftools-common-opts: document max_alloc 2021-01-23 14:59:47 +05:30
Gyan Doshi
e73a8ecb38 doc/fftools-common-opts: document buildconf 2021-01-23 13:58:01 +05:30
Michael Niedermayer
2488ba85a0 avcodec/utils: Check for integer overflow in get_audio_frame_duration() for ADPCM_DTK
Fixes: signed integer overflow: 131203586 * 28 cannot be represented in type 'int'
Fixes: 26817/clusterfuzz-testcase-minimized-ffmpeg_dem_MSF_fuzzer-6296902548848640

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2021-01-23 01:05:25 +01:00
Michael Niedermayer
14bbb6bb30 avformat/fitsdec: Better size checks
Fixes: out of array access
Fixes: 26819/clusterfuzz-testcase-minimized-ffmpeg_dem_FITS_fuzzer-5634559355650048
Fixes: 26820/clusterfuzz-testcase-minimized-ffmpeg_dem_FITS_fuzzer-5760774955597824
Fixes: 27379/clusterfuzz-testcase-minimized-ffmpeg_dem_FITS_fuzzer-5129775942991872.fuzz

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2021-01-23 01:05:25 +01:00
Michael Niedermayer
d3d9b1fc8e avformat/mxfdec: Fix integer overflow in next position in mxf_read_local_tags()
Fixes: signed integer overflow: 9223372036854775723 + 8192 cannot be represented in type 'long'
Fixes: 29072/clusterfuzz-testcase-minimized-ffmpeg_dem_MXF_fuzzer-4812604904177664

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2021-01-23 01:05:25 +01:00
Andreas Rheinhardt
da607832b5 avcodec/tableprint: Don't include mem_internal.h
tableprint.h does not declare anything as aligned; it just prints
DECLARE_ALIGNED. So it can be removed; in fact, it needs to be removed,
because mem_internal.h includes config.h which leads to warnings when
building with hardcoded tables enabled because of redefinitions of
CONFIG_HARDCODED_TABLES.

(Furthermore, config.h is only valid for the target, not the host,
so HAVE_LOCAL_ALIGNED might even be wrong here.)

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2021-01-22 19:09:57 +01:00
Paul B Mahol
3ce97d8ddd avfilter/vf_atadenoise: fix mid calculation 2021-01-22 18:24:32 +01:00