summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* avcodec/videodsp: Make ff_emulated_edge_mc_16 staticAndreas Rheinhardt2022-06-11
| | | | | | | Only ff_emulated_edge_mc_8() is used outside of lavc/videodsp.c. Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/v4l2_m2m: Remove unused ff_v4l2_m2m_codec_full_reinitAndreas Rheinhardt2022-06-11
| | | | | | Unused since df701ed0b582a6b5c763310b4225446089cbcfb1. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/hevcdec: Make ff_hevc_pel_weight staticAndreas Rheinhardt2022-06-11
| | | | | | Only used here. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/x86/hevcdsp_init: Remove unnecessary inclusion of get_bits.hAndreas Rheinhardt2022-06-11
| | | | | | | This file does not use anything from get_bits.h at all; furthermore hevcdsp.h now includes get_bits.h itself. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/x86/qpeldsp: Remove unused ff_put_no_rnd_pixels16_l2_3dnowAndreas Rheinhardt2022-06-11
| | | | | | qpeldsp does not use 3dnow, it is MMXEXT-only. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/libx264: Set min build version to 158 for msvcMatt Oliver2022-06-11
| | | | | | | | | | | | | | | | | | | | | | | Was "[PATCH] libx264: Do not explicitly set X264_API_IMPORTS" Setting X264_API_IMPORTS only affects msvc builds and it breaks linking to static builds (although is required for shared builds). This flag is set by x264 in its pkgconfig as required since build 158 (a615f027ed172e2dd5380e736d487aa858a0c4ff) from July 2019. So this patch updates configure to require a newer x264 build that correctly sets the imports flag. The min version requirement of 158 is applied for msvc builds only. This is also removing the check for 'libx264 without pkg-config' which was left for compatibility reasons about 7 years ago when the pkg-config check was introduced by commit e06263ef1e0e172b2c76070b3dc739411af08e82. Co-authored-by: softworkz <softworkz@hotmail.com> Signed-off-by: softworkz <softworkz@hotmail.com> Signed-off-by: Matt Oliver <protogonoi@gmail.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/os_support: use windows stat structs with 64bit time_tsoftworkz2022-06-11
| | | | | Signed-off-by: softworkz <softworkz@hotmail.com> Signed-off-by: Martin Storsjö <martin@martin.st>
* ffmpeg: add option fps_modeGyan Doshi2022-06-11
| | | | | | | fps_mode sets video sync per output stream. Overrides vsync for matching streams. vsync is deprecated.
* libavcodec/jpeg2000_parser: Localize m->bytes_readTomas Härdin2022-06-10
| | | | Another 6%
* libavcodec/jpeg2000_parser: ReindentTomas Härdin2022-06-10
|
* libavcodec/jpeg2000_parser: Rearrange ifsTomas Härdin2022-06-10
| | | | A modest 8% improvement
* libavcodec/jpeg2000_parser: LUTify info_marker()Tomas Härdin2022-06-10
| | | | This speeds find_frame_end() up by 39% according to valgrind
* libavcodec/jpeg2000_parser: next_state is just a temporaryTomas Härdin2022-06-10
|
* libavcodec/jpeg2000_parser: Simplify, fix reset_context()Tomas Härdin2022-06-10
|
* libavcodec/jpeg2000_parser: Speed up long skipsTomas Härdin2022-06-10
|
* avformat/librist: allow setting fifo size and fail on overflowGijs Peskens2022-06-09
| | | | | | | | | | Introduce fifo_size and overrun_nonfatal params to configure fifo buffer behavior. Use newly introduced RIST_DATA_FLAGS_OVERFLOW flag to check for overrun and error out in that case. Signed-off-by: Marton Balint <cus@passwd.hu>
* ffmpeg: drop undocumented -d optionStefano Sabatini2022-06-09
| | | | | | | | | | | | Option was added in commit 39aafa5ee90e10382e but was never documented. Also does not seem there are current use cases for it, tests for which it was introduced are still working therefore we drop it altogether. Indirectly fix trac issue: http://trac.ffmpeg.org/ticket/1698 Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/aviobuf: Check buf_size in ffio_ensure_seekback()Michael Niedermayer2022-06-09
| | | | | | | | | buffer_size is an int Fixes: signed integer overflow: 9223372036854775754 + 32767 cannot be represented in type 'long' Fixes: 45691/clusterfuzz-testcase-minimized-ffmpeg_IO_DEMUXER_fuzzer-5263458831040512 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/bfi: Check offsets betterMichael Niedermayer2022-06-09
| | | | | | | | Fixes: signed integer overflow: -2145378272 - 538976288 cannot be represented in type 'int' Fixes: 45690/clusterfuzz-testcase-minimized-ffmpeg_IO_DEMUXER_fuzzer-5015496544616448 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/asfdec_f: Check packet_frag_timestampMichael Niedermayer2022-06-09
| | | | | | | | Fixes: signed integer overflow: -9223372036854775808 - 4607 cannot be represented in type 'long' Fixes: 45685/clusterfuzz-testcase-minimized-ffmpeg_IO_DEMUXER_fuzzer-5280102802391040 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/wmalosslessdec: Check channels after setting themMichael Niedermayer2022-06-09
| | | | | | | | | | Fixes: 46194/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_WMALOSSLESS_fuzzer-580292873827123 Fixes: stack-buffer-overflow on address 0x7ffc0ce69b30 at pc 0x00000062fb03 bp 0x7ffc0ce69af0 sp 0x7ffc0ce69ae8 Fixes: 46205/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_WMALOSSLESS_fuzzer-5354894996930560 Fixes: 47861/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_WMALOSSLESS_fuzzer-4817404984688640 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/file: remove _WIN32 conditionsoftworkz2022-06-09
| | | | | | | | stat is now re-mapped with long path support in os_support.h Signed-off-by: softworkz <softworkz@hotmail.com> Signed-off-by: Martin Storsjö <martin@martin.st>
* avformat/os_support: Support long file names on Windowssoftworkz2022-06-09
| | | | | Signed-off-by: softworkz <softworkz@hotmail.com> Signed-off-by: Martin Storsjö <martin@martin.st>
* avutil/wchar_filename,file_open: Support long file names on Windowssoftworkz2022-06-09
| | | | | Signed-off-by: softworkz <softworkz@hotmail.com> Signed-off-by: Martin Storsjö <martin@martin.st>
* ffprobe: update entry index after printing packet/media typeStefano Sabatini2022-06-09
| | | | | | | | Fix JSON output in case a frame or packet section contains a nested section. Fix trac issue http://trac.ffmpeg.org/ticket/8680. Signed-off-by: Marton Balint <cus@passwd.hu>
* avcodec/texturedspenc: Fix indexing in color distribution determinationMichael Niedermayer2022-06-09
| | | | | | | | | | Fixes CID1396405 MSE and PSNR is slightly improved, and some noticable corruptions disappear as well. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Marton Balint <cus@passwd.hu>
* libavformat/tls_libtls: handle TLS_WANT_{POLLIN, POLLOUT} in read/write ↵Matthieu Bouron2022-06-08
| | | | | | | | | | | | | | | functions According to the tls documentation: tls_read() and tls_write() can return TLS_WANT_POLLIN and TLS_WANT_POLLOUT which indicates that the same operation must be repeated immediately. This commit prevents the libtls backend from failing when libtls returns TLS_WANT_POLLIN or TLS_WANT_POLLOUT with the following error: [tls @ 0x7f6e20005a00] (null) Signed-off-by: Marton Balint <cus@passwd.hu>
* avcodec/dvdsubdec, dvbsubdec: remove bitmap dumping in DEBUG buildssoftworkz2022-06-08
| | | | | | | | | It's been a regular annoyance and often undesired. There will be a subtitle filter which allows to dump individual subtitle bitmaps. Signed-off-by: softworkz <softworkz@hotmail.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* libavutil/tests/md5: Remove 'volatile workaround' to avoid warningssoftworkz2022-06-08
| | | | | | | | | | | Those are always showing up on Patchwork when FATE tests are failing, covering some possibly more useful information. The volatile keyword was used as a workaround for an eight year old clang version. Signed-off-by: softworkz <softworkz@hotmail.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* MAINTAINERS: add myself as maintainer for LoongArch.Shiyou Yin2022-06-08
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* lavf/matroskadec: stop mapping text/plain attachments to AV_CODEC_ID_TEXTAnton Khirnov2022-06-08
| | | | | | There is no reason to think that an attachment will contain text subtitles. Furthermore, attachments are exported in extradata, so the AV_CODEC_ID_TEXT decoder would not do anything useful with them anyway.
* libavformat/isom: Add more language mappingsIvan Baykalov2022-06-07
| | | | | | | | | mov_mdhd_language_map table doesn't contain ISO 639 codes for some of the languages. I added a few which have no contradictory mappings Fixes ticket #9743 Signed-off-by: Anton Khirnov <anton@khirnov.net>
* tools/target_dec_fuzzer: add a custom get_buffer2() implementationJames Almer2022-06-06
| | | | | | | | | | | | Unlike avcodec_default_get_buffer2(), this version does not allocate more than what the lavu image helper functions consider should be allocated for a given frame. Since the get_buffer2() documentation does not require any kind of buffer padding for any of the planes, this should help detect bugs in our DR1 decoders if they read beyond the end of the buffer, simulating what some library users might experience when they use their own custom get_buffer2() implementations. Signed-off-by: James Almer <jamrial@gmail.com>
* swscale/x86/yuv_2_rgb: fix access to memory past the frame data in yuv to ↵Vardan Margaryan2022-06-06
| | | | | | | | | | | | | | | rgb conversion Y, U, V data is loaded at the end of the current iteration for the next iteration. It results in memory access past the frame data on the last iteration (that data is never used after the loading). So load data at the start of the iteration, so that only useful data is loaded. Signed-off-by: Vardan Margaryan <v.t.margaryan@gmail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* lavfi/blockdetect: Reindent after last commitThilo Borgmann2022-06-06
|
* lavfi/blockdetect: Fix possible div by 0Thilo Borgmann2022-06-06
| | | | Found-by Covererity, CID 1504568, 1504569
* libavcodec/qsvenc: Add min/max QP control options for I/P/B frameYue Heng2022-06-06
| | | | | | | | | To do more accurate QP control, add min/max QP control on I/P/B frame separately to qsv encoder. qmax and qmin still work but newly-added options have higher priority. Signed-off-by: Yue Heng <yue.heng@intel.com> Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
* doc/vaapi_encode: add documentations for max_frame_sizeLinjie Fu2022-06-06
| | | | | | | Add docs for max_frame_size option. Signed-off-by: Linjie Fu <linjie.fu@intel.com> Signed-off-by: Fei Wang <fei.w.wang@intel.com>
* lavc/vaapi_encode: add support for maxframesizeLinjie Fu2022-06-06
| | | | | | | | | | | | | | | | | | | | | | | | | | Add support for max frame size: - max_frame_size (bytes) to indicate the max allowed size for frame. Control each encoded frame size into target limitation size by adjusting whole frame's average QP value. The driver will use multi passes to adjust average QP setp by step to achieve the target, and the result may not strictly guaranteed. Frame size may exceed target alone with using the maximum average QP value. The failure always happens on the intra(especially the first intra frame of a new GOP) frames or set max_frame_size with a very small number. example cmdline: ffmpeg -hwaccel vaapi -vaapi_device /dev/dri/renderD128 -f rawvideo \ -v verbose -s:v 352x288 -i ./input.yuv -vf format=nv12,hwupload \ -c:v h264_vaapi -profile:v main -g 30 -rc_mode VBR -b:v 500k \ -bf 3 -max_frame_size 40000 -vframes 100 -y ./max_frame_size.h264 Max frame size was enabled since VA-API version (0, 33, 0), but query is available since (1, 5, 0). It will be passed as a parameter in picParam and should be set for each frame. Signed-off-by: Linjie Fu <linjie.fu@intel.com> Signed-off-by: Fei Wang <fei.w.wang@intel.com>
* avutil/avframe: fix channel layout checks in av_frame_copy()James Almer2022-06-05
| | | | | | | | | | | | | | | Normally, both the source and dest frame would have only the old API fields set, only the new API fields set, or both set. But in some cases, like when calling av_frame_ref() using a non reference counted source frame where only the old channel layout API fields were populated, the result would be the dst frame having both the new and old fields populated. This commit takes this into account and fixes the checks by calling av_channel_layout_compare() only if the source frame has the new API fields set, and doing sanity checks for the source frame old API fields if the new ones are not set. Signed-off-by: James Almer <jamrial@gmail.com>
* fate: add test for QOI formatPaul B Mahol2022-06-05
|
* avcodec: add QOI decoder and demuxer and parser and encoder and muxerPaul B Mahol2022-06-05
|
* lavfi/vf_tonemap_opencl: fix buildrcombs2022-06-01
| | | | This was broken in d42b410e05ad1c4d6e74aa981b4a4423103291fb.
* lavfi/vf_scale_vulkan: fix buildrcombs2022-06-01
| | | | This was broken in d42b410e05ad1c4d6e74aa981b4a4423103291fb.
* Makefile: avoid cp-ing over existing executable filesrcombs2022-06-01
| | | | | | | | | On macOS, code-signing information for executables (including those signed automatically by the linker) is cached by the system on a per-inode basis. The cp(1) tool will truncate and overwrite an existing file if present, so we need to delete it first to avoid strange crashes. See https://developer.apple.com/documentation/security/updating_mac_software
* lavc/h264_ps: always include the stop bit in [s|p]ps->datarcombs2022-06-01
| | | | | | | | The VideoToolbox hwaccel needs the entire NAL (including the stop bit), but ff_h2645_packet_split may remove it. Detect this case by looking for bit counts divisible by 8 and insert a stop-bit-only 0x80 byte. Signed-off-by: rcombs <rcombs@rcombs.me>
* lavc/videotoolboxdec: insert emu-prevention bytes for HEVC as wellrcombs2022-06-01
| | | | | | Fixes decoding of files with sync-fooling sequences in their PSs. Signed-off-by: rcombs <rcombs@rcombs.me>
* lavc/videotoolboxdec: fix writing too many 1 bits for the reserved fieldsrcombs2022-06-01
| | | | Signed-off-by: rcombs <rcombs@rcombs.me>
* lavc/videotoolboxdec: fix generating HEVC general_profile_compatibility_flagsrcombs2022-06-01
| | | | | | We store this as an array of bools, not a bitfield. Signed-off-by: rcombs <rcombs@rcombs.me>
* lavc/videotoolboxdec: fix escaping sequential zero sequencesrcombs2022-06-01
| | | | | | | This ensure that e.g. 0000000000 becomes 00000300 000300, rather than 00000300 0000. Signed-off-by: rcombs <rcombs@rcombs.me>