summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* avfilter/af_sidechaincompress: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/af_biquads: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/af_asupercut: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_convolution: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_convolution: Fix standalone build of kirsch, scharr filtersAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/af_agate: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/demux: Use av_opt_set_int() where appropriateAndreas Rheinhardt2021-09-18
| | | | | Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avutil/buffer: Avoid allocation of AVBuffer when using buffer poolAndreas Rheinhardt2021-09-18
| | | | | | | | Do this by putting an AVBuffer structure into BufferPoolEntry and reuse it for all subsequent uses of said BufferPoolEntry. Reviewed-by: James Almer <jamrial@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_zscale: Don't make assumptions about zimg's range enumsAndreas Rheinhardt2021-09-18
| | | | | | | | | zimg's color range enum values are off-by-one compared to ours; therefore the code just adds one when converting from theirs to ours. Yet this is not how one should deal with enums; use a switch instead. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/libsrt: remove url_get_file_handle implementationZhao Zhili2021-09-18
| | | | | | | | SRTSOCKET is an abstraction designed by libsrt, it's not guaranteed to be a real file descriptor. Even if it is, it should not be operated directly outside of libsrt. Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/libsrt: log streamid in listener modeZhao Zhili2021-09-18
| | | | | | | | | It's useful for test client which pass streamid to ffmpeg/ffplay. For example, use ffmpeg to test streamid support in VLC: ./ffmpeg -v info -re -i foo.mp4 -c copy -f mpegts -mode listener srt://127.0.0.1:9000 ./vlc srt://127.0.0.1:9000?streamid=foobar Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/mpegts: fixes overflow when parsing the PMTNicolas Jorge Dato2021-09-18
| | | | | | | | | | When a possible overflow was detected, there was a break to exit the while loop. However, it should have already substracted 2 bytes from program_info_length (descriptor ID + length). Fixes ticket #9422. Signed-off-by: Marton Balint <cus@passwd.hu>
* libavfilter/x86/vf_gblur: correct the order of loop stepWu Jianhua2021-09-18
| | | | | | | | | | | The problem was caused by if the width of the processed block minus 1 is a multiple of the aligned number the instruction jle .bscale_scalar would skip the Optimized Loop Step, which will lead to an incorrect sampling when specifying steps more than 1. Move the Optimized Loop Step after .bscale_scalar to ensure the loop step is enabled. Signed-off-by: Wu Jianhua <jianhua.wu@intel.com>
* libavfilter/x86/vf_gblur: fixed the fate-test failed on MacOSWu Jianhua2021-09-18
| | | | Signed-off-by: Wu Jianhua <jianhua.wu@intel.com>
* avfilter/vf_zscale: fix output color_range discrepancyPavel Koshevoy2021-09-17
| | | | | | | | | | This filter chain was supposed to convert from narrow range to full range yuv444p, but didn't: buffer=width=1280:height=720:pix_fmt=yuv444p:frame_rate=25/1:\ time_base=1/25:sar=1/1,zscale=min=709:rin=limited:pin=709:\ tin=709:t=linear,format=gbrpf32le,zscale=tin=linear:p=709:m=709:\ r=full:t=709,format=pix_fmts=yuv444p,buffersink
* avcodec/mpeg12dec: Do not put mpeg_f_code into an invalid state on error returnMichael Niedermayer2021-09-17
| | | | | | | | Fixes: invalid shift Fixes: 37018/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_MPEG2VIDEO_fuzzer-5290280902328320 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/mpegvideo_enc: Limit bitrate tolerance to the representableMichael Niedermayer2021-09-17
| | | | | | | Fixes: error: 1.66789e+11 is outside the range of representable values of type 'int' Fixes: Ticket8201 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/wmaprodec: Check that the EOF frame was allocated before decoding ↵Michael Niedermayer2021-09-17
| | | | | | | | | | | into it Fixes: NULL pointer dereference Fixes: 38125/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_XMA1_fuzzer-5151909422432256 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avutil/buffer: constify some function parametersJames Almer2021-09-17
| | | | | Reviewed-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com> Signed-off-by: James Almer <jamrial@gmail.com>
* avfilter/vf_coreimage: Simplify query_formatsAndreas Rheinhardt2021-09-17
| | | | | | | | Using ff_set_common_formats_from_list() avoids using different functions depending upon how many inputs the filter has. Reviewed-by: Thilo Borgmann <thilo.borgmann@mail.de> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/avfilter: Actually error out on init errorAndreas Rheinhardt2021-09-17
| | | | | | | | Currently an error from init could be overwritten by successfully setting the enable expression. Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* libavdevice/avfoundation.m: fix potential unreleased lock issueChengfeng Ye2021-09-17
| | | | | | | | | The problem here is that the lock ctx->frame_lock will become an unreleased lock if the program returns at patched lines. Bug tracker link: https://trac.ffmpeg.org/ticket/9386\#ticket Signed-off-by: Chengfeng Ye <cyeaa@connect.ust.hk>
* libavdevice/avfoundation.m: fix protential unreleased lock issueChengfeng Ye2021-09-17
| | | | | | | | | | The problem here is that the lock ctx->frame_lock will become an unreleased lock if the program returns at line 697, line 735 and line744. Bug tracker link: https://trac.ffmpeg.org/ticket/9385\#ticket Signed-off-by: Chengfeng Ye <cyeaa@connect.ust.hk>
* avcodec/elbg: Remove avoidable bufferAndreas Rheinhardt2021-09-17
| | | | | | Reviewed-by: Paul B Mahol <onemda@gmail.com> Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/utils: Use st for AVStream variable in avpriv_set_pts_infoAndreas Rheinhardt2021-09-17
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/demux: Don't free inexistent ID3v2 metadataAndreas Rheinhardt2021-09-17
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/utils: Move demuxing code out into a new fileAndreas Rheinhardt2021-09-17
| | | | | | | | | | | | | libavformat/utils.c has over 4800 lines and is supposed to contain "various utility functions for use within FFmpeg". In reality it contains all that and the whole demuxing core of libavformat. This is especially bad, because said file includes the FFMPEG_VERSION (the git commit sha) so that it is rebuilt whenever the commit HEAD points to changes. Therefore this commit makes it smaller by moving the demuxing code out to a new file, demux.c (in analogy to mux.c for the muxing code). Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/utils: Move seeking code out into a new fileAndreas Rheinhardt2021-09-17
| | | | | | | | | | | | libavformat/utils.c has over 5500 lines and is supposed to contain "various utility functions for use within FFmpeg". In reality it contains all that and the whole demuxing+seeking core of libavformat. This is especially bad, because said file includes the FFMPEG_VERSION (the git commit sha) so that it is rebuilt whenever the commit HEAD points to changes. Therefore this commit starts making it smaller by factoring the seeking code out. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/utils: ReindentationAndreas Rheinhardt2021-09-17
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat: Avoid allocation for AVStreamInternalAndreas Rheinhardt2021-09-17
| | | | | | | | | | Do this by allocating AVStream together with the data that is currently in AVStreamInternal; or rather: Put AVStream at the beginning of a new structure called FFStream (which encompasses more than just the internal fields and is a proper context in its own right, hence the name) and remove AVStreamInternal altogether. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/mux, utils: Use dedicated pointer for AVStreamInternalAndreas Rheinhardt2021-09-17
| | | | | | | This gets rid of ugly "->internal" and is in preparation for removing AVStreamInternal altogether. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat: Avoid allocation for AVFormatInternalAndreas Rheinhardt2021-09-17
| | | | | | | | | | | | | Do this by allocating AVFormatContext together with the data that is currently in AVFormatInternal; or rather: Put AVFormatContext at the beginning of a new structure called FFFormatContext (which encompasses more than just the internal fields and is a proper context in its own right, hence the name) and remove AVFormatInternal altogether. The biggest simplifications occured in avformat_alloc_context(), where one can now simply call avformat_free_context() in case of errors. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/mux, mxfenc, utils: Use dedicated pointer for AVFormatInternalAndreas Rheinhardt2021-09-17
| | | | | | | This gets rid of ugly "->internal" and is in preparation for removing AVFormatInternal altogether. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/asfenc, mux, utils: Use smaller scope for variablesAndreas Rheinhardt2021-09-17
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/mp3dec: Simplify checking for no-metadataAndreas Rheinhardt2021-09-17
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avformat/mp3dec: Avoid calling avio_tell() multiple timesAndreas Rheinhardt2021-09-17
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* doc/decoders: mention that some libdav1d options are deprecatedJames Almer2021-09-16
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/mvdec: Don't signal success on parse_audio_var() errorJames Almer2021-09-16
| | | | | | Propagate the error it returned instead. Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec/apedec: Fix integer overflow in intermediateMichael Niedermayer2021-09-16
| | | | | | | | Fixes: signed integer overflow: 559334865 * 4 cannot be represented in type 'int' Fixes: 37929/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_APE_fuzzer-6751932295806976 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/mvdec: Do not set invalid sample rateMichael Niedermayer2021-09-16
| | | | | | | | | Fixes: signed integer overflow: -682581959642593728 * 16 cannot be represented in type 'long' Fixes: 37883/clusterfuzz-testcase-minimized-ffmpeg_dem_MV_fuzzer-5311691517198336 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Reviewed-by: Peter Ross <pross@xvid.org> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/sbgdec: Check for t0 overflow in expand_tseq()Michael Niedermayer2021-09-16
| | | | | | | | | Fixes: signed integer overflow: 4611686025627387904 + 4611686025627387904 cannot be represented in type 'long' Fixes: 35489/clusterfuzz-testcase-minimized-ffmpeg_dem_SBG_fuzzer-4862678601433088 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/mjpegdec: export display matrix frame side data when availableJames Almer2021-09-16
| | | | | | Finishes fixing ticket #6945. Signed-off-by: James Almer <jamrial@gmail.com>
* ffmpeg: take into account image flipping in the display matrixJames Almer2021-09-16
| | | | | | | This covers only standard rotations. Fixes part of ticket #6945. Signed-off-by: James Almer <jamrial@gmail.com>
* ffmpeg: use display matrix frame side data for autorotationJames Almer2021-09-16
| | | | | | | And give it priority over stream side data when present. Fixes part of ticket #6945. Signed-off-by: James Almer <jamrial@gmail.com>
* cmdutils: round rotation value to nearest integerJames Almer2021-09-16
| | | | | | As recommended by the doxy for av_display_rotation_get(). Signed-off-by: James Almer <jamrial@gmail.com>
* tools/dvd2concat: generate VOBSUB extradataNicolas George2021-09-16
| | | | | The extradata contains the frame size of the subtitles images and the palette.
* lavf/concatdec: add stream_extradata directiveNicolas George2021-09-16
|
* tools/dvd2concat: add support for chaptersNicolas George2021-09-16
|
* lavf/concat: add support for chaptersNicolas George2021-09-16
|
* tools/dvd2concat: specify stream_codec for subtitlesNicolas George2021-09-16
| | | | Avoid requiring a huge probe size and analyze duration.