aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* lavc/hevc_ps: Add SPS/PPS parse support for HEVC extension syntaxLinjie Fu2023-02-273-12/+349
| | | | | | | | | | | | 1. Add extension syntax according to 7.3.2.2.3/7.3.2.3.3 in T-REC-H.265-201911. 2. Keep using parsed PPS when bitstream overread for compatibility. For example, the clip PS_A_VIDYO_3.bit in FATE test has incomplete extension syntax which will be overread and un-decodable if without this change. 3. Format brace in pps_range_extensions(). Signed-off-by: Linjie Fu <linjie.justin.fu@gmail.com> Signed-off-by: Haihao Xiang <haihao.xiang@intel.com> Signed-off-by: Fei Wang <fei.w.wang@intel.com>
* lavc/avcodec: Add HEVC Screen Content Coding Extensions profileLinjie Fu2023-02-275-1/+8
| | | | | | | | Described in HEVC spec A.3.7. Bump minor version and add APIchanges entry for new added profile. Signed-off-by: Linjie Fu <linjie.justin.fu@gmail.com> Signed-off-by: Fei Wang <fei.w.wang@intel.com>
* avutil: [LA] use getauxval to do runtime check.Shiyou Yin2023-02-271-16/+8
| | | | | | | Replace cpucfg with getauxval to avoid crash in case of some processor capabilities are not supportted by kernel used. Reviewed-by: Steven Liu <liuqi05@kuaishou.com>
* avcodec/motionpixels: Mask pixels to valid valuesMichael Niedermayer2023-02-231-1/+1
| | | | | | | | Fixes: out of array access Fixes: 48567/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_MOTIONPIXELS_fuzzer-6724203352555520 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/xpmdec: Check size before allocation to avoid truncationMichael Niedermayer2023-02-231-0/+3
| | | | | | | | | Fixes:OOM Fixes:out of array access (no testcase) Fixes: 48567/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_XPM_fuzzer-6573323838685184 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/bink: Avoid undefined out of array end pointers in binkb_decode_plane()Michael Niedermayer2023-02-231-4/+4
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/bink: Fix off by 1 error in ref endMichael Niedermayer2023-02-231-1/+1
| | | | | | | | | | | | Fixes: out of array access Fixes: 48567/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_BINK_fuzzer-6657932926517248 Alterantivly to this it is possibly to allocate a bigger array Note: oss-fuzz assigned this issue to a unrelated theora bug so the bug number matches that Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/utils: Ensure linesize for SVQ3Michael Niedermayer2023-02-231-0/+3
| | | | | | | | Fixes: Assertion block_w * sizeof(uint8_t) <= ((buf_linesize) >= 0 ? (buf_linesize) : (-(buf_linesize)) Fixes: 54861/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_SVQ3_fuzzer-5352418248622080 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/utils: allocate a line more for VC1 and WMV3Michael Niedermayer2023-02-231-0/+1
| | | | | | | | | | | | Fixes: out of array read on 32bit Fixes: 54857/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_VC1_fuzzer-5840588224462848 The chroma MC code reads over the currently allocated frame. Alternative fixes would be allocating a few bytes more at the end instead of a whole line extra or to adjust the threshold where the edge emu code is activated Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/videodsp_template: Adjust pointers to avoid undefined pointer thingsMichael Niedermayer2023-02-231-2/+2
| | | | | | | | Fixes: subtraction of unsigned offset from 0xf6602770 overflowed to 0xf6638c80 Fixes: 48567/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_THEORA_fuzzer-495074400600064 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/pngdec: dont skip/read chunk twiceMichael Niedermayer2023-02-231-0/+1
| | | | | | | | Fixes: out of array access Fixes: 48567/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_PNG_fuzzer-6668158952144896.fuzz Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/pngdec: Check deloco index more exactlyMichael Niedermayer2023-02-231-1/+1
| | | | | | | | | | Fixes: out of array access: Fixes: 48567/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_PNG_fuzzer-6716193709096960 Alternatively it should be possible to limit this to 3 plane RGB 8 /16bit to ensure the size is what it should be Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/wavarc: Check kMichael Niedermayer2023-02-231-0/+4
| | | | | | | | Fixes: Assertion failure Fixes: 55849/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_WAVARC_fuzzer-6590105973555200 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/wavarc: Check if extradata has been fully readMichael Niedermayer2023-02-231-1/+4
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/ffv1dec: Check that num h/v slices is supportedMichael Niedermayer2023-02-231-0/+5
| | | | | | | | Fixes: out of array access Fixes: 55597/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_FFV1_fuzzer-4898293416329216 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/rka: avoid undefined doubling sum overflowMichael Niedermayer2023-02-221-1/+1
| | | | | | | | Fixes: signed integer overflow: -2124073172 * 2 cannot be represented in type 'int' Fixes: 56099/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_RKA_fuzzer-4530933127839744 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/rka: avoid negative value shiftMichael Niedermayer2023-02-221-1/+1
| | | | | | | | Fixes: left shift of negative value -81 Fixes: 56061/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_RKA_fuzzer-4649758062149632 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/rka: check for size 1 filterMichael Niedermayer2023-02-221-1/+1
| | | | | | | | | | Such filters will not advance and be stuck in the current implementation Fixes: Infinite loop Fixes: 56052/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_RKA_fuzzer-5236218750435328 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/rka: Fix some integer anomaliesMichael Niedermayer2023-02-221-3/+3
| | | | | | | | | Fixes: left shift of negative value -3201 Fixes: integer overflow: -76470276 * -25608 cannot be represented in type 'int' Fixes: 56052/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_RKA_fuzzer-5236218750435328 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/rka: Fix 1/0 with bps=1Michael Niedermayer2023-02-221-1/+1
| | | | | | | | | | | | Fixes: division by zero Fixes: 55940/clusterfuzz-testcase-minimized-ffmpeg_IO_DEMUXER_fuzzer-6333107679920128 The decoder does not support bps=1 and i have no such sample so it is not known if this duration is correct. Alternatively we could error out on all bps we currently do not support on the decoder side or not set duration. Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/mov: Check samplesize and offset to avoid integer overflowMichael Niedermayer2023-02-221-0/+7
| | | | | | | | Fixes: signed integer overflow: 9223372036854775584 + 536870912 cannot be represented in type 'long' Fixes: 55844/clusterfuzz-testcase-minimized-ffmpeg_dem_MOV_fuzzer-510613920664780 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* qsv: remove CONFIG_VAAPI for mutiple formatsTong Wu2023-02-222-7/+3
| | | | | | | | | Remove CONFIG_VAAPI for VUYX, YUYV422, Y210, XV30, Y212, XV36. Make 8-bit, 10-bit, 12-bit YUV 4:2:2 video sources as well as YUV 4:4:4 video sources supported by d3d11va and dxva2 just like what VAAPI does. Sign-off-by: Tong Wu <tong1.wu@intel.com>
* hwcontext_dxva2: add mutiple supported formatsTong Wu2023-02-221-0/+7
| | | | | | | | | | | Add support for VUYX, YUYV422, Y210, XV30, P012, Y212, XV36. The added formats work with qsv acceleration and will not have impact on dxva2 acceleration(-hwaccel dxva2) since so far these formats are still not supported by using dxva2 acceleration. Hwupload and hwdownload can work with the added formats. Signed-off-by: Tong Wu <tong1.wu@intel.com>
* hwcontext_d3d11va: add mutiple supported DXGI formatsTong Wu2023-02-221-0/+7
| | | | | | | | | | | | Add support for VUYX, YUYV422, Y210, XV30, P012, Y212, XV36. The added formats work with qsv acceleration and will not have impact on d3d11va acceleration(-hwaccel d3d11va) since so far these formats are still not supported by using d3d11va acceleration. Hwupload and hwdownload can work with the added formats. Signed-off-by: Tong Wu <tong1.wu@intel.com>
* fate/imfdec: remove imf experimental flagPierre-Anthony Lemieux2023-02-211-2/+2
| | | | Signed-off-by: Pierre-Anthony Lemieux <pal@palemieux.com>
* doc: improve IMF demuxer documentationPierre-Anthony Lemieux2023-02-211-1/+9
| | | | Signed-off-by: Pierre-Anthony Lemieux <pal@palemieux.com>
* avformat/imfdec: remove the experimental flagPierre-Anthony Lemieux2023-02-211-1/+1
| | | | Signed-off-by: Pierre-Anthony Lemieux <pal@palemieux.com>
* fftools/ffmpeg: move ts_scale to DemuxStreamAnton Khirnov2023-02-202-5/+6
| | | | It is not needed outside of ffmpeg_demux.
* fftools/ffmpeg_demux: add an AVClass to DemuxStream/InputStreamAnton Khirnov2023-02-202-29/+52
| | | | | Use it for logging. This makes log messages related to this input stream more consistent.
* fftools/ffmpeg_demux: move InputStream.guess_layout_max to stackAnton Khirnov2023-02-202-7/+7
| | | | | It is only needed while processing the stream in add_input_streams(), no reason to store it in the context.
* fftools/ffmpeg_demux: add InputStream private dataAnton Khirnov2023-02-202-21/+45
| | | | Move {min,max}_pts to it, which is not used outside of ffmpeg_demux.
* fftools/ffmpeg_demux: add an AVClass to Demuxer/InputFileAnton Khirnov2023-02-202-39/+69
| | | | | Use it for logging. This makes log messages related to this input file more consistent.
* avcodec/ccaption_dec: return the number of bytes decodedwang-bin2023-02-201-1/+1
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* Changelog: Add back <next> past 6.0 branchMichael Niedermayer2023-02-191-0/+2
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avfilter/af_pan: use the new swr used channel layout optionJames Almer2023-02-191-1/+1
| | | | | | Fixes ticket #10180 Signed-off-by: James Almer <jamrial@gmail.com>
* swresample/swresample: add a used channel layout option using the new APIJames Almer2023-02-196-29/+46
| | | | | | Replaces the "used channel count" option, which is now deprecated. Signed-off-by: James Almer <jamrial@gmail.com>
* doc/resampler.texi: add missing swr channel layout optionsJames Almer2023-02-191-12/+2
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/mpegtsenc: re-emit extradata ahead of IDR pictures even if AUD is ↵John Coiner2023-02-191-7/+41
| | | | | | | | | | | | | | | | | | already present Current mpegtsenc code only inserts SPS/PPS from extradata before IDR frames if AUD is also inserted. Unfortunately some encoders may preface a key frame with an AUD, but no SPS/PPS. In that case current code does not repeat the "extradata" and the resulting HLS stream may become noncompliant and unjoinable. Fix this by always inserting SPS/PPS and moving AUD to the beginning of the packet if it is already present. Fixes ticket #10148. Signed-off-by: Marton Balint <cus@passwd.hu>
* doc: remove docs for options removed at the bumpMarton Balint2023-02-193-27/+0
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* version.h: Bump minor post 6.0 branchn6.1-devMichael Niedermayer2023-02-198-8/+8
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* doc/APIchanges: Add 6.0 cut pointMichael Niedermayer2023-02-191-0/+2
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* version.h: Bump minor for 6.0 branchMichael Niedermayer2023-02-198-8/+8
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* doc/APIchange: fill in missing thingsMichael Niedermayer2023-02-191-28/+28
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* Changelog: mark 6.0Michael Niedermayer2023-02-191-1/+1
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* fate/imfdec: add audio testPierre-Anthony Lemieux2023-02-182-0/+210
| | | | | | Adds a test where the temporal boundaries of audio and video resources do not line up. Signed-off-by: Pierre-Anthony Lemieux <pal@palemieux.com>
* avformat/flvenc: fix EOS tagZhao Zhili2023-02-191-3/+6
| | | | | | | | | | FLV spec only has AVC end of sequence tag, and the EOS tag has a CodecID as other video data packet. MPEG4 doesn't conformance to the spec, but it's there for a decade. So only 'fix' the EOS tag rather than remove it completely. Reviewed-by: Steven Liu <lq@chinaffmpeg.org> Signed-off-by: Zhao Zhili <zhilizhao@tencent.com>
* configure: select subordinate formats for HLSGyan Doshi2023-02-181-2/+2
| | | | | | | | HLS segments may be MPEG-TS or fragmented MP4, so those (de)muxers are required for reading/writing HLS media segments. Fixes functionality with --disable-everything --enable-demuxer=hls --enable-muxer=hls
* avformat/cdg: add probePaul B Mahol2023-02-181-0/+17
|
* avfilter/vf_libplacebo: add SMPTE ST2094 tone-mappersNiklas Haas2023-02-172-10/+32
| | | | libplacebo gained these exciting new functions upstream.
* libavcodec/qsvenc: Flush cached frames before reset encoderWenbin Chen2023-02-161-56/+66
| | | | | | | | | | | According to https://github.com/Intel-Media-SDK/MediaSDK/blob/master/doc/mediasdk-man.md#configuration-change. Before calling MFXVideoENCODE_Reset, The application needs to retrieve any cached frames in the SDK encoder. A loop is added before MFXVideoENCODE_Reset to retrieve cached frames and add them to async_fifo, so that dynamic configuration works when async_depth > 1. Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>