Commit Graph

892 Commits

Author SHA1 Message Date
openvela-robot 909af8cfa4 arm: vp9itxfm: Avoid reloading the idct32 coefficients
The idct32x32 function actually pushed q4-q7 onto the stack even
though it didn't clobber them; there are plenty of registers that
can be used to allow keeping all the idct coefficients in registers
without having to reload different subsets of them at different
stages in the transform.

Since the idct16 core transform avoids clobbering q4-q7 (but clobbers
q2-q3 instead, to avoid needing to back up and restore q4-q7 at all
in the idct16 function), and the lanewise vmul needs a register in
the q0-q3 range, we move the stored coefficients from q2-q3 into q4-q5
while doing idct16.

While keeping these coefficients in registers, we still can skip pushing
q7.

Before:                              Cortex A7       A8       A9      A53
vp9_inv_dct_dct_32x32_sub32_add_neon:  18553.8  17182.7  14303.3  12089.7
After:
vp9_inv_dct_dct_32x32_sub32_add_neon:  18470.3  16717.7  14173.6  11860.8

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:08:36 +08:00
openvela-robot b5b838658e MAINTAINERS: Add ffmpeg-security alias members
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:08:31 +08:00
openvela-robot 622bfee9f2 fate: Update fate-lavf-mkv after commit 5d3953a5dc 2026-04-20 19:08:28 +08:00
openvela-robot 4e0971635d avcodec/qdrw: don't overwrite bpp when checking its value
Finishes fixing ticket #6171
2026-04-20 19:08:25 +08:00
openvela-robot 2c0e739a45 fate: Add webp alpha test 2026-04-20 19:08:22 +08:00
openvela-robot 05fe89a970 lavd/opengl_enc: Support BGR48. 2026-04-20 19:08:19 +08:00
openvela-robot 9a8e0306a8 matroskaenc: factor ts_offset into block timecode computation
ts_offset was added to cluster timecode, but then effectively subtracted
back off the block timecode

When setting initial_padding for an audio stream, the timestamps are
written incorrectly to the mkv file.  cluster timecode gets written
as pts0 + ts_offset which is correct, but then block timecode gets
written as pts - cluster timecode which expanded is
pts - (pts0 + ts_offset).  Adding cluster and block tc back together:
cluster + block = (pts0 + ts_offset) + (pts - (pts0 + ts_offset)) = pts
But the result should be pts + ts_offset since demux will subtract the
CodecDelay element from pts and set initial_padding to CodecDelay.
This patch gives the correct result.
2026-04-20 19:08:16 +08:00
openvela-robot f6ea469a16 avformat/hlsenc: fix cid 1401346 Dereferencing pointer error
check if proto is null before av_strcasecmp
CID:  1401346

Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2026-04-20 19:08:12 +08:00
openvela-robot 6f9d0abff0 build: Drop leftover reference to old EXAMPLES logic 2026-04-20 19:08:09 +08:00
openvela-robot 443856bdac avcodec/nvenc: allow forcing keyframes by default 2026-04-20 19:08:05 +08:00
openvela-robot 0a74ed87f2 configure: Explicitly spell out first require_pkg_config() parameter
This is less confusing than encountering "" in the argument list.
2026-04-20 19:07:54 +08:00
openvela-robot 1f8d2ca7ab avcodec/pictordec: Do not read more than nb_planes
Fixes undefined behavior
Fixes: 622/clusterfuzz-testcase-5745722022428672

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:07:48 +08:00
openvela-robot 3af3e76266 dv: Don't return EIO upon EOF 2026-04-20 19:07:46 +08:00
openvela-robot 70386d997e opusenc: initialize the emphasis coefficients on init
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2026-04-20 19:07:40 +08:00
openvela-robot 71067418e7 vf_deinterlace_vaapi: Create filter buffer after context
The Intel proprietary VAAPI driver enforces the restriction that a
buffer must be created inside an existing context, so just ensure
this is always true.
2026-04-20 19:07:38 +08:00
Mark Thompson 6e61fd0b9c vaapi_encode: Discard output buffer if picture submission fails
Previously this was leaking, though it actually hit an assert making
sure that the buffer had already been cleared when freeing the picture.
2026-04-20 19:07:34 +08:00
openvela-robot 990bf77324 lavc/vda_h264_dec.c Fix NULL pointer dereference
ps.sps_list entries may be NULL, so check before dereferencing

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:07:34 +08:00
openvela-robot 03a54b95ff vf_fade: Make sure to not miss the last lines of a frame
When slice_h is rounded up due to chroma subsampling, there's
a risk that jobnr * slice_h exceeds frame->height.

Prior to a638e9184d, this wasn't an issue for the last slice
of a frame, since slice_end was set to frame->height for the last
slice.

a638e9184d tried to fix the case where other slices than the
last one would exceed frame->height (which can happen where the
number of slices/threads is very large compared to the frame
height).

However, the fix in a638e9184d instead broke other cases,
where slice_h * nb_threads < frame->height. Therefore, make
sure the last slice always ends at frame->height.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:07:31 +08:00
openvela-robot 1217af5f73 swr/aarch64: add missing ret to ff_resample_common_apply_filter_x8_float_neon 2026-04-20 19:07:28 +08:00
openvela-robot 68e4d25778 configure: Handle SDL version check through pkg-config 2026-04-20 19:07:25 +08:00
openvela-robot 0f33400874 opusenc: fix coarse energy quantization with 2 bits left
Fixes CID1400584

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2026-04-20 19:07:22 +08:00
openvela-robot 9925916650 avconv: Move rescale to stream timebase before monotonisation
If the stream timebase is coarser than the muxing timebase then the
monotonisation process may fail because adding one to the timestamp
need not actually produce a different timestamp after the rescale.
2026-04-20 19:07:19 +08:00
openvela-robot b381010255 opus_pvq: fix uninitialized variable usage
Fixes CID1400586

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2026-04-20 19:07:16 +08:00
openvela-robot 915d0ab882 libopenh264dec: Let the framework use the h264_mp4toannexb bitstream filter
This avoids a lot of boilerplate code within the decoder wrapper itself.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:07:13 +08:00
openvela-robot c4c5966137 adpcm: fix clipping for yamaha
According to specification max value allowed is 0x6000.
Fixes #5862.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:07:10 +08:00
openvela-robot 45a4a4d378 mov: Do not try to parse multiple stsd for the same track
Bug-Id: 1017
CC: libav-stable@libav.org

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2026-04-20 19:07:07 +08:00
openvela-robot 157170c0bb doc/protocols: add option usage description
Fixes ticket #6148.

Signed-off-by: Lou Logan <lou@lrcd.com>
2026-04-20 19:07:02 +08:00
openvela-robot fc1defe9d0 lavc: Add device context field to AVCodecContext
For use by codec implementations which can allocate frames internally.
2026-04-20 19:06:59 +08:00
openvela-robot e1d5d262b6 avcodec: add FM Screen Capture Codec decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:06:55 +08:00
openvela-robot 65aa808230 aac: Validate the sbr sample rate before using the value
Avoid a floating point exception.

Bug-Id: 1027
CC: libav-stable@libav.org
2026-04-20 19:06:52 +08:00
openvela-robot d3956f0756 lavf/omadec: Remove an unsed variable. 2026-04-20 19:06:49 +08:00
openvela-robot b445829464 configure: Move up the avbuild directory creation
The early check for inconsistent in-source vs out-of-source build
cannot generate a config.log otherwise.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2026-04-20 19:06:46 +08:00
openvela-robot 949bb9d217 avcodec: add ATRAC Advanced Lossless decoders
Only lossy part is decoded for now.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:06:43 +08:00
openvela-robot 5dacc884ef avio: add a destructor for AVIOContext
Before this commit, AVIOContext is to be freed with a plain av_free(),
which prevents us from adding any deeper structure to it.
2026-04-20 19:06:40 +08:00
openvela-robot 8779b5534c avformat/apetag: fix flag value to signal footer presence
According to the spec[1], a value of 0 means the footer is present and a value
of 1 means it's absent, the exact opposite of header presence flag where 1
means present and 0 absent.
The reason for this is compatibility with APEv1 tags, where there's no header,
footer presence was mandatory for all files, and the flags field was a zeroed
reserved field.

[1] http://wiki.hydrogenaud.io/index.php?title=Ape_Tags_Flags

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 19:06:36 +08:00
openvela-robot a4cd493b97 mov: Rework stsc index validation
In order to avoid potential integer overflow change the comparison
and make sure to use the same unsigned type for both elements.
2026-04-20 19:06:33 +08:00
openvela-robot 16a288a167 avcodec/qdmc: silence gcc 6.2.0 warning
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:06:30 +08:00
openvela-robot 48a43faaaf hlsenc: Correctly write down all 16 bytes in hex
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2026-04-20 19:06:27 +08:00
openvela-robot e6a63e9305 lavf/mov.c: Avoid OOB in mov_read_udta_string()
Core of patch is from paul@paulmehta.com
Reference https://crbug.com/643952 (udta_string portion)

Signed-off-by: Matt Wolenetz <wolenetz@chromium.org>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:06:24 +08:00
openvela-robot 9a1285a82c utvideodec: Add a missing include
This was missing from 77c23704c7, fixing building.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:06:09 +08:00
openvela-robot 23ae923998 avcodec/mjpegenc: Remove non functional huffman reallocation and error handling
If this is wanted iam not against it but it must be designed to work with all cases
like slice threads, and a single growing buffer does not work very well with slices.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:06:06 +08:00
openvela-robot d2dd2c373c avcodec: Mark some codecs with threadsafe init as such
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2026-04-20 19:06:03 +08:00
openvela-robot a020ff7f24 ffplay: change keyboard volume control to logarithmic
The command line parameter remains linear.

Signed-off-by: Marton Balint <cus@passwd.hu>
2026-04-20 19:05:58 +08:00
openvela-robot 2fe1a1b662 configure: Correctly recurse in do_check_deps()
Fixes all sorts of configuration problems introducec by dad7a9c7c0
on non-Linux or non-vanilla configs. Also removes a line made redundant
in that commit.
2026-04-20 19:05:56 +08:00
Mark Thompson 9a14a42f92 vaapi_encode: Pass framerate parameters to driver
Only do this when building for a recent VAAPI version - initial
driver implementations were confused about the interpretation of the
framerate field, but hopefully this will be consistent everywhere
once 0.40.0 is released.

(cherry picked from commit ff35aa8ca4)
2026-04-20 19:05:53 +08:00
Mark Thompson e87985bbfa vaapi_encode: Support VBR mode
This includes a backward-compatibility hack to choose CBR anyway on
old drivers which have no CBR support, so that existing programs will
continue to work their options now map to VBR.

(cherry picked from commit f033ba470f)
2026-04-20 19:05:53 +08:00
Mark Thompson 4f47e2a871 vaapi_encode: Add MPEG-2 support
(cherry picked from commit ca6ae3b77a)
2026-04-20 19:05:53 +08:00
Mark Thompson f91c4331dc vaapi_encode: Support forcing IDR frames via AVFrame.pict_type
(cherry picked from commit a3c3a5eac2)
2026-04-20 19:05:53 +08:00
Mark Thompson 34606a3650 vaapi_encode: Fix GOP sizing
This change makes the configured GOP size be respected exactly -
previously the value could be exceeded slightly due to flaws in the
frame type selection logic.

(cherry picked from commit 37fab0661a)
2026-04-20 19:05:53 +08:00
openvela-robot 0c3d38b98c avcodec/pictordec: Fix logic error
Fixes: 559/clusterfuzz-testcase-6424225917173760

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:05:51 +08:00
openvela-robot 7966340226 Use bitstream_init8() where appropriate 2026-04-20 19:05:48 +08:00
openvela-robot 588c4de169 configure: use dashes instead of slashes in lib.exe invocation
This avoids issues with wrong parameter translation by msys on some systems,
and the Windows SDK tools accept both forms equally.
2026-04-20 19:05:45 +08:00
openvela-robot 0fc3a50557 wma: Convert to the new bitstream reader 2026-04-20 19:05:42 +08:00
openvela-robot 503cbe6501 avcodec/mpc8: use init_get_bits8()
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:05:36 +08:00
openvela-robot 6dcf5385dc rtmp: Correctly handle the Window Acknowledgement Size packets
This swaps which field is set when the Window Acknowledgement Size
and Set Peer BW packets are received, renames the fields in
order to clarify their role further and adds verbose comments
explaining their respective roles and how well the code currently
does what it is supposed to.

The Set Peer BW packet tells the receiver of the packet (which
can be either client or server) that it should not send more data
if it already has sent more data than the specified number of bytes,
without receiving acknowledgement for them. Actually checking this
limit is currently not implemented.

In order to be able to check that properly, one can send the
Window Acknowledgement Size packet, which tells the receiver of the
packet that it needs to send Acknowledgement packets
(RTMP_PT_BYTES_READ) at least after receiving a given number of bytes
since the last Acknowledgement.

Therefore, when we receive a Window Acknowledgement Size packet,
this sets the maximum number of bytes we can receive without sending
an Acknowledgement; therefore when handling this packet we should set
the receive_report_size field (previously client_report_size).

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:05:33 +08:00
openvela-robot 50bfbc45e6 avfilter/scale: refactor common code for scaling height/width expressions
Implements support for height/width expressions in vf_scale_vaapi,
by refactoring common code into a new libavfilter/scale.c

Signed-off-by: Mark Thompson <sw@jkqxz.net>
2026-04-20 19:05:30 +08:00
openvela-robot 374fb35779 svq3: Convert to the new bitstream reader 2026-04-20 19:05:27 +08:00
openvela-robot 9fa7ea5d9f avcodec/dca_lbr: Fix off by 1 error in freq check
Fixes out of array read
Fixes: 510/clusterfuzz-testcase-5737865715646464

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:05:24 +08:00
openvela-robot 02a42ad43d configure: Add proper weak dependency of drawtext filter on libfontconfig 2026-04-20 19:05:21 +08:00
openvela-robot 358c283457 Merge commit 'd639dcdae022130078c9c84b7b691c5e9694786c'
* commit 'd639dcdae022130078c9c84b7b691c5e9694786c':
  ratecontrol: Move Xvid-related functions to the place they are actually used

Merged-by: Clément Bœsch <u@pkh.me>
2026-04-20 19:05:08 +08:00
Anton Khirnov e7b5385ba7 Mark some arrays that never change as const. 2026-04-20 19:05:06 +08:00
openvela-robot beb3a2761e avconv: allow -b to be used with streamcopy
In this mode it tells the muxer about the bitrate of the input stream.
2026-04-20 19:05:05 +08:00
openvela-robot 669e2a09a5 MAINTAINERS: Add myself for boadec.c
It seems ive written this thing though i cannot really remember

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:04:51 +08:00
openvela-robot 69e54e5471 golomb: Convert to the new bitstream reader 2026-04-20 19:04:47 +08:00
openvela-robot 293a53db63 ircamdec: prevent overflow during block alignment calculation
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2026-04-20 19:04:18 +08:00
Mark Thompson 4010cce8f2 vaapi_encode: Pass framerate parameters to driver
Only do this when building for a recent VAAPI version - initial
driver implementations were confused about the interpretation of the
framerate field, but hopefully this will be consistent everywhere
once 0.40.0 is released.
2026-04-20 19:04:16 +08:00
Mark Thompson 0743000067 vaapi_encode: Support VBR mode
This includes a backward-compatibility hack to choose CBR anyway on
old drivers which have no CBR support, so that existing programs will
continue to work their options now map to VBR.
2026-04-20 19:04:16 +08:00
openvela-robot 955415d61f dashenc: add support for assigning streams to AdaptationSets
Also makes sure all streams are assigned to exactly one AdaptationSet.

This patch is originally based partially on code by Vignesh Venkatasubramanian.

Signed-off-by: Peter Große <pegro@friiks.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:04:15 +08:00
openvela-robot 3721a36217 avformat/mov: Fix integer truncation in mov_read_uuid()
Fixes Ticket6102

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:04:12 +08:00
openvela-robot b6a45d6d0a dashenc: add option to provide UTC timing source
If set, adds a UTCTiming tag in the manifest.

This is part of the recommendations listed in the "Guidelines for
Implementations: DASH-IF Interoperability Points" [1][2]
Section 4.7 describes means for the Availability Time Synchronization.

A usable default is "https://time.akamai.com/?iso"

[1] http://dashif.org/guidelines/
[2] http://dashif.org/wp-content/uploads/2016/12/DASH-IF-IOP-v4.0-clean.pdf
    (current version as of writing)

Signed-off-by: Peter Große <pegro@friiks.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:04:09 +08:00
openvela-robot e982e6747f lavfi: make ff_framequeue_skip_samples() more useful.
Instead of just updating statistics and leaving the work to the
call site, have it actually do the work.

Also: skip the samples by updating the frame data pointers
instead of moving the samples. More efficient and avoid writing
into shared frames.
Found-By: Muhammad Faiz <mfcc64@gmail.com>
2026-04-20 19:04:05 +08:00
openvela-robot 3d7ac5a234 rtmp: Account for bytes_read wraparound
Servers seem to be happy to receive the wrapped-around value as long
as they receive a report, otherwise they timeout.

Initially reported and analyzed by Thomas Bernhard.
2026-04-20 19:04:02 +08:00
openvela-robot e31a7561e9 doc/examples/decoder_targeted: Disable error concealment after 20 frames
This allows testing EC and non EC. Avoids spending most time in EC on
high res samples and reduces the likelyhood of hitting timeouts

Fixes: Timeout in 467/fuzz-2-ffmpeg_VIDEO_AV_CODEC_ID_H263_fuzzer

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:03:59 +08:00
openvela-robot c8a6da62c6 vaapi_encode: Add MPEG-2 support 2026-04-20 19:03:56 +08:00
openvela-robot dd0efe6690 avfilter/avf_showspectrum: fix 2 possible crashes
Make sure no division by zero is done.
Make sure there are actually samples available.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:03:52 +08:00
openvela-robot 0ae32f761e dashenc: add mandatory id to AdaptationSet and Period in manifest
Signed-off-by: Peter Große <pegro@friiks.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:03:49 +08:00
openvela-robot c4f0c880de avfilter: add abitscope multimedia filter
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:03:46 +08:00
openvela-robot f10d3d3e4c fifo: Return the correct AVERROR value 2026-04-20 19:03:43 +08:00
openvela-robot a8e4fdc797 ffmpeg_opt.c: Introduce a -vstats_version option and document the existing -vstats format.
Signed-off-by: Sasi Inguva <isasi@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:03:40 +08:00
openvela-robot 93c2c9d61e configure: Move optflags checks to a more sensible place 2026-04-20 19:03:37 +08:00
openvela-robot 575008de31 lavf/mov: Unscramble dref debug output. 2026-04-20 19:03:34 +08:00
openvela-robot 163c8ec96e mpc: Convert to the new bitstream reader 2026-04-20 19:03:31 +08:00
openvela-robot a843c3c930 avformat/hlsenc: improve to write m3u8 head block
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2026-04-20 19:03:17 +08:00
openvela-robot 3d16fef69c swscale-test: const correctness for pointer variable
libswscale/swscale-test.c:369:20: warning: passing argument 2 of ‘sws_scale’ from incompatible pointer type [-Wincompatible-pointer-types]
libswscale/swscale.h:207:5: note: expected ‘const uint8_t * const* {aka const unsigned char * const*}’ but argument is of type ‘uint8_t ** {aka unsigned char **}’
2026-04-20 19:03:15 +08:00
openvela-robot dc5c2bf943 avcodec/nvenc: make gpu indices independend of supported capabilities 2026-04-20 19:03:09 +08:00
openvela-robot 0550ac3c7d apedec: Convert to the new bitstream reader 2026-04-20 19:03:06 +08:00
openvela-robot d75862f27e avcodec/wmapro: redone stream selection for XMA1/2
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:03:02 +08:00
openvela-robot 14f8b0924c hevc: Mark as having threadsafe init
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2026-04-20 19:02:51 +08:00
openvela-robot 752e94aa47 Merge commit 'f450cc7bc595155bacdb9f5d2414a076ccf81b4a'
* commit 'f450cc7bc595155bacdb9f5d2414a076ccf81b4a':
  h264: eliminate decode_postinit()

Also includes fixes from 1f7b4f9abc and e344e65109.

Original patch replace H264Context.next_output_pic (H264Picture *) by
H264Context.output_frame (AVFrame *). This change is discarded as it
is incompatible with the frame reconstruction and motion vectors
display code which needs the extra information from the H264Picture.

Merged-by: Clément Bœsch <u@pkh.me>
Merged-by: Matthieu Bouron <matthieu.bouron@gmail.com>
2026-04-20 19:02:43 +08:00
openvela-robot 8f90452138 nvenc: Explicitly push the cuda context on encoding
Make sure that NVENC does not misbehave if other cuda usages happen
in the application.
2026-04-20 19:02:41 +08:00
openvela-robot d1cec3529b speedhq: Align blocks variable properly.
Seemingly ff_clear_block_sse assumed that the block array is aligned,
so make sure it is.

Fixes ticket #6079

Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 19:02:35 +08:00
openvela-robot 2b1eafd03d qsv: Set the correct range for la_depth
Setting an invalid range for it makes the encoder behave inconsistently.
2026-04-20 19:02:32 +08:00
openvela-robot 0cfbd98cdd libavfilter/af_biquads: warn about clipping only after frame with clipping 2026-04-20 19:02:28 +08:00
openvela-robot da67ce9489 dxva2: get the slice number directly from the surface in D3D11VA
No need to loop through the known surfaces, we'll use the requested surface
anyway.

The loop is only done for DXVA2.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2026-04-20 19:02:24 +08:00
openvela-robot c6eabce579 avformat/hlsenc: hls_start_number_source and start_number
start_number option starts the playlist sequence number
(#EXT-X-MEDIA-SEQUENCE) from the specified number. Unless hls_flags
single_file is set, it also specifies starting sequence numbers of
segment and subtitle filenames. Sometimes it is usefull to have unique
starting numbers at each run, but currently it is only achiveable by
setting this parameter manually.
This patch enables to specify start_number source parameter by
introducing hls_start_number_source with 3 possible values:
generic/epoch/datetime. This ensures to set start sequence number
automatically for practically unique numbers. Generic option is the
default and this is the curent behaviour: start_number option value
specifies the start sequence number. (start_number default value is 0)
If hls_start_number_source is set to epoch, then the start number will
be the seconds since epoch (1970-01-01 00:00:00). If set to datetime,
then the start sequence number will be based on the current date/time
value as YYYYmmddHHMMSS. e.g. 20161231235659.
Hls speficication allows 64 bit integers as sequence numbers. This patch
also changes some code where only 32 bit integer values were handled
correctly.

Reviewed-by: Moritz Barsnick <barsnick@gmx.net>
Signed-off-by: Bela Bodecs <bodecsb@vivanet.hu>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2026-04-20 19:02:19 +08:00
openvela-robot cf60959f32 build: Remove stray duplicate conditional variable declaration 2026-04-20 19:02:17 +08:00
Mark Thompson ebaf36e5f1 vaapi_encode: Support forcing IDR frames via AVFrame.pict_type 2026-04-20 19:02:14 +08:00
Mark Thompson 9ceeaf4da7 vaapi_encode: Fix GOP sizing
This change makes the configured GOP size be respected exactly -
previously the value could be exceeded slightly due to flaws in the
frame type selection logic.
2026-04-20 19:02:14 +08:00
openvela-robot d94c101902 x86inc: Avoid using eax/rax for storing the stack pointer
When allocating stack space with an alignment requirement that is larger
than the current stack alignment we need to store a copy of the original
stack pointer in order to be able to restore it later.

If we chose to use another register for this purpose we should not pick
eax/rax since it can be overwritten as a return value.
2026-04-20 19:02:11 +08:00
openvela-robot 580329038f hevcdec: add P010 support for D3D11VA
Given it's the same API than DVXA2 I don't know why the same output was not
enabled for both.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2026-04-20 19:02:08 +08:00
openvela-robot 1eb0b327fe avfilter/af_dynaudnorm: fix hang with too short input
The only thing we can do at such point is return samples unchanged.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:02:05 +08:00
openvela-robot 768ddb2a07 dxva2: Make ff_dxva2_get_surface() static and drop its name prefix
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2026-04-20 19:02:02 +08:00
openvela-robot 988be4d562 avformat/hlsenc: fix memleak in hlsenc
fix CID: 1398364 Resource leak
refine the code of the new options

Reviewed-by: Bodecs Bela <bodecsb@vivanet.hu>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2026-04-20 19:01:57 +08:00
openvela-robot f155125d6d matroskadec: make sure not to leave EbmlBin in an inconsistent state
If a read fails, the current code will free the data but leave the size
non-zero. Make sure the size is zeroed in such a case.

CC: libav-stable@libav.org
Bug-Id: 1001
Found-By: Kamil Frankowicz
Signed-off-by: Sean McGovern <gseanmcg@gmail.com>
2026-04-20 19:01:55 +08:00
openvela-robot 3fc371ed43 avformat/hlsenc: bugfix in duplicate filename detection
A wrong, unitialized variable is used for testing. This patch fixes this
typo.

Signed-off-by: Bela Bodecs <bodecsb@vivanet.hu>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2026-04-20 19:01:52 +08:00
openvela-robot 5a9f061102 vaapi_h265: Fix build failure with old libva without 10-bit surfaces
10-bit surface support was added in libva 1.6.2, earlier versions
support H.265 encoding in 8-bit only.
2026-04-20 19:01:49 +08:00
openvela-robot 3a464c7ec6 avformat/avidec: clean-up identifier names
Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:01:46 +08:00
openvela-robot 369baf4c3e arm: vp9mc: Fix vertical alignment of operands
Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:01:43 +08:00
openvela-robot 500835e60d avutil/tests: added selftest for aes_ctr.c
Signed-off-by: Thomas Turner <thomastdt@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:01:39 +08:00
openvela-robot a0c9c6ff2d cmdutils: update copyright year to 2017
CC: libav-stable@libav.org
2026-04-20 19:01:36 +08:00
openvela-robot d4a30c5d94 avcodec/mjpegdec: Check for rgb before flipping
Fixes assertion failure due to unsupported case

Fixes: 356/fuzz-1-ffmpeg_VIDEO_AV_CODEC_ID_MJPEG_fuzzer
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:01:32 +08:00
openvela-robot 7f1b6b9b7c configure: Fix typo in incdir variable written to config.sh
This fixes includedir lines in pkg-config files broken after 92db508307.
2026-04-20 19:01:29 +08:00
openvela-robot 6c3d0c68f2 lavf/utils.c Protect against accessing entries[nb_entries]
In ff_index_search_timestamp(), if b == num_entries,
m == num_entries - 1, and entries[m].flags & AVINDEX_DISCARD_FRAME is
true, then the search for the next non-discarded packet could access
entries[nb_entries], exceeding its bounds. This change adds a protection
against that scenario. Reference: https://crbug.com/666770

Reviewed-by: Sasi Inguva <isasi@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:01:16 +08:00
openvela-robot 590671bf7a fate: Unset the sig variable if ignoring a test failure
Otherwise the .rep file would still contain a signal instead of a
zero, even if the process returned success.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:01:12 +08:00
openvela-robot 4af1c0d379 ffmpeg: remove stop_encoding variable and related code, it is dead / unused code
Fixes: CID1396243

Reviewed-by: compn <tempn@mi.rr.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:01:09 +08:00
openvela-robot b9567a0f9f build: Add version numbers to "Requires" entries in pkg-config files
The (required) version numbers disappeared after edb4348732.
2026-04-20 19:01:06 +08:00
openvela-robot 281a41fd97 avfilter/vf_w3fdif: add >8 but <16 bit support
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:01:00 +08:00
openvela-robot 245eece554 matroskadec: fix SRT subtitle duration
The codec id for SRT was changed and conditionals were not updated.
2026-04-20 19:00:58 +08:00
openvela-robot d3aa40c161 avutil/tests/random_seed: eliminate goto
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:00:54 +08:00
openvela-robot 4c57b356bd Use correct printf conversion specifiers for POSIX integer types 2026-04-20 19:00:51 +08:00
openvela-robot 635ffdf497 avutil/random_seed: Improve get_generic_seed() with higher precission clock()
Tested-by: Thomas Turner <thomastdt@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:00:47 +08:00
openvela-robot 2624503894 build: Store library version numbers in .version files
This moves work from the configure to the Make stage where it can
be parallelized and ensures that shared libraries are built with
the right version number in the filename.
2026-04-20 19:00:44 +08:00
openvela-robot 06dd302329 doc/filters: Fix vsbmc option name.
Reported-by: Антон Приходько
2026-04-20 19:00:41 +08:00
openvela-robot 7735a248fb build: Move build-system-related helper files to a separate subdirectory
This unclutters the top-level directory and groups related files together.
2026-04-20 19:00:38 +08:00
openvela-robot 8621747331 lavfi/atempo: avoid false triggering an assertion failure
Steps to reproduce:
./ffmpeg_g -f s16be -i /dev/null -af atempo=0.5 -y /tmp/atempo.wav

Signed-off-by: Marton Balint <cus@passwd.hu>
2026-04-20 19:00:34 +08:00
openvela-robot a5cf0a87e0 aarch64: vp9itxfm: Use the offset parameter to movrel
This fixes build failures for iOS, broken since cad42fadcd.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:00:31 +08:00
openvela-robot 4acce249d0 doc/examples/decoder_targeted: Limit max pixels for fuzzing
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:00:28 +08:00
openvela-robot 1db6b35812 v4l2: use codec descriptors for mapping a codec name to id
This mapping has nothing to do with decoder implementations, so using
decoder names is wrong.
2026-04-20 19:00:25 +08:00
openvela-robot 9f70d95313 avfilter/vf_ssim: add >8 bit depth suppport
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:00:21 +08:00
openvela-robot ba30c67fb9 configure: put d3d11 check in alphabetical order 2026-04-20 19:00:18 +08:00
openvela-robot 72bba12a2c avfilter/vsrc_testsrc: draw_bar: make sure width is not negative
Reported-by: Josh de Kock
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 19:00:15 +08:00
openvela-robot 52aa0d9683 rtmppkt: Check for packet size mismatches
When receiving fragmented packets, the first packet declares the size,
and the later ones normally are small follow-on packets that don't repeat
the size and the other header fields. But technically, the later fragments
also can have a full header, declaring a different size than the previous
packet.

If the follow-on packet declares a larger size than the initial one, we
could end up writing outside of the allocation.

This fixes out of bounds writes.

Found-by: Paul Cher <paulcher@icloud.com>
Reviewed-by: Paul Cher <paulcher@icloud.com>

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 19:00:12 +08:00
openvela-robot ca29035c6d Add missing #includes for standalone spherical-information-related headers
(cherry picked from commit f912fd767e)
Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 19:00:08 +08:00
openvela-robot 4aef24b1fc decode.h: Add missing headers to fix standalone compilation 2026-04-20 19:00:05 +08:00
openvela-robot 421f0b9690 Bump for psd demuxer and decoder
Found-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 19:00:02 +08:00
openvela-robot 4777ee827e lavc: add a null bitstream filter
It is useful for testing/debugging and will also be used as the default
filter in the following commit adding pre-decode filtering to avoid
having a separate non-filtered codepath.
2026-04-20 18:59:59 +08:00
openvela-robot 9da7249c92 fate: Add h264 test for frame num gaps
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2026-04-20 18:59:55 +08:00
openvela-robot 2e20e8e46c dxva2: Keep code shared between dxva2 and d3d11va under the correct #if
This partially reverts commit ac648bb835.
2026-04-20 18:59:52 +08:00
openvela-robot 1a2884b7fe lavf/mov: Accept multiple fourcc for AVID 1:1.
Fixes ticket #5982.
2026-04-20 18:59:49 +08:00
openvela-robot b80027f967 dxva2: Simplify some ifdefs 2026-04-20 18:59:46 +08:00
openvela-robot 7b57f5062e configure: enable sdl if sdl2 is enabled
sdl is supposed to be an alias, so it should have the same value.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2026-04-20 18:59:43 +08:00
openvela-robot ffb028ac94 lavfi: Add VAAPI deinterlacer 2026-04-20 18:59:39 +08:00
openvela-robot 97b4881967 libavcodec/tests: Add avpacket test to .gitignore
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2026-04-20 18:59:29 +08:00
openvela-robot 533cef8432 configure: Fix _libs vs. _extralibs oversight 2026-04-20 18:59:25 +08:00
openvela-robot 1850f551c1 swresample/swresample: Check count before memcpy()
Fixes undefined operation
Fixes part of 668007-media

Found-by: Matt Wolenetz <wolenetz@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:59:21 +08:00
openvela-robot 303b3e948c configure: Simplify some library checks via check_lib() 2026-04-20 18:59:18 +08:00
openvela-robot 2bdd0f7e95 fate: improve fate-mov dependencies
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 18:59:15 +08:00
openvela-robot 6ac80edfed dxva2: Adjust multiple inclusion guard names to follow convention 2026-04-20 18:59:12 +08:00
openvela-robot 8f88216f7d doc/muxers: remove "-strict experimental" from tee muxer examples
Examples use the native FFmpeg AAC encoder but it is no longer
considered experimental and therefore not required.

Signed-off-by: Lou Logan <lou@lrcd.com>
2026-04-20 18:59:09 +08:00
openvela-robot 393d69c316 libkvazaar: Add missing header #includes
This fixes compilation after the next version bump.
2026-04-20 18:59:05 +08:00
openvela-robot dc85664968 avfilter/vf_deband: fix silly mistakes
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 18:59:02 +08:00
openvela-robot 51642a9d1b build: Add an internal component for hevc_ps code
This allows expressing dependencies in a more correct way.
2026-04-20 18:58:59 +08:00
openvela-robot f71a6cd989 lavu: Add AVSphericalMapping type and frame side data
While no decoder currently exports spherical information, this type
represents a frame property that has to be passed through from container
to frames.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2026-04-20 18:58:55 +08:00
openvela-robot ba23998634 build: Warn that reconfiguration is necessary if version.h files changed
The library versions are stored in the config.mak file and are used
to derive shared library names.
2026-04-20 18:58:52 +08:00
openvela-robot 0ffd363e2e lavf/chromaprint: Update for version 1.4
Fixes ticket #5997.
2026-04-20 18:58:48 +08:00
openvela-robot 6103d7e248 build: Separate avisynth and avxsynth support
This simplifies the code.
2026-04-20 18:58:45 +08:00
openvela-robot 5a27eb5dc6 tests/api/api-seek-test: Fix use of uinitialized value
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:58:42 +08:00
openvela-robot 85d99c4ff8 configure: Move COMPONENT_LIST to the bottom of CONFIG_LIST
This ensures that dependencies are resolved correctly. COMPONENT_LIST
can contain parts that depend on previous entries of CONFIG_LIST.
2026-04-20 18:58:40 +08:00
Mark Thompson f57af7b507 vaapi_encode: Write sequence header as extradata
Only works if packed headers are supported, where we can know the
output before generating the first frame.

(cherry picked from commit 0cf86fabfa)
2026-04-20 18:58:37 +08:00
openvela-robot f22531d56a configure: check for strtoull on msvc
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 18:58:36 +08:00
openvela-robot a6283845b4 build: Create a component for MPEG audio header decoding
Fixes standalone compilation of the libmp3lame encoder.
2026-04-20 18:58:33 +08:00
openvela-robot 418f1fe076 lavc: Remove CR/LF from avpriv_request_sample() calls. 2026-04-20 18:58:29 +08:00
openvela-robot 243dfb5bf4 configure: Add misssing qpeldsp dependency to mss2 decoder 2026-04-20 18:58:26 +08:00
openvela-robot 269110ab59 avformat/ffmdec: Remove some st->codec uses which set encoder parameters
Modern ffserver should not need these

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:58:22 +08:00
openvela-robot 7122812e7e build: Add -Wpedantic and -Wextra to extra warning flags
Also drop -Winline from set of warning flags as it only produces noise.
2026-04-20 18:58:19 +08:00
openvela-robot f91b63d5a3 avfilter/vf_premultiply: remove redundant semicolons
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:58:15 +08:00
openvela-robot 4eb79f30dc options_table: Do not rely on enum size as option bound
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2026-04-20 18:58:12 +08:00
openvela-robot a8033abb94 avcodec/h264: mmxext 4:2:2 chroma intra deblock/loop filter
2.1 times faster (401 vs. 194 cycles)
2026-04-20 18:58:08 +08:00
openvela-robot d7d6c84ff9 vp9dsp: add DC only versions for idct/idct.
before:

time ./avconv -v 0 -nostats -threads 1 -i sintel_vp9_500kbps.webm -f null -
real    0m11.125s
user    0m11.059s
sys     0m0.050s

time ./avconv -v 0 -nostats -threads 1 -i sintel_vp9_500kbps.webm -f null -
real    0m10.944s
user    0m10.819s
sys     0m0.064s

after:

time ./avconv -v 0 -nostats -threads 1 -i sintel_vp9_500kbps.webm -f null -
real    0m8.153s
user    0m8.034s
sys     0m0.050s

time ./avconv -v 0 -nostats -threads 1 -i sintel_vp9_500kbps.webm -f null -
real    0m8.038s
user    0m7.980s
sys     0m0.039s

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 18:58:05 +08:00
openvela-robot edf66e5e14 mov: Evaluate the movie display matrix
This matrix needs to be applied after all others have (currently only
display matrix from trak), but cannot be handled in movie box, since
streams are not allocated yet. So store it in main context, and apply
it when appropriate, that is after parsing the tkhd one.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2026-04-20 18:58:02 +08:00
openvela-robot 2fb023537e metasound: Drop unused tables 2026-04-20 18:57:59 +08:00
openvela-robot d83697d3e4 tests/ffserver-regression.sh: give wget a timeout and prevent retries
Reviewed-by: "Reynaldo H. Verdejo Pinochet" <reynaldo@osg.samsung.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:57:55 +08:00
openvela-robot 4a532ab6d5 configure: Integrate X11 checks into vaapi/vdpau checks 2026-04-20 18:57:52 +08:00
openvela-robot c204beec53 avfilter/vf_bitplanenoise: add gray10 and gray12 suppport
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 18:57:49 +08:00
openvela-robot 6f49457c22 configure: Move hardware-accelerated codec deps out of hwaccel section 2026-04-20 18:57:46 +08:00
openvela-robot e3bf403dee avfilter/vf_extractplanes: add extract support for 10bit and 12bit formats
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 18:57:43 +08:00
openvela-robot b55dde48c7 avisynth: Cast to the right type when loading avisynth library functions
Fixes a number of related warnings.
2026-04-20 18:57:41 +08:00
openvela-robot f760ec2335 avcodec/msrledec: implement vertical offset in 4-bit RLE
The delta escape (2) is supposed to work the same in 4-bit RLE as in
8-bit RLE.  This is documented in the MSDN Bitmap Compression page:
https://msdn.microsoft.com/en-us/library/windows/desktop/dd183383(v=vs.85).aspx

The unchecked modification of line is safe, since the loop condition
(line >= 0) will check it before any pixel data is written.

Fixes ticket #5153 (output now matches ImageMagick for the provided sample).

Signed-off-by: Daniel Verkamp <daniel@drv.nu>
2026-04-20 18:57:26 +08:00
openvela-robot 2da9f170b2 avconv: Fix the audio next dts computation
Use the correct timebase.

CC: libav-stable@libav.org
2026-04-20 18:57:23 +08:00
openvela-robot e7de506b2a vf_colorspace: Forbid odd dimensions
This prevents writing past bounds.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2026-04-20 18:57:19 +08:00
openvela-robot acb7f3015a ac3enc: Reshuffle functions to avoid forward declarations 2026-04-20 18:57:16 +08:00
openvela-robot b7ba0fcd02 swresample/soxr: fix invalid use of linear_interp
give very bad quality for soxr resampler.
linear_interp is intended for  using linear interpolation
between filter bank so quality will be better.

i guess this is misunderstood as 'do not use filter bank,
but directly interpolate linearly between samples'.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Muhammad Faiz <mfcc64@gmail.com>
2026-04-20 18:57:12 +08:00
openvela-robot 962aaa0d6f tta: use get_unary() instead of a custom implementation
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2026-04-20 18:57:09 +08:00
openvela-robot 60d37ffd56 avcodec/nvenc: Remove aspect-ratio decompensation logic
This dubious behaviour in nvenc was finally removed by nvidia, and
as we refuse to run on anything older than 7.0, we don't need to
keep it around for old versions.
2026-04-20 18:57:06 +08:00
openvela-robot 0745a62169 configure: Use correct variable name in libsnappy test 2026-04-20 18:57:03 +08:00
openvela-robot 74815e7fee ffmpeg_filter: fix several logic failures
Move global thread variables to better place.
Use correct variable for simple and complex filtergraphs.

This makes number of threads set per filter work again.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 18:56:59 +08:00
openvela-robot c98babce59 ra144: Convert to the new bitstream reader 2026-04-20 18:56:55 +08:00
openvela-robot fc60a5657d lavfi/pan: allow negative gain parameters also for other inputs than the first named
Expands the parser to also accept the separator '-' in addition to
'+', and take the negative sign into consideration.

The optional sign for the first factor in the expression is already
covered by parsing for an integer.

Signed-off-by: Moritz Barsnick <barsnick@gmx.net>
Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:56:52 +08:00
openvela-robot 0d81a3880d Revert "checkasm: vp9dsp: Benchmark the dc-only version of idct_idct separately"
This reverts commit 81d7f0bbca.

Instead of just benchmarking dc separately, test all relevant subparts
(in the next commit).

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 18:56:49 +08:00
openvela-robot 85e7661956 avfilter/vf_zscale: add support for some recent new additions
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2026-04-20 18:56:36 +08:00
openvela-robot c3dc5c41e3 dvbsub: cosmetics: Group all debug code together 2026-04-20 18:56:29 +08:00
Mark Thompson 6180083b1c vaapi_encode: Decide on GOP setup before initialising sequence parameters
This was always too late; several fields related to it have been incorrectly
zero since the encoder was added.

(cherry picked from commit 314b421dd8)
2026-04-20 18:56:24 +08:00
Mark Thompson 460d7ca9b9 vaapi_encode: Sync to input surface rather than output
While outwardly bizarre, this change makes the behaviour consistent
with other VAAPI encoders which sync to the encode /input/ picture in
order to wait for /output/ from the encoder.  It is not harmful on
i965 (because synchronisation already happens in vaRenderPicture(),
so it has no effect there), and it allows the encoder to work on
mesa/gallium which assumes this behaviour.

(cherry picked from commit 086e4b58b5)
2026-04-20 18:56:24 +08:00
Mark Thompson 88865b38a8 vaapi_encode: Check packed header capabilities
This improves behaviour with drivers which do not support packed
headers, such as AMD VCE on mesa/gallium.

(cherry picked from commit 892bbbcdc1)
2026-04-20 18:56:24 +08:00
Mark Thompson 1a57c291e5 vaapi_encode: Refactor initialisation
This allows better checking of capabilities and will make it easier
to add more functionality later.

It also commonises some duplicated code around rate control setup
and adds more comments explaining the internals.

(cherry picked from commit 80a5d05108)
2026-04-20 18:56:24 +08:00
openvela-robot 77988712ef Merge commit '8d07e941b04d63fc4443dd986e3dc7b69cdcca43'
* commit '8d07e941b04d63fc4443dd986e3dc7b69cdcca43':
  FATE: add a test of H.264 SEI recovery in an intra refresh stream

Our H264 decoder drops 3 frames from the beginning of the stream, but
all frames after those match, hence the difference in the fate test.

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2026-04-20 18:56:20 +08:00
openvela-robot 638fd3be77 hlsenc: Fix the openssl support 2026-04-20 18:56:18 +08:00
openvela-robot 60c42ebf3e Merge commit '61cb9fac47498a38dfe7623f66aa1f3696e9158c'
* commit '61cb9fac47498a38dfe7623f66aa1f3696e9158c':
  mov: fix stream extradata_size allocation

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2026-04-20 18:56:09 +08:00
openvela-robot 39b04a73fc hwcontext_dxva2: do not assume the destination format during mapping is always the right one
Handle the cases where it is unsupported or unset.
2026-04-20 18:56:04 +08:00
openvela-robot 9412502201 ffprobe: fix crash in case -of is specified with an empty string
Fix trac issue #5957.
2026-04-20 18:55:59 +08:00
openvela-robot 421cf359a7 crypto: Add encryption support
Signed-off-by: Christian Suloway <csuloway@globaleagleent.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2026-04-20 18:55:56 +08:00
openvela-robot a06bc76a63 avcodec/ass_split: Change order of operations in ass_split_section()
This matches the other branch
Fixes out of array read
Fixes: 4d142ca76d39fe685effcf5017098723/asan_heap-oob_31ae824_8611_348fdb64f9009b63c8a8eae9a0e497c5.mkv

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:55:53 +08:00
openvela-robot 73b065d599 examples/transcode_aac: Drop pointless return value const qualifier
doc/examples/transcode_aac.c:52:20: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
2026-04-20 18:55:50 +08:00
openvela-robot 6bb345b50c avcodec/mpegvideo: Fix edge emu buffer overlap with interlaced mpeg4
Fixes Ticket5936
Regression since c5fc8ae126

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:55:33 +08:00
openvela-robot 7b5cbb21dd avisynth: Fix setting stream timebase
Stream timebase should be set using avpriv_set_pts_info, otherwise
avctx->pkt_timebase is not correct, leading to A/V desync.

Signed-off-by: Marton Balint <cus@passwd.hu>
Reviewed-by: Stephen Hutchinson <qyot27@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2026-04-20 18:55:30 +08:00
openvela-robot 208304d01f dds: limit 4 bpp handling to AV_PIX_FMT_PAL8
This fixes NULL pointer dereferencing for formats, where frame->data[1]
is not allocated.

The problem was introduced in commit
257fbc3af4.

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2026-04-20 18:55:26 +08:00
openvela-robot 318cff1679 mov: Fix identity matrix boolean logic
This prevented the code from correctly exporting the rotation matrix
which caused a few samples to be displayed wrong.
Introduced in ecd2ec69ce.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2026-04-20 18:55:24 +08:00
openvela-robot bc0ab06800 configure: properly add dxva2 link dependencies
Fixes building with --disable-everything --enable-shared --enable-dxva2

The hwcontext DXVA2 implementation in avutil needs this library now, instead
of just the ffmpeg program.
2026-04-20 18:55:21 +08:00
openvela-robot 5fbe1e45e9 configure: Move mjpeg_vaapi_decoder dependency declarations to the right place 2026-04-20 18:55:18 +08:00
openvela-robot e910849325 avcodec/movtextdec: Fix potential integer overflow
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:55:13 +08:00
openvela-robot 681bb55ed4 af_asyncts: Use llabs instead of labs for 64-bit variable
libavfilter/af_asyncts.c:212:9: warning: absolute value function 'labs' given an argument of type 'int64_t' (aka 'long long') but has parameter of type 'long' which may cause truncation of value [-Wabsolute-value]
2026-04-20 18:55:11 +08:00
openvela-robot ca4aa57365 softfloat: handle -INT_MAX correctly
This is similar to commit 9ac61e73d0.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2026-04-20 18:55:08 +08:00
openvela-robot 27b79e1a85 qsvdec: Pass the correct profile to libmfx
This was correct for H.26[45], because libmfx uses the same values
derived from profile_idc and the constraint_set flags, but it is
wrong for other codecs.

Also avoid passing FF_LEVEL_UNKNOWN (-99) as the level, as this is
certainly invalid.
2026-04-20 18:55:04 +08:00
openvela-robot 88694d6048 Merge commit '7c55fac7dfa8bad9644dea5d03309da30be69563'
* commit '7c55fac7dfa8bad9644dea5d03309da30be69563':
  fate: Add test for webp

Noop, we already have a variety of webp tests, including a fate-webp target,
which would collide with this test.

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2026-04-20 18:54:20 +08:00
openvela-robot d32cb4c1ff aarch64: vp9: loop_filter: fix typo in skip flatout8 check
The 16_16 loop filter functions could miss an early exit before
flatout8.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 18:54:18 +08:00
openvela-robot 325ca8e460 lavc/dpx: Support GRAY12 colourspace. 2026-04-20 18:54:14 +08:00
openvela-robot 6cf8a03e53 arm: vp9itxfm: Simplify txfm string comparisons
Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 18:54:11 +08:00
Mark Thompson 4fe5badc04 vaapi_encode: Respect driver quirks around buffer destruction
No longer leaks memory when used with a driver with the "render does
not destroy param buffers" quirk (i.e. Intel i965).

(cherry picked from commit 221ffca631)
Fixes ticket #5871.
2026-04-20 18:53:56 +08:00
openvela-robot 033bdd6e0b filmstripdec: correctly check image dimensions
This prevents a division by zero in read_packet.

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2026-04-20 18:53:55 +08:00
openvela-robot 513293b6c6 avconv_opt: Consistently iterate through hwaccels array in all cases
avconv_opt.c:188:19: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits]
2026-04-20 18:53:52 +08:00
openvela-robot 1d16774bf2 ffmpeg_qsv: Fix hwaccel transcoding
Set up the encoder with a hardware context which will match the one
the decoder will use when it starts later.

Includes 02c2761973, with additional
hackery to get around a3a0230a98 being
skipped.
2026-04-20 18:53:49 +08:00
openvela-robot 22fdf126a3 aac: Drop pointless cast 2026-04-20 18:53:47 +08:00
openvela-robot 45a3edc391 Merge commit '8a62d2c28fbacd1ae20c35887a1eecba2be14371'
* commit '8a62d2c28fbacd1ae20c35887a1eecba2be14371':
  vaapi_encode: Maintain a pool of bitstream output buffers

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2026-04-20 18:53:43 +08:00
openvela-robot feb201c8ec fate: fix fate-api dependencies
No need to run the whole fate-lavf set. fate-lavf-flv_fmt is enough to
create the required source file.

Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 18:53:32 +08:00
openvela-robot 7a08df0b45 ratecontrol: Use correct function pointer casts instead of void*
libavcodec/ratecontrol.c:120:9: warning: ISO C forbids initialization between function pointer and ‘void *’ [-Wpedantic]
libavcodec/ratecontrol.c:121:9: warning: ISO C forbids initialization between function pointer and ‘void *’ [-Wpedantic]
2026-04-20 18:53:29 +08:00
openvela-robot e131189822 lavfi/loudnorm: add an internal libebur128 library
Also contains the following changes to the library:
- add ff_ prefix to functions
- remove cplusplus defines.
- add FF_ prefix to contants and some structs
- remove true peak calculation feature, since it uses its own resampler, and
  af_loudnorm does not need it.
- remove version info and some fprintf(stderr) functions
- convert to use av_malloc
- always use histogram mode for LRA calculation, otherwise LRA data is slowly
  consuming memory making af_loudnorm unfit for 24/7 operation. It also uses a
  BSD style linked list implementation which is probably not available on all
  platforms. So let's just remove the classic mode which not uses histogram.
- add ff_thread_once for calculating static histogram tables
- convert some functions to void which cannot fail
- remove intrinsics and some unused headers
- add support for planar audio
- remove channel / sample rate changer function, in ffmpeg usually we simply
  alloc a new context
- convert some static variables to defines
- declare static histogram variables as aligned
- convert some initalizations to mallocz
- add window size parameter to init function and remove window size setter
  function
- convert return codes to AVERROR
- fix indentation

Signed-off-by: Marton Balint <cus@passwd.hu>
2026-04-20 18:53:26 +08:00
openvela-robot eae3ecb444 checkasm: add vp9dsp.itxfm_add tests.
This includes fixes by Henrik Gramner.

The forward transforms are derived from the reference encoder.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 18:53:23 +08:00
openvela-robot c40d6ceb0c icodec: correctly check avio_read return value
It can read less than the requested amount, in which case buf contains
uninitialized data, causing problems like segmentation faults later on.

Also make sure that image->size is positive, so that it can't match a
negative error code.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2026-04-20 18:53:20 +08:00
openvela-robot 79ad8094ba pthread_frame: Unreference hw_frames_ctx on per-thread codec contexts
When decoding with threads enabled, the get_format callback will be
called with one of the per-thread codec contexts rather than with the
outer context.  If a hwaccel is in use too, this will add a reference
to the hardware frames context on that codec context, which will then
propagate to all of the other per-thread contexts for decoding.  Once
the decoder finishes, however, the per-thread contexts are not freed
normally, so these references leak.
2026-04-20 18:53:17 +08:00
openvela-robot 9fe489b699 avcodec/hap: add "compressor" option to Hap encoder to disable secondary compression
The secondary compression in Hap is optional, this change exposes that option to
the user as some use-cases favour higher bitrate files to reduce workload
decoding.
Adds "none" or "snappy" as options for "compressor". Selecting "none" disregards
"chunks" option: chunking is only of benefit decompressing Snappy.

Reviewed-by: Martin Vignali <martin.vignali@gmail.com>
Signed-off-by: Tom Butterworth <bangnoise@gmail.com>
2026-04-20 18:53:13 +08:00
openvela-robot a6d1c2f857 matroskaenc: fix muxing AAC streams when using aac_adtstoasc bsf
aac_adtstoasc makes the aac extradata available only after the first packet
is filtered, and as packet side data.

Assume extradata will be available as part of the first packet if
avpriv_mpeg4audio_get_config() fails the first time due to missing extradata
and reserve space for the OutputSampleRate element in the Tracks master.

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2026-04-20 18:53:10 +08:00
openvela-robot e22bab134f icodec: fix leaking pkt on error
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2026-04-20 18:53:06 +08:00
openvela-robot 33a542b8d5 avconv: Drop stray leftover debug output 2026-04-20 18:53:03 +08:00
openvela-robot fde5a04d96 matroskadec: fix NULL pointer dereference in webm_dash_manifest_read_header
The code assumes that s->streams[0] is valid.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2026-04-20 18:52:49 +08:00
openvela-robot a10e935898 Use avpriv_report_missing_feature() where appropriate 2026-04-20 18:52:46 +08:00
openvela-robot 9498f05852 avformat/matroskadec: fix DiscardPadding element parsing
If the value is negative then it means padding at the start of the packet
instead of at the end.

Based on a patch by Hendrik Leppkes.

Reviewed-by: James Zern <jzern-at-google.com@ffmpeg.org>
Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 18:52:43 +08:00
openvela-robot c52d6dc927 avconv: Correct function pointer assignments in options array
Fixes several warnings of the type
avconv_opt.c:2356:5: warning: ISO C forbids initialization between function pointer and ‘void *’ [-Wpedantic]
2026-04-20 18:52:40 +08:00
openvela-robot 3b3290474c aacenc: quit when the audio queue reaches 0 rather than keeping track of empty frames
The libopus encoder does the same thing and its better than
keeping track of when the empty flush frames appear.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2026-04-20 18:52:36 +08:00
openvela-robot 0296b29b42 pixfmt: Add GRAY12 2026-04-20 18:52:33 +08:00
openvela-robot 1f71b5ffee avformat/hls: Factor copying stream info to a separate function
Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi>
2026-04-20 18:52:29 +08:00
openvela-robot f888bfd681 libx265: Add option to force IDR frames
This is in the same the same vein as 380146924e.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 18:52:26 +08:00
openvela-robot cb25227fc5 fate: Remove show_formats for fate-mov-zombie test
This includes the absolute path

Found-by: jamrial
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:52:21 +08:00
openvela-robot a3e0dadcda x86: Drop stray semicolons after function definitions
libavcodec/x86/rv40dsp_init.c:97:2: warning: ISO C does not allow extra ‘;’ outside of a function [-Wpedantic]
libavcodec/x86/vp9dsp_init.c:94:40: warning: ISO C does not allow extra ‘;’ outside of a function [-Wpedantic]
2026-04-20 18:52:18 +08:00
openvela-robot a22f3840be avformat/mux: split side data earlier in av_write_frame and av_interleaved_write_frame
Similarly, merge it back before returning.

Fixes ticket #5927.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 18:52:14 +08:00
openvela-robot 6be5c9c026 arm: vp9mc: Insert a literal pool at the middle of the file
This fixes errors like this when building non-pic binaries with armv6
as baseline:

Error: invalid literal constant: pool needs to be closer

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 18:52:12 +08:00
openvela-robot ea62a40052 libx265: Add option to force IDR frames
This is in the same the same vein as c981b1145a.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:52:08 +08:00
openvela-robot 84f104490f hwcontext: Hardware frame mapping
Adds the new av_hwframe_map() function, which allows mapping between
hardware frames and normal memory, along with internal support for
implementing it.

Also adds av_hwframe_ctx_create_derived(), for creating a hardware
frames context associated with one device using frames mapped from
another by some hardware-specific means.
2026-04-20 18:52:05 +08:00
openvela-robot da5687e971 ffmpeg: Fix bsf corrupting merged side data
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:52:02 +08:00
openvela-robot 11efdd0c19 Drop unreachable break and return statements 2026-04-20 18:51:59 +08:00
openvela-robot e8021bb37b lavf/mov.c: Use the first sidx for tracks without sidx.
According to spec ISO_IEC_15444_12 "For any media stream for which no segment index is present, referred to as non‐indexed stream, the media stream associated with the first Segment Index box in the segment serves as a reference stream in a sense that it also describes the subsegments for any non‐indexed media stream."

Signed-off-by: Sasi Inguva <isasi@google.com>
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:51:56 +08:00
openvela-robot aa72c18aaf ituh263dec: Have function signature match across declaration and definition
libavcodec/ituh263dec.c(215) : warning C4028: formal parameter 1 different from declaration
libavcodec/ituh263dec.c(215) : warning C4028: formal parameter 2 different from declaration
2026-04-20 18:51:53 +08:00
openvela-robot da657fb59f Merge commit '722ec3eb35bc152ce91d0a4502eca0df1c0086d0'
* commit '722ec3eb35bc152ce91d0a4502eca0df1c0086d0':
  avconv: decouple configuring filtergraphs and setting input parameters

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2026-04-20 18:51:50 +08:00
openvela-robot 90cef094d0 vp9: Flip the order of arguments in MC functions
This makes it match the pattern already used for VP8 MC functions.

This also makes the signature match ffmpeg's version of these
functions, easing porting of code in both directions.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 18:51:48 +08:00
openvela-robot a07ad59d8b crystalhd: Fix up the missing first sample
Why on earth the hardware returns garbage for the first sample of
a decoded picture is anyone's guess. The simplest reasonable way
to patch it up is to copy the first sample of the second line. This
should result in the correct chroma values (because the data was
original 4:2:0 upsampled to 4:2:2) even if the luma is isn't.
2026-04-20 18:51:44 +08:00
openvela-robot eaeaf20666 lavfi: Always propagate hw_frames_ctx through links
Also adds a new flag to mark filters which are aware of hwframes and
will perform this task themselves, and marks all appropriate filters
with this flag.

This is required to allow software-mapped hardware frames to work,
because we need to have the frames context available for any later
mapping operation in the filter graph.

The output from the filter graph should only propagate further to an
encoder if the hardware format actually matches the visible format
(mapped frames are valid here and have an hw_frames_ctx, but this
should not be given to the encoder as its hardware context).
2026-04-20 18:51:41 +08:00
openvela-robot a09f62cf5c avformat/matroskaenc: use display aspect ratio for DisplayWidth and DisplayHeight when possible
This avoids potential rounding errors and guarantees the source aspect
ratio is preserved.
Keep writing pixel values when Stereo 3D Mode is enabled and for WebM,
as the format doesn't support anything else.

This fixes ticket #5743, implementing the suggestion from ticket #5903.

Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 18:51:38 +08:00
openvela-robot 6325686550 lavfi: Make default get_video_buffer work with hardware frames 2026-04-20 18:51:35 +08:00
openvela-robot 05102e8b86 lavc: Add hevc main10 profile to ffmpeg cli
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:51:32 +08:00
openvela-robot 59c2c18c6d avconv: support parsing bitstream filter options
Example usage:

avconv -i INPUT -bsf filter[=opt1=val1:opt2=val2] OUTPUT

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2026-04-20 18:51:28 +08:00
openvela-robot 6fe5ea9db2 Fix build warnings due to misleading indentation
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:51:24 +08:00
openvela-robot 64bb881ba2 mov: Evaluate the movie display matrix
This matrix needs to be applied after all others have (currently only
display matrix from trak), but cannot be handled in movie box, since
streams are not allocated yet. So store it in main context, and apply
it when appropriate, that is after parsing the tkhd one.

Fate tests are updated accordingly.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2026-04-20 18:51:22 +08:00
openvela-robot 00b4f354e6 fate filter metadata : add test for aphasemeter - Test a mono file (in phase) -> 1. as result - Test a out of phase 1000 Hz -> -1. as result
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:51:19 +08:00
openvela-robot c8a7852dee avprobe: Add -show_stream_entry to get a single stream property
This is needed for improved fate testing and it is modeled after
-show_format_entry. The main behavioral difference is that when a print
function is called with an empty key, rather than discarding it, the
closes key in the hierarchy is used instead.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2026-04-20 18:51:16 +08:00
openvela-robot b3b6620a63 vf_colorspace: Add support for iec61966-2.4 (xvYCC) transfer
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:51:02 +08:00
openvela-robot 4bd2e66851 openssl: Allow newer TLS versions than TLSv1
The use of TLSv1_*_method() disallows newer protocol versions; instead
use SSLv23_*_method() and then explicitly disable the deprecated
protocol versions which should not be supported.
2026-04-20 18:50:59 +08:00
openvela-robot 04f5bfcaa6 interplayacm: check for too large b
This fixes out-of-bounds reads.

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2026-04-20 18:50:54 +08:00
openvela-robot 607234b619 qsv: Be informative when reporting that no data has been consumed 2026-04-20 18:50:52 +08:00
openvela-robot ac6c5e968f configure: add missing fork() dependency to http_multiclient example
Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 18:50:48 +08:00
openvela-robot f5d769a120 Use avpriv_request_sample() where appropriate 2026-04-20 18:50:45 +08:00
openvela-robot ba0f4c72a1 configure: make sure LTO does not optimize out the test functions
Fixes trac ticket #5909

Bud-Id: https://bugs.gentoo.org/show_bug.cgi?id=598054
Acked-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2026-04-20 18:50:42 +08:00
openvela-robot 2b62d610fa Use ISO C printf conversion specifiers where appropriate 2026-04-20 18:50:40 +08:00
openvela-robot 8c6be1639c avformat/flvdec: Fix regression loosing streams
Fixes: unknown_video.flv

Found-by: Thierry Foucu <tfoucu@google.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:50:37 +08:00
openvela-robot f35d7102d2 Adjust printf conversion specifiers to match variable signedness 2026-04-20 18:50:34 +08:00
openvela-robot ce942ffc93 apng: use side data to pass extradata to muxer
This fixes creating apng files, which is broken since commit
5ef1959080.

Reviewed-by: James Almer <jamrial@gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2026-04-20 18:50:31 +08:00
openvela-robot b1fc8a1966 build: Hardcode avversion.h dependency
Since avversion.h is a generated header it must be created before
dependencies can be determined as a side effect of compilation.
Otherwise Make stops and restarts the build process to generate
avversion.h and produces related error messages.
2026-04-20 18:50:28 +08:00
openvela-robot 972285fe47 avfilter/scale_npp: fix passthrough mode
Reviewed-by: Timo Rothenpieler <timo@rothenpieler.org>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:50:23 +08:00
openvela-robot 8e6954580c openssl: Avoid double semicolons after the GET_BIO_DATA macro
When the macro is expanded with a semicolon following it and the
macro itself contains a semicolon, we ended up in double semicolons,
which is treated as a statement that disallows further declarations.

This avoids errors about mixed declarations and statements on gcc,
after ee05079766.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 18:50:21 +08:00
openvela-robot 31dd59d2bc vp9: change order of operations in adapt_prob().
This is intended to workaround bug "665 Integer Divide Instruction May
Cause Unpredictable Behavior" on some early AMD CPUs, which causes a
div-by-zero in this codepath, such as reported in Mozilla bug #1293996.

Note that this isn't guaranteed to fix the bug, since a compiler is free
to reorder instructions that don't depend on each other. However, it
appears to fix the bug in Firefox, and a similar patch was applied to
libvpx also (see Chrome bug #599899).
2026-04-20 18:50:17 +08:00
openvela-robot a0645837ae vaapi_decode: Clear parameter buffers to fix picture reuse
When decoding interlaced pictures, the structure is reused to render
to the same surface twice.  The parameter buffers were not being
cleared, which caused the i965 driver to error out.
2026-04-20 18:50:14 +08:00
openvela-robot 998f75e0d6 lavc/parser: export field order if not already set
Some codecs set this in the parser, but not the decoder
2026-04-20 18:50:10 +08:00
openvela-robot 00368e9689 openssl: Support version 1.1.0.
Further simplifications by Martin Storsjö, to minimize the
diff.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 18:50:07 +08:00
openvela-robot f96c2af00d mpegts: handle AVMEDIA_TYPE_UNKNOWN correctly
It is negative, so can't be used for left shifting.

This fixes ubsan runtime error: shift exponent -1 is negative

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2026-04-20 18:50:04 +08:00
openvela-robot fcb94edf7c Replace leftover uses of -aframes|-dframes|-vframes with -frames:a|d|v 2026-04-20 18:50:01 +08:00
openvela-robot 1e336a20cd doc: fix spelling errors
Thanks to Mathieu Malaterre <malat@debian.org> for reporting the
Que/Queue typo. (https://bugs.debian.org/839542)

Reviewed-by: Lou Logan <lou@lrcd.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2026-04-20 18:49:57 +08:00
openvela-robot 89e750047f mov: Update colr values
For 'nclx', the latest edition of the standard switched from JPEG XR
to 23001-8, which matches the current order of our entries. Bounds
are preserved as a sanity check.

For 'nclc', qtff edition 2016-09-13 introduced a few new entries.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2026-04-20 18:49:55 +08:00
openvela-robot 2264341d34 dcstr: fix division by zero
Also check for possible overflows.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2026-04-20 18:49:51 +08:00
openvela-robot 8a7cb5d463 lavu: Add JEDEC P22 color primaries 2026-04-20 18:49:48 +08:00
openvela-robot a8cce89cbf avcodec/dnxhdenc: Move allocation out of radix_sort()
Its slow, its not checked, FPU state is not clean either currently there

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:49:45 +08:00
openvela-robot 67adc5f5c3 lavf: check that the codec is supported by extract_extradata
Avoids superfluous error message spam after
8e2ea69135
2026-04-20 18:49:42 +08:00
openvela-robot 35b7b55f25 lavf/riff: Document the interleaving of VSM4 video. 2026-04-20 18:49:38 +08:00
openvela-robot e2d739c994 audiodsp: x86: Remove pointless header file
Its single forward declaration can be moved to the only place
it is used, like is done for all other dsp init files.
2026-04-20 18:49:36 +08:00
openvela-robot 34ebe80bc9 lavc: add vp8/vp9 mediacodec decoders 2026-04-20 18:49:31 +08:00
openvela-robot 45b4ed12c4 configure: Print warnings after all other output 2026-04-20 18:49:22 +08:00
openvela-robot 22597116ca aacenc: add SIMD optimizations for abs_pow34 and quantization
Performance improvements:

quant_bands:
with:     681 decicycles in quant_bands, 8388453 runs,    155 skips
without: 1190 decicycles in quant_bands, 8388386 runs,    222 skips
Around 42% for the function

Twoloop coder:

abs_pow34:
with/without: 7.82s/8.17s
Around 4% for the entire encoder

Both:
with/without: 7.15s/8.17s
Around 12% for the entire encoder

Fast coder:

abs_pow34:
with/without: 3.40s/3.77s
Around 10% for the entire encoder

Both:
with/without: 3.02s/3.77s
Around 20% faster for the entire encoder

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
Tested-by: Michael Niedermayer <michael@niedermayer.cc>
Reviewed-by: James Almer <jamrial@gmail.com>
2026-04-20 18:49:16 +08:00
openvela-robot aa9822a26a fate: Update filter-pixfmts-scale gbrap12le hash missing from be9dba5c8a
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2026-04-20 18:49:14 +08:00
openvela-robot c3d80b389e avcodec/mediacodec: Factor duplicate include
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:49:10 +08:00
openvela-robot cd1b7c1d4e checkasm: aarch64: Don't clobber x29 in checkasm_stack_clobber
x29 (FP) is a callee saved register and should be restored on
return. Instead of backing up x29 and restoring it here, back up
sp in a register that we are allowed to overwrite.

This fixes crashes in checkasm on aarch64 since f1b3e13138.
For some reason, gcc builds didn't crash, but clang builds do.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 18:49:08 +08:00
openvela-robot bb53e3b4e1 doc/examples/demuxing_decoding: Drop AVFrame->pts use
This code is not correct for git master

Reviewed-by: Stefano Sabatini <stefasab@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 18:49:05 +08:00
openvela-robot 8ff4906500 swscale: Properly load alpha for planar rgb
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2026-04-20 18:49:02 +08:00
openvela-robot d977818fd8 fate: add swr-convertaudio test
test for flt to s16
should pass on correct rounding to nearest

Signed-off-by: Muhammad Faiz <mfcc64@gmail.com>
2026-04-20 18:48:59 +08:00