Commit Graph

4050 Commits

Author SHA1 Message Date
openvela-robot 8fd8af8355 ppc: Drop support for Apple GCC
Apple GCC has not been a thing anymore on PowerPC since many years.
2026-04-20 19:31:49 +08:00
openvela-robot 922276c34b x86inc: Add some additional cpuflag relations
Simplifies writing assembly code that depends on available instructions.

LZCNT implies SSE2
BMI1 implies AVX+LZCNT
AVX2 implies BMI2
2026-04-20 19:31:45 +08:00
openvela-robot 6b39e92993 Convert all AVClass struct declarations to designated initializers. 2026-04-20 19:31:42 +08:00
openvela-robot 6647d7daeb avcodec/cfhd: Check band parameters before storing them
Fixes out of array read
Fixes: 2169/clusterfuzz-testcase-minimized-5688641642823680

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:31:38 +08:00
openvela-robot 9c3e941c35 nvenc: Add default value for AVCodecContext::refs
AVCodecContext::refs is used to control the DPB size to be used by the
encoder. The default value for AVCodecContext::refs as set in
libavcodec/options_table.h is 1.

This patch sets AVCodecContext::refs to 0 for h264_nvenc and hevc_nvenc in
order to let the driver take the decision of the correct DPB size to use in
all cases.

Signed-off-by: Srinath K R <skr@nvidia.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2026-04-20 19:31:35 +08:00
openvela-robot 616227430e avfilter/af_sofalizer: switch to libmysofa
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:31:31 +08:00
wm4 530518a4d9 dxva: add support for new dxva2 and d3d11 hwaccel APIs
This also adds support to avconv (which is trivial due to the new
hwaccel API being generic enough).

The new decoder setup code in dxva2.c is significantly based on work by
Steve Lhomme <robux4@gmail.com>, but with heavy changes/rewrites.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2026-04-20 19:31:29 +08:00
openvela-robot 23b79b95b3 lavu: add new D3D11 pixfmt and hwcontext
To be used with the new d3d11 hwaccel decode API.

With the new hwaccel API, we don't want surfaces to depend on the
decoder (other than the required dimension and format). The old D3D11VA
pixfmt uses ID3D11VideoDecoderOutputView pointers, which include the
decoder configuration, and thus is incompatible with the new hwaccel
API. This patch introduces AV_PIX_FMT_D3D11, which uses ID3D11Texture2D
and an index. It's simpler and compatible with the new hwaccel API.

The introduced hwcontext supports only the new pixfmt.

Frame upload code untested.

Significantly based on work by Steve Lhomme <robux4@gmail.com>, but with
heavy changes/rewrites.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2026-04-20 19:31:28 +08:00
openvela-robot f98f936d75 libavfilter/scale2ref: Fix out-of-bounds array access
ff_scale_eval_dimensions blindly assumes that two inputs are always
available as of 3385989b98. This is
notably not the case when the function is called for the scale
filter. With the scale filter inputs[1] does not exist.

ff_scale_eval_dimensions now has an updated scale2ref check that
makes certain two inputs are actually available before attempting to
access the second one.

Thanks to James Almer for reporting this bug. This should fix the 820
Valgrind tests I single-handedly managed to break.

Signed-off-by: Kevin Mark <kmark937@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:31:21 +08:00
openvela-robot 79a43667a7 build: Add missing zlib dependencies for several protocols 2026-04-20 19:31:17 +08:00
openvela-robot 297f8ccb61 x86/aacpsdsp: optimize ff_ps_stereo_interpolate_sse3
Move the unpacking outside of the loop. 5% to 10% faster.

Suggested-by: ubitux
Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 19:31:14 +08:00
openvela-robot 487d321cac avutil/md5: fix misaligned reads
This makes ubsan happy and also considerably increases performance on
big endian systems.

Tested on an IBM POWER7 3.55 GHz

Before:

2.24user 0.14system 0:02.39elapsed 99%CPU (0avgtext+0avgdata 2624maxresident)k
2.26user 0.11system 0:02.38elapsed 99%CPU (0avgtext+0avgdata 2688maxresident)k
2.23user 0.15system 0:02.38elapsed 99%CPU (0avgtext+0avgdata 2624maxresident)k
2.25user 0.12system 0:02.38elapsed 100%CPU (0avgtext+0avgdata 2624maxresident)k
2.20user 0.15system 0:02.36elapsed 99%CPU (0avgtext+0avgdata 2624maxresident)k

After:

1.86user 0.13system 0:02.00elapsed 99%CPU (0avgtext+0avgdata 2624maxresident)k
1.89user 0.11system 0:02.01elapsed 99%CPU (0avgtext+0avgdata 2624maxresident)k
1.85user 0.14system 0:02.00elapsed 99%CPU (0avgtext+0avgdata 2624maxresident)k
1.84user 0.15system 0:01.99elapsed 99%CPU (0avgtext+0avgdata 2624maxresident)k
1.89user 0.13system 0:02.02elapsed 99%CPU (0avgtext+0avgdata 2688maxresident)k

Tested-by: Nicolas George <george@nsup.org>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Sean McGovern <gseanmcg@gmail.com>
2026-04-20 19:31:11 +08:00
openvela-robot 1f49d24247 x86/aacps: add ff_ps_stereo_interpolate_ipdopd_sse3()
About 2x faster than the c version.

Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 19:31:07 +08:00
openvela-robot 22c7276013 tls: Hide backend implementation details from users
TLS is currently implemented over either OpenSSL or GnuTLS, with more
backends likely to appear in the future. Currently, those backend libraries
are part of the protocol names used during e.g. the configure stage of a
build. Hide those details behind a generically-named declaration for the
TLS protocol to avoid leaking those details into the configuration stage.
2026-04-20 19:31:04 +08:00
openvela-robot cb35569ed6 checkasm: add _fixed suffix to fixed_dsp tests
Should prevents future conflicts with the similarly named floatdsp tests
2026-04-20 19:30:57 +08:00
openvela-robot 2663b69081 smacker: Improve error handling
Return sensible error values and forward error codes.
2026-04-20 19:30:46 +08:00
openvela-robot 0413c4d6d1 compat/cuda: make cuvidGetDecoderCaps optional 2026-04-20 19:30:43 +08:00
openvela-robot d15b6e7ea6 os_support: Remove the dynamic loading of getaddrinfo from the fallback getaddrinfo
If we for some unexplicable reason didn't pick up getaddrinfo
at configure, the default, IPv4-only, fallback should be good enough.

This effectively reverts 6023d84a2b.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:30:40 +08:00
openvela-robot 1dcc8d537b examples/encode_video: add log
This helps to visualize how the send/receive API works.
2026-04-20 19:30:36 +08:00
openvela-robot 61f36b04b0 hlsenc: Support recovery from an already present playlist
Parse the playlist to recover the start sequence and previously
generated segments and continue muxing from there.

Mainly useful for near-seamless recovery in live scenarios.
2026-04-20 19:30:33 +08:00
openvela-robot 49b979a213 configure: Fix the msvcrt version check for mingw32
This was actually broken when committed in 46e3936fb04; the
test never succeeded, and thus, _aligned_malloc wasn't actually
used on legacy mingw.

Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit 427f7a1f9e)
2026-04-20 19:30:30 +08:00
openvela-robot 40e9cda88d configure: Fix the msvcrt version check for mingw32
This was actually broken when committed in 46e3936fb04; the
test never succeeded, and thus, _aligned_malloc wasn't actually
used on legacy mingw.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:30:27 +08:00
openvela-robot a2da5d5492 avcodec/dds: Fix runtime error: left shift of 145 by 24 places cannot be represented in type 'int'
Fixes: 1891/clusterfuzz-testcase-minimized-6274417925554176

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:30:23 +08:00
openvela-robot b277c50a49 vaapi: Add ABGR map only if VA_FOURCC_ABGR is defined
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2026-04-20 19:30:20 +08:00
openvela-robot 9034342c7e avfilter/af_sidechaincompress: change default makeup gain to 1
This avoids producing out of range or clipped samples.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:29:57 +08:00
openvela-robot 42165a9f81 vp9_superframe_bsf: cache input packets directly
Avoids unnecessary allocs+copies and makes the code slightly simpler.
2026-04-20 19:29:54 +08:00
openvela-robot 3835a3c155 avcodec/mlpdec: Fix runtime error: left shift of negative value -1
Fixes: 1636/clusterfuzz-testcase-minimized-5310494757879808

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:29:32 +08:00
openvela-robot 700515e1f1 doc: Document hwupload, hwdownload and hwmap filters 2026-04-20 19:29:29 +08:00
openvela-robot abee26d60a avfilter/af_silenceremove: set output timestamps
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:29:11 +08:00
openvela-robot 261f0bffc9 movenc: Add an option for enabling negative CTS offsets
This reduces the need for an edit list; streams that start with
e.g. dts=-1, pts=0 can be encoded as dts=0, pts=0 (which is valid
in mov/mp4) by shifting the dts values of all packets forward.
This avoids the need for edit lists for such streams (while they
still are needed for audio streams with encoder delay).

This eases conformance with the DASH-IF interoperability guidelines.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:29:08 +08:00
openvela-robot 73fdf8ea30 videotoolbox: add hwcontext support
This adds tons of code for no other benefit than making VideoToolbox
support conform with the new hwaccel API (using hw_device_ctx and
hw_frames_ctx).

Since VideoToolbox decoding does not actually require the user to
allocate frames, the new code does mostly nothing.

One benefit is that ffmpeg_videotoolbox.c can be dropped once generic
hwaccel support for ffmpeg.c is merged from Libav.

Does not consider VDA or VideoToolbox encoding.

Fun fact: the frame transfer functions are copied from vaapi, as the
mapping makes copying generic boilerplate. Mapping itself is not
exported by the VT code, because I don't know how to test.
2026-04-20 19:29:04 +08:00
openvela-robot ee8efdd619 arm: Avoid using .dn register aliases
clang now (in the upcoming 5.0 version) is capable of building our
arm assembly without relying on gas-preprocessor, although clang/LLVM
doesn't support .dn register aliases.

The VC1 MC assembly was only built and used if the chosen assembler
supported the .dn directives though. This was supported as long as
gas-preprocessor was used.

This means that VC1 decoding got a speed regression on clang 5.0,
unless the user manually chose using gas-preprocessor again.

By avoiding using the .dn register aliases, we can build the VC1 MC
assembly with the latest clang version.

Support for the .dn/.qn directives in clang/LLVM isn't actively planned,
see https://bugs.llvm.org/show_bug.cgi?id=18199.

This partially reverts 896a5bff64.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:29:02 +08:00
openvela-robot c2e5802584 ffprobe: discard non-selected streams 2026-04-20 19:28:53 +08:00
openvela-robot 15582aaf26 mpjpeg: Use proper CR/LF in multipart headers
This is more correct.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:28:50 +08:00
openvela-robot dfbab19968 Changelog: mention afir addition
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:28:45 +08:00
openvela-robot 505fdad7b4 h264_refs: validate the SPS pointer in ff_h264_execute_ref_pic_marking()
Bug-Id: 1036
CC: libav-stable@libav.org
2026-04-20 19:28:42 +08:00
openvela-robot 7736b7fcdf avfilter/vf_histogram: actually add parade display mode
Rename previous parade mode to stack, what it really was from start.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:28:38 +08:00
openvela-robot 92ff62f6f6 hevcdec: remove HEVCContext usage from hevc_sei
Based on the H264 SEI implementation.

This will be mainly useful once support for SEI messages that can be
used by the hevc parser are implemented, like Picture Timing.

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2026-04-20 19:28:35 +08:00
openvela-robot d859fe0cb5 Merge commit '019ab88a95cb31b698506d90e8ce56695a7f1cc5'
* commit '019ab88a95cb31b698506d90e8ce56695a7f1cc5':
  lavc: add an option for exporting cropping information to the caller

Merged-by: James Almer <jamrial@gmail.com>
2026-04-20 19:28:32 +08:00
openvela-robot cd568566af Merge commit '52627248e49e58eb4b78e4fcda90a64f4c476ea3'
* commit '52627248e49e58eb4b78e4fcda90a64f4c476ea3':
  frame: add a cropping rectangle to AVFrame

Merged-by: James Almer <jamrial@gmail.com>
2026-04-20 19:28:31 +08:00
Clément Bœsch 4a8b0965e5 lavu/sha512: update length argument following sha+md5 changes 2026-04-20 19:28:14 +08:00
openvela-robot d9bf0e6137 Merge commit 'e435beb1ea5380a90774dbf51fdc8c941e486551'
* commit 'e435beb1ea5380a90774dbf51fdc8c941e486551':
  crypto: consistently use size_t as type for length parameters

Merged-by: Clément Bœsch <cboesch@gopro.com>
2026-04-20 19:28:14 +08:00
wm4 27473c3813 cuvid: support AVCodecContext.hw_device_ctx API
This is a newer API that is intended for decoders like the cuvid
wrapper. Until now, the wrapper required to set an awkward
"incomplete" hw_frames_ctx to set the device. Now the device
can be set directly, and the user can get AV_PIX_FMT_CUDA output
for a specific device simply by setting hw_device_ctx.

This still does a dummy ff_get_format() call at init time, and should
be fully backward compatible.
2026-04-20 19:27:33 +08:00
openvela-robot c7a7d4cdd5 avcodec/msvideo1: Check buffer size before re-getting the frame
Fixes timeout
Fixes: 1306/clusterfuzz-testcase-minimized-6152296217968640

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:27:32 +08:00
openvela-robot 5be1014ad0 hevc: 16x16 NEON idct: Use the right element size for loads/stores
This doesn't change the actual behaviour of the code but improves
readability.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:27:29 +08:00
openvela-robot bc5ca5a16f configure: fix libopus detection
Prevents compilation failures on libopus < 1.0.3
Regression since 37941878.
2026-04-20 19:27:26 +08:00
openvela-robot fce65aa9b2 aacsbr: Turnoff in the event of over read.
Aliased compressed AAC bytes are almost certainly not meaningful SBR
data. In the wild this causes harsh artifacts switching HE-AAC streams
that don't have SBR headers aligned with segment boundaries.

Turning off SBR falls back to a default set of upsampling parameters
that can function as a sort of error concealment. This is consistent
with how the decoder handles other sorts of errors.

Bug-Id: 1047
CC: libav-stable@libav.org

Signed-off-by: Sean McGovern <gseanmcg@gmail.com>
2026-04-20 19:27:23 +08:00
openvela-robot 99cb657c9d avfilter/interlace: add complex vertical low-pass filter
This complex (-1 2 6 2 -1) filter slightly less reduces interlace 'twitter' but better retain detail and subjective sharpness impression compared to the linear (1 2 1) filter.

Signed-off-by: Thomas Mundt <tmundt75@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 19:27:13 +08:00
openvela-robot 831a88377c vlc: Add header #include when the types are used
Do not rely on indirectly including it from bitstream.h.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2026-04-20 19:27:10 +08:00
openvela-robot cbff5f292a lavc/mips/hevc_idct_msa: Add missing const qualifier.
Fixes many warnings:
initialization discards 'const' qualifier from pointer target type
2026-04-20 19:27:06 +08:00
openvela-robot 7eca105221 hevc: Add NEON add_residual for bitdepth 10
Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:27:03 +08:00
openvela-robot 8cd8c9a1b7 avformat/matroskadec: export Content Light Level metadata
Based on a patch by Hendrik Leppkes

Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 19:26:59 +08:00
Mark Thompson 81c3acdb81 hwcontext: Improve allocation in derived contexts
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.
2026-04-20 19:26:56 +08:00
openvela-robot 53384f1e81 avconv_hw: Add implicit device creation with default parameters
If -hwaccel foo is supplied without any other device options, and the
foo hwaccel is meant to have a device, try to make such a device with
default parameters for the hwaccel to use.
2026-04-20 19:26:55 +08:00
openvela-robot c7b045bd38 Merge commit 'c2fa6bb0e8703a7a6aa10e11f9ab36094416d83f'
* commit 'c2fa6bb0e8703a7a6aa10e11f9ab36094416d83f':
  mpeg12dec: move setting first_field to mpeg_field_start()

This commit is a noop, see 2f6f2f4f73

Merged-by: James Almer <jamrial@gmail.com>
2026-04-20 19:26:52 +08:00
openvela-robot eac6455f41 vp9_raw_reorder_bsf: Remove a redundant allocation
This was left over from an earlier version which created the new
packet inside the current frame structure.  Now it just leaks an
unused packet, so remove the allocation entirely.
2026-04-20 19:26:49 +08:00
openvela-robot 9c96a53bd3 avfilter/lavfutils: use image2pipe demuxer on ff_load_image
allow protocols other than file to be used
for example, use data protocol to embed a file in script

Signed-off-by: Muhammad Faiz <mfcc64@gmail.com>
2026-04-20 19:26:41 +08:00
openvela-robot c8da68ac7b arm: hevc_idct: Tune the add_res_8x8 and add_res_32x32 functions
Before:              Cortex     A7      A8      A9     A53
hevc_add_res_8x8_8_neon:     116.0    58.7    80.2    90.7
hevc_add_res_32x32_8_neon:  1230.0   737.5  1187.5   974.4
After:
hevc_add_res_8x8_8_neon:      97.7    57.0    73.7    80.0
hevc_add_res_32x32_8_neon:  1216.0   698.7  1127.5   827.1

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:26:38 +08:00
openvela-robot d35a661176 avformat/hlsenc: hold old key info when append list
fix ticket id: #6353

Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2026-04-20 19:26:34 +08:00
openvela-robot c9b62626d7 spherical: add functions to retrieve and request projection names
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2026-04-20 19:26:31 +08:00
openvela-robot 9c0c87e6cd opus_pvq: minor cleanups
Removes unneeded variables, renames confusing and innacurate variables
and rewrites and slightly optimizes hadamard interleave/deinterleave
functions.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2026-04-20 19:26:27 +08:00
Mark Thompson eb88ff2e6f lavc: Add flag to allow profile mismatch with hardware decoding 2026-04-20 19:26:25 +08:00
openvela-robot 012e5f3d75 vaapi_encode: Use gop_size consistently in RC parameters
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.)
2026-04-20 19:26:24 +08:00
openvela-robot 5bfd18d3fa avcodec/nvenc: surface allocation reduction
This patch aims to reduce the number of input/output surfaces
NVENC allocates per session. Previous default sets allocated surfaces to 32
(unless there is user specified param or lookahead involved). Having large
number of surfaces consumes extra video memory (esp for higher resolution
encoding). The patch changes the surfaces calculation for default, B-frames,
lookahead scenario respectively.

The other change involves surface selection. Previously, if a session
allocates x surfaces, only x-1 surfaces are used (due to combination
of output delay and lock toggle logic). To prevent unused surfaces,
changing surface rotation to using predefined fifo.

Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2026-04-20 19:26:21 +08:00
openvela-robot fb28e66730 avfoundation: update to use AVCodecParameters 2026-04-20 19:26:18 +08:00
openvela-robot 422a1991f3 Merge commit '373fd76b4dbd9aa03ed28e502f33f2ca8c1ce19a'
* commit '373fd76b4dbd9aa03ed28e502f33f2ca8c1ce19a':
  hevcdec: do not set decoder-global SPS prematurely

Merged-by: Clément Bœsch <u@pkh.me>
2026-04-20 19:26:13 +08:00
openvela-robot 42155f8737 mlp: Drop ff_ prefix from a static function 2026-04-20 19:26:10 +08:00
openvela-robot 86925df79b Merge commit 'ee480790c7eeb03c9cebd8971c46e0cb7db65277'
* commit 'ee480790c7eeb03c9cebd8971c46e0cb7db65277':
  build: Add name parameter to check_lib() helper function

Merged-by: Clément Bœsch <u@pkh.me>
2026-04-20 19:25:56 +08:00
openvela-robot 289d32216c mlp: Rename the channel layout variable
Purely cosmetic change, will make code more readable once the new
channel layout takes over.
2026-04-20 19:25:53 +08:00
openvela-robot e8162bf00e Merge commit '86157e6db2c7a9222f77fa7e7f50fb9aebc3aa81'
* commit '86157e6db2c7a9222f77fa7e7f50fb9aebc3aa81':
  hevc: decouple calling get_format() from exporting the SPS parameters

See 786032cad8 (which has been reverted
and replaced with Anton's version to reduce diffs between the two
projects).

Merged-by: Clément Bœsch <u@pkh.me>
2026-04-20 19:25:37 +08:00
openvela-robot e97e881617 matroskaenc: don't warn about unknown spherical metadata when there isn't any
The same warning is issued when actual unknown spherical metadata is
found further down in the function.

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2026-04-20 19:25:34 +08:00
openvela-robot 62d3c4f631 avformat/concatdec: fix the h264 annexb extradata check
The start code can be either in the first three or four bytes.
2026-04-20 19:25:31 +08:00
openvela-robot d0269f487a hevc: Add NEON IDCT DC functions for bitdepth 8
Signed-off-by: Alexandra Hájková <alexandra@khirnov.net>
Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:25:28 +08:00
openvela-robot 9885ebbf5b avfilter/af_biquads: allow filtering only selected channels
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:25:23 +08:00
openvela-robot 512df17738 Add ClearVideo decoder
Only I-frames are decoded for now.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2026-04-20 19:25:20 +08:00
openvela-robot d7229702bd tools/target_dec_fuzzer: Remove FuzzerInterface.h dependancy
The header is not always available in the docker build environment

Suggested-by: Kostya Serebryany
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:25:17 +08:00
openvela-robot 22cca2dbae vc1dec: raise an error if sprite picture data is missing
Bug-Id: 1013
CC: libav-stable@libav.org
2026-04-20 19:25:13 +08:00
openvela-robot ad4ecf043d avfilter: add lumakey filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:25:10 +08:00
openvela-robot 246958d462 swscale-test: const correctness 2026-04-20 19:25:08 +08:00
openvela-robot 202bea6cb5 avformat/webmdashenc: Require the 'adaptation_sets' option to be set
This seems to be non-optional, and if the muxer is run without it,
strlen() is run on NULL, causing a segfault.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:24:57 +08:00
openvela-robot 365a162a2f flv: Validate the packet size
Size can be negative at that point.

Bug-Id: 1041
CC: libav-stable@libav.org
2026-04-20 19:24:54 +08:00
openvela-robot 09cc2633c9 avfilter/af_compand: Check av_strtok() for failure
Fixes CID1396256

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:24:51 +08:00
openvela-robot c566449ce3 dca: Account for lfe when checking for the channel count
Bug-Id: 1037
CC: libav-stable@libav.org
2026-04-20 19:24:49 +08:00
openvela-robot cf92d4a89c Merge commit '932cc6496ef6ab0e589ea51d3adefe5b7d7f1e2a'
* commit '932cc6496ef6ab0e589ea51d3adefe5b7d7f1e2a':
  vdpau: Do not #include vdpau_x11.h from the main vdpau header

Merged-by: Clément Bœsch <u@pkh.me>
2026-04-20 19:24:28 +08:00
openvela-robot 2bd3ddfefe swscale: Add gbrap10 output
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2026-04-20 19:24:17 +08:00
openvela-robot 60e5600b57 Merge commit '404cb74793284aa03e2e1a7e911c980c4cba0e9e'
* commit '404cb74793284aa03e2e1a7e911c980c4cba0e9e':
  configure: Pass CFLAGS_HEADERS through the right CFLAGS filter

Merged-by: James Almer <jamrial@gmail.com>
2026-04-20 19:23:46 +08:00
openvela-robot fc3f9b849f Add FM Screen Capture Codec decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2026-04-20 19:23:43 +08:00
openvela-robot 41510da941 configure: Fix decklink license dependency. 2026-04-20 19:23:39 +08:00
openvela-robot 01610cb3aa hevc: Add NEON 16x16 IDCT
The speedup vs C code is around 6-13x.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:23:36 +08:00
openvela-robot 5a444cb11f avfilter/vf_framerate: always request input if no output is provided in request_frame
Fixes ticket #6285.

Signed-off-by: Marton Balint <cus@passwd.hu>
2026-04-20 19:23:33 +08:00
openvela-robot 3210b0c8d1 ac3_parser: add a public function for parsing the data required by the demuxer
Make the current semi-public avpriv_ac3_parse_header() private to lavc.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2026-04-20 19:23:30 +08:00
Michael Niedermayer f55359bbc0 doc/APIchanges: Fill in missing fields
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:23:27 +08:00
Steven Liu d08d50d68f doc/APIChages: Add av_strireplace()
Add av_strireplace() into APIChanges

Reviewed-by: James Almer <jamrial@gmail.com>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2026-04-20 19:23:27 +08:00
openvela-robot d79fdc6fee Revert "avcodec/svq1: zero initialize entries array"
This reverts commit aed84ee4d1.

It is a false positive from Valgrind with recent GCC and
-funswitch-loops (present in -O3).
2026-04-20 19:23:25 +08:00
openvela-robot 70d9e7374d examples: Fixed and extended Doxygen documentation
Added parameter descriptions for all functions
 and converted in-function comments into regular
 (non-Doxygen) comments.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2026-04-20 19:23:23 +08:00
openvela-robot 6017cef3d3 avformat/movenc: auto insert vp9_superframe bsf when needed
Experimental VP9 support was added to the muxer recently.

Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 19:23:18 +08:00
openvela-robot 08724df39f lavfi: Drop unused and empty header file
This header was public but deprecated on 2013-04-11 (lavfi 3.8.0).
2026-04-20 19:23:15 +08:00
openvela-robot 1443c88e93 avfilter/vf_paletteuse: silence warning about misaligned indentation
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:23:12 +08:00
openvela-robot de0b685796 matroska: Read only the data written in the scratch buffer
The private buffer is 20bytes but depending on the type only 12 bytes
are actually filled.
2026-04-20 19:23:09 +08:00
Steve Lhomme 8aa3fe158c lavc: Add Content Light Level side metadata found in HEVC
These data are necessary when transmitting HDR over HDMI.

Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 19:22:13 +08:00
Steve Lhomme 2134af91b7 lavu: add support for Content Light Level side metadata
As found in HEVC.

Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 19:22:13 +08:00
openvela-robot a917b0c818 ffmpeg: make transcode_init_done atomic.
Should fix tsan warnings in fate-fifo-muxer-h264/wav:

WARNING: ThreadSanitizer: data race (pid=26552)
  Write of size 4 at 0x000001e0d7c0 by main thread:
    #0 transcode_init src/ffmpeg.c:3761 (ffmpeg+0x00000050ca1c)
[..]
  Previous read of size 4 at 0x000001e0d7c0 by thread T1:
    #0 decode_interrupt_cb src/ffmpeg.c:460 (ffmpeg+0x0000004fde19)
2026-04-20 19:21:14 +08:00
openvela-robot 42860e1e34 mov: Move code shared with CAF to a separate file 2026-04-20 19:21:11 +08:00
openvela-robot 3f0c389478 build: Add missing object dependency for extract_extradata bitstream filter
Cherry-picked from libav commit cfee5e1a0f

Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 19:21:08 +08:00
openvela-robot 611dd3323a vp9: Add bsf to fix reordering in raw streams
Takes a raw input stream containing frames with correct timestamps but
possibly out of order and inserts additional show-existing-frame
packets to correct the ordering.
2026-04-20 19:21:05 +08:00
openvela-robot 6d1cf434b6 Bump minor for 3.3
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:21:02 +08:00
openvela-robot 41355d04db pthread_frame: Propagate sw_pix_fmt across threads 2026-04-20 19:20:59 +08:00
openvela-robot 694825af65 Merge commit 'fe7bc1f16abaefe66d8a20f734ca3eb8a4ce4d43'
* commit 'fe7bc1f16abaefe66d8a20f734ca3eb8a4ce4d43':
  configure: Do not unconditionally check for (and enable) xlib

Merged-by: James Almer <jamrial@gmail.com>
2026-04-20 19:19:42 +08:00
openvela-robot 8708c05210 takdec: Use ISO C printf conversion specifiers where appropriate
libavformat/takdec.c:144:20: warning: format '%X' expects argument of type 'unsigned int', but argument 4 has type 'uint32_t'
2026-04-20 19:19:39 +08:00
James Almer 854e4d233f avutil/spherical: add av_spherical_projection_name()
Reviewed-by: Benoit Fouet <benoit.fouet@free.fr>
Reviewed-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 19:19:37 +08:00
Michael Niedermayer 9d763bfff3 doc/APIchanges: Update 2026-04-20 19:19:36 +08:00
openvela-robot f214de33b5 Merge commit 'd06aa24ba583ad08025da9e1b29afcd8218ff9b0'
* commit 'd06aa24ba583ad08025da9e1b29afcd8218ff9b0':
  hwcontext: Hardware frame mapping

Merged-by: Clément Bœsch <cboesch@gopro.com>
2026-04-20 19:19:00 +08:00
openvela-robot 176643688e Merge commit '7433feb82f75827884d909de34d341a1c4401d4a'
* commit '7433feb82f75827884d909de34d341a1c4401d4a':
  lavfi: Make default get_video_buffer work with hardware frames

Merged-by: Matthieu Bouron <matthieu.bouron@gmail.com>
2026-04-20 19:18:45 +08:00
openvela-robot 86a5435c0c dcadec: remove extra indirection
num_core_channels is always equal to s->audio_header.prim_channels,
neither one of those variables ever get changed.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2026-04-20 19:18:42 +08:00
Clément Bœsch a6855c5091 lavu: add av_fourcc_make_string() and av_fourcc2str() 2026-04-20 19:18:36 +08:00
openvela-robot 52703294f0 pthread_frame: minor simplification to error handling
Get rid of the "ret" variable, and always use err. Report the packet as
consumed if err is unset. This should be equivalent to the old code,
which obviously required err=0 for p->result>=0 (and otherwise,
p->result must have had the value err was last set to). The code block
added by commit 32a5b63126 is also not needed anymore, because the new
code strictly returns err if it's >=0.

Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
2026-04-20 19:18:21 +08:00
openvela-robot c52b990551 hevcdec: Use LOCAL_ALIGNED_* for declaring local variables with alignment
Not all compilers can do alignment larger than the normal stack alignment
for variables on the stack. In these cases, the LOCAL_ALIGNED_* macros
produce the workaround alignment wrapper consisting of a padded array
and a pointer variable.

This fixes the hevc fate tests on RVCT/ARMCC after adding IDCT assembly
that actually assumes/relies on this alignment.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:18:18 +08:00
openvela-robot 80f7e78d19 doc/examples/filtering_*: switch to codecpar 2026-04-20 19:18:13 +08:00
openvela-robot 1d997dddc0 jack: Drop support for old (2012) JACK versions 2026-04-20 19:17:59 +08:00
openvela-robot 59f3e047ea Merge commit 'b90c8a3d08e3f9ad4de1253376d2d1d93abb8b8c'
* commit 'b90c8a3d08e3f9ad4de1253376d2d1d93abb8b8c':
  fate: Add tests for mov display matrix

Adapted to use ffprobe -show_entries

Merged-by: James Almer <jamrial@gmail.com>
2026-04-20 19:17:54 +08:00
openvela-robot ba7919128a hwcontext: Move NONE to the be the first member of AVHWDeviceType
Also use that to fix a warning in av_hwdevice_get_type_name().
2026-04-20 19:17:51 +08:00
openvela-robot 630332e347 Merge commit 'c454dfcff90f0ed39c7b0d4e85664986a8b4476c'
* commit 'c454dfcff90f0ed39c7b0d4e85664986a8b4476c':
  Use ISO C printf conversion specifiers where appropriate

This commit is a noop, an equivalent patch is currently under review on
the mailing-list: http://ffmpeg.org/pipermail/ffmpeg-devel/2017-March/209239.html

Merged-by: Clément Bœsch <u@pkh.me>
2026-04-20 19:17:39 +08:00
openvela-robot 124bd8266b hevc: Add NEON 4x4 and 8x8 IDCT
Optimized by Martin Storsjö <martin@martin.st>.

The speedup vs C code is around 3.2-4.4x.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:17:36 +08:00
wm4 99483c7c04 avformat, ffmpeg: deprecate old rotation API
The old "API" that signaled rotation as a metadata value has been
replaced by DISPLAYMATRIX side data quite a while ago.

There is no reason to make muxers/demuxers/API users support both. In
addition, the metadata API is dangerous, as user tags could "leak" into
it, creating unintended features or bugs.

ffmpeg CLI has to be updated to use the new API. In particular, we must
not allow to leak the "rotate" tag into the muxer. Some muxers will
catch this properly (like mov), but others (like mkv) can add it as
generic tag. Note applications, which use libavformat and assume the
old rotate API, will interpret such "rotate" user tags as rotate
metadata (which it is not), and incorrectly rotate the video.

The ffmpeg/ffplay tools drop the use of the old API for muxing and
demuxing, as all muxers/demuxers support the new API. This will mean
that the tools will not mistakenly interpret per-track "rotate" user
tags as rotate metadata. It will _not_ be treated as regression.

Unfortunately, hacks have been added, that allow the user to override
rotation by setting metadata explicitly, e.g. via

  -metadata:s:v:0 rotate=0

See references to trac #4560. fate-filter-meta-4560-rotate0 tests this.
It's easier to adjust the hack for supporting it than arguing for its
removal, so ffmpeg CLI now explicitly catches this case, and essentially
replaces the "rotate" value with a display matrix side data. (It would
be easier for both user and implementation to create an explicit option
for rotation.)

When the code under FF_API_OLD_ROTATE_API is disabled, one FATE
reference file has to be updated (because "rotate" is not exported
anymore).

Tested-by: Michael Niedermayer <michael@niedermayer.cc>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:17:32 +08:00
openvela-robot 2c1d74ff88 avcodec/x86/idctdsp: Remove duplicate include
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:17:31 +08:00
openvela-robot 394fdfe5e0 nsvdec: don't ignore the return value of av_get_packet()
Fixes invalid reads with corrupted files.

CC: libav-stable@libav.org
Bug-Id: 1039
2026-04-20 19:17:29 +08:00
openvela-robot 1f12a8f3e6 fate: mask errors while constructing report files
The first case was forgotten in 89790ba2bf.

Note: build_only=yes is one of the case where hiding the errors makes
sense.
2026-04-20 19:17:25 +08:00
openvela-robot 006e67b07a configure: Skip check for inline assembly capabilities when explicitly disabled
Otherwise inline assembly may get enabled when disabled on the command line.
2026-04-20 19:17:22 +08:00
openvela-robot 3707a76a2f avcodec/tiff: Check geotag count for being non zero
Fixes memleak
Fixes: 874/clusterfuzz-testcase-5252796175613952

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:16:02 +08:00
Vittorio Giovara ed4c941c05 APIchanges: Update bump dates 2026-04-20 19:16:00 +08:00
openvela-robot b01540eb9d avplay: Use the named syntax for buffersrc arguments
Avoid confusion.
2026-04-20 19:15:59 +08:00
openvela-robot 405c00ba6e Merge commit '5cc0057f4910c8c72421b812c8f337ef6c43696c'
* commit '5cc0057f4910c8c72421b812c8f337ef6c43696c':
  lavu: remove the custom atomic API

This commit is a noop. The removal is postponed until all usages in
FFmpeg are dropped as well. A patchset is on discussion on the
mailing-list:
http://ffmpeg.org/pipermail/ffmpeg-devel/2017-March/209003.html

Merged-by: Clément Bœsch <u@pkh.me>
2026-04-20 19:15:36 +08:00
openvela-robot d5fd2361ca Bump major versions of all libraries
This disables everything that was deprecated at least 18 months ago.

Readjust the minimum API version as needed, postponing any
API-incompatible changes until the next bump.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2026-04-20 19:15:31 +08:00
wm4 c613a8d975 lavc: vdpau: Add support for new hw_frames_ctx and hw_device_ctx API
This supports retrieving the device from a provided hw_frames_ctx, and
automatically creating a hw_frames_ctx if hw_device_ctx is set.

The old API is not deprecated yet. The user can still use
av_vdpau_bind_context() (with or without setting hw_frames_ctx), or use
the API before that by allocating and setting hwaccel_context manually.

Cherry-picked from Libav commit 1a7ddba5.
(Adds missing APIchanges entry to the Libav version.)

Reviewed-by: Mark Thompson <sw@jkqxz.net>
2026-04-20 19:15:29 +08:00
wm4 65f3350a5e lavc: Add hwaccel_flags field to AVCodecContext
This "reuses" the flags introduced for the av_vdpau_bind_context() API
function, and makes them available to all hwaccels. This does not affect
the current vdpau API, as av_vdpau_bind_context() should obviously
override the AVCodecContext.hwaccel_flags flags for the sake of
compatibility.

Cherry-picked from Libav commit 16a163b5.

Reviewed-by: Mark Thompson <sw@jkqxz.net>
2026-04-20 19:15:28 +08:00
openvela-robot 71bfdd19ba fate: update ref file for apng-clock test 2026-04-20 19:15:12 +08:00
openvela-robot 5c9d437753 libavutil: Hook up the rest of the gcc specific attributes to clang as well
Hook up all attributes that don't have a MSVC specific version at the
moment.

See f637046d31 for details.

These don't seem to be critical for building with clang in MSVC mode
though, and thus haven't been hooked up until now.

These seem to build fine with as old clang as 3.3 at least.
(clang 3.3 disguises itself as gcc 4.2 normally, so all of these
have been used for clang before, except for av_cold.)

The clang version numbers themselves are useless for detecting what
attributes are available, since Apple's clang builds use a completely
different versioning (presenting itself as e.g. clang 8.0 instead
of 3.8).

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:15:09 +08:00
openvela-robot 1d18d2093b Merge commit '8ea35af7620e4f73f9e8c072e1c0fac9a04ec161'
* commit '8ea35af7620e4f73f9e8c072e1c0fac9a04ec161':
  avio: add a new flag for marking streams seekable by timestamp

Merged-by: James Almer <jamrial@gmail.com>
2026-04-20 19:15:02 +08:00
openvela-robot dfff387961 Merge commit 'e87a501e7d03ac68b58520108fe24ad9d0b36765'
* commit 'e87a501e7d03ac68b58520108fe24ad9d0b36765':
  swscale: Update bitdepth range check

This commit is a noop.

Up to 14 bits is supported since fa36f33422. This commits pushes the
limit to 15 bits but we don't seem to have pixel formats that enters in
that category.

12:03 <ubitux> so what's your opinion? should we move to 15 even if unused currently to make it consistent with libav and the function names, or keep our 14 suggesting there might be an issue with 15?
12:05 <ubitux> (functions are called hScale8To15_c, hScale16To15_c, ff_hscale8to15, ...)
12:06 <michaelni> I prefer to keep 14 until theres a case that allows us to test this and i suspect it will not work with 15 at least not all the code

Merged-by: Clément Bœsch <u@pkh.me>
2026-04-20 19:14:25 +08:00
openvela-robot 5ed9d31362 nvenc: Allow different const qps for I, P and B frames
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2026-04-20 19:14:22 +08:00
openvela-robot 59b4b5bf4b avcodec, avformat: deprecate anything related to side data merging
This patch deprecates anything that has to do with merging/splitting
side data. Automatic side data merging (and splitting), as well as all
API symbols involved in it, are removed completely.

Two FF_API_ defines are dedicated to deprecating API symbols related to
this: FF_API_MERGE_SD_API removes av_packet_split/merge_side_data in
libavcodec, and FF_API_LAVF_KEEPSIDE_FLAG deprecates
AVFMT_FLAG_KEEP_SIDE_DATA in libavformat.

Since it was claimed that changing the default from merging side data to
not doing it is an ABI change, there are two additional FF_API_ defines,
which stop using the side data merging/splitting by default (and remove
any code in avformat/avcodec doing this): FF_API_MERGE_SD in libavcodec,
and FF_API_LAVF_MERGE_SD in libavformat.

It is very much intended that FF_API_MERGE_SD and FF_API_LAVF_MERGE_SD
are quickly defined to 0 in the next ABI bump, while the API symbols are
retained for a longer time for the sake of compatibility.
AVFMT_FLAG_KEEP_SIDE_DATA will (very much intentionally) do nothing for
most of the time it will still be defined. Keep in mind that no code
exists that actually tries to unset this flag for any reason, nor does
such code need to exist. Code setting this flag explicitly will work as
before. Thus it's ok for AVFMT_FLAG_KEEP_SIDE_DATA to do nothing once
side data merging has been removed from libavformat.

In order to avoid that anyone in the future does this incorrectly, here
is a small guide how to update the internal code on bumps:

- next ABI bump (probably soon):
  - define FF_API_LAVF_MERGE_SD to 0, and remove all code covered by it
  - define FF_API_MERGE_SD to 0, and remove all code covered by it
- next API bump (typically two years in the future or so):
  - define FF_API_LAVF_KEEPSIDE_FLAG to 0, and remove all code covered
    by it
  - define FF_API_MERGE_SD_API to 0, and remove all code covered by it

This forces anyone who actually wants packet side data to temporarily
use deprecated API to get it all. If you ask me, this is batshit fucked
up crazy, but it's how we roll. Making AVFMT_FLAG_KEEP_SIDE_DATA to be
set by default was rejected as an ABI change, so I'm going all the way
to get rid of this once and for all.

Reviewed-by: James Almer <jamrial@gmail.com>
Reviewed-by: Rostislav Pehlivanov <atomnuker@gmail.com>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:14:17 +08:00
wm4 fb410c5e73 lavc: Add hwaccel_flags field to AVCodecContext
This "reuses" the flags introduced for the av_vdpau_bind_context() API
function, and makes them available to all hwaccels. This does not affect
the current vdpau API, as av_vdpau_bind_context() should obviously
override the AVCodecContext.hwaccel_flags flags for the sake of
compatibility.
2026-04-20 19:14:15 +08:00
Mark Thompson 3f6808ffc1 hwcontext: Make it easier to work with device types
Adds functions to convert to/from strings and a function to iterate
over all supported device types.  Also adds a new invalid type
AV_HWDEVICE_TYPE_NONE, which acts as a sentinel value.
2026-04-20 19:14:15 +08:00
openvela-robot 9ac52d3b26 hwcontext: Add device derivation
Creates a new device context from another of a different type which
refers to the same underlying hardware.
2026-04-20 19:14:14 +08:00
openvela-robot e0b8cee60d avcodec/vp9: avx2 implementation of ipred_dl_16x16_16
vp9_diag_downleft_16x16_10bpp_c: 263.0
vp9_diag_downleft_16x16_10bpp_sse2: 44.7
vp9_diag_downleft_16x16_10bpp_ssse3: 32.5
vp9_diag_downleft_16x16_10bpp_avx: 31.9
vp9_diag_downleft_16x16_10bpp_avx2: 25.7
vp9_diag_downleft_16x16_12bpp_c: 264.7
vp9_diag_downleft_16x16_12bpp_sse2: 44.4
vp9_diag_downleft_16x16_12bpp_ssse3: 32.0
vp9_diag_downleft_16x16_12bpp_avx: 32.4
vp9_diag_downleft_16x16_12bpp_avx2: 25.5

Benchmarked with 10000 runs

Signed-off-by: Ilia <zakne0ne@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2026-04-20 19:13:46 +08:00
openvela-robot cb962d440b build: Add missing object dependency for extract_extradata bitstream filter 2026-04-20 19:13:43 +08:00
openvela-robot e8e45548f8 Merge commit 'd7bc52bf456deba0f32d9fe5c288ec441f1ebef5'
* commit 'd7bc52bf456deba0f32d9fe5c288ec441f1ebef5':
  imgutils: add a function for copying image data from GPU mapped memory

Merged-by: Clément Bœsch <u@pkh.me>
2026-04-20 19:13:21 +08:00
Clément Bœsch c829fe0e31 doc/APIchanges: fill date & hash for AV_PIX_FMT_FLAG_BAYER 2026-04-20 19:13:14 +08:00
Clément Bœsch 6515f8c540 lavu: add AV_PIX_FMT_FLAG_BAYER 2026-04-20 19:13:11 +08:00
Rostislav Pehlivanov 77bc3fb90e lavfi: deprecate AVFilterGraph->resample_lavr_opts
Not used by anything at all since we don't auto insert lavr filters.

Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2026-04-20 19:11:59 +08:00