Commit Graph

3937 Commits

Author SHA1 Message Date
openvela-robot 0986b39270 MAINTAINERS: Update the entries for the release maintainer for FFmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 20:51:15 +08:00
openvela-robot 328953e3c5 ffmpeg:fix build warning in sim/m64
Signed-off-by: fangyibo <fangyibo@xiaomi.com>
2026-04-20 20:51:11 +08:00
openvela-robot 333b84b8d1 avcodec/h265_metadata: Add options to set width/height after crop
It's a common usecase to request a video size after crop. Before
this patch, user must know the video size before crop, then set
crop_right/crop_bottom accordingly. Since HEVC can have different
CTU size, it's not easy to get/deduce the video size before crop.
With the new width/height options, there is no such requirement.

Signed-off-by: Zhao Zhili <zhilizhao@tencent.com>
2026-04-20 20:50:43 +08:00
openvela-robot ee91b60ce0 audio:add nuttx_enc lastpkt for count latency
add nuttx_enc lastpkt for count latency

Signed-off-by: shipei <shipei@xiaomi.com>
2026-04-20 20:50:39 +08:00
openvela-robot 4c0f0ba0fb libavcodec/libxvid: code cleanup (replace magic numbers) 2026-04-20 20:50:36 +08:00
openvela-robot 09c5d5b854 FFMPEG: Fix the inaccurate pts value of offload recorder
Signed-off-by: renjianguang <renjianguang@xiaomi.com>
2026-04-20 20:50:32 +08:00
openvela-robot 7b5d8cac3a libavcode/x86/vvc: change label to vvc_sad_16 to reflect block sizes
According to the VVC specification (section 8.5.1), the maximum width/height of a subblock passed for DMVR SAD is 16. This along with previous constraint requiring width * height >= 128 means that  8x16, 16x8, and 16x16 are the only allowed sizes. This re-labels vvc_sad_16_128 to vvc_sad_16 to reflect this and adds a comment about the block size constraints. There's no functionality change.
2026-04-20 20:50:15 +08:00
openvela-robot a9bd2a22c2 FFMPEG: Support opus offload encoding
Signed-off-by: renjianguang <renjianguang@xiaomi.com>
2026-04-20 20:50:03 +08:00
Andreas Rheinhardt 7241cceea7 fftools, avfilter, avformat: Simplify check for "is dictionary empty?"
Reviewed-by: epirat07@gmail.com
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2026-04-20 20:49:50 +08:00
openvela-robot a6d0ac50e3 lavc/vc1dsp: R-V V mspel_pixels
C908 X60
vc1dsp.avg_vc1_mspel_pixels_tab[0][0]_c            :  14.7 13.2
vc1dsp.avg_vc1_mspel_pixels_tab[0][0]_rvv_i32      :   2.5  2.2
vc1dsp.avg_vc1_mspel_pixels_tab[1][0]_c            :   3.7  3.5
vc1dsp.avg_vc1_mspel_pixels_tab[1][0]_rvv_i64      :   1.0  1.2
vc1dsp.put_vc1_mspel_pixels_tab[0][0]_c            :   9.0  8.0
vc1dsp.put_vc1_mspel_pixels_tab[0][0]_rvi          :   1.0  1.0
vc1dsp.put_vc1_mspel_pixels_tab[1][0]_c            :   2.5  2.2
vc1dsp.put_vc1_mspel_pixels_tab[1][0]_rvi          :   0.5  0.5

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
2026-04-20 20:49:43 +08:00
openvela-robot 4253848f6b FFMPEG: add dsp reboot event notify
Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-04-20 20:49:40 +08:00
openvela-robot a0557ef6a5 lavc/flacdsp: fix CPU requirement for 32-bit LPC 2026-04-20 20:49:36 +08:00
openvela-robot 34879f9974 bluelet: reset 'available' flag when audio path re-setup, avoid this flag is unknown
Signed-off-by: fangzhenwei <fangzhenwei@xiaomi.com>
2026-04-20 20:49:32 +08:00
openvela-robot dcf5811164 aacdec: restore arm32 dequantization optimizations
Unintentionally removed as part of 03cf10164578aed33f4d0cb5b69d63669c01a538.
Untested, but its assumed that unlike most of the old ARM code,
this one was still working.
2026-04-20 20:49:26 +08:00
openvela-robot b2154224c5 FFMPEG: add caller context for avfilter-graph-reconfig.
Signed-off-by: zhushiqshi <zhushiqshi@xiaomi.com>
2026-04-20 20:49:19 +08:00
openvela-robot c92e82adc1 lavc/vaapi_encode_av1: implement write_extra_header callback
This can be used to insert a metadata OBU to the stream later.

Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
2026-04-20 20:49:14 +08:00
openvela-robot ab3d02e4d0 FFMPEG: add additonal start for short data
When using offload path to play short audio, if the audio data cannot fill the buffer, it may not enter the start branch, so we need to start playing after draining the buffer.

Signed-off-by: jinxiuxu <jinxiuxu@xiaomi.com>
2026-04-20 20:49:10 +08:00
openvela-robot 9acee1cbfc avfilter/af_volume: Don't free options manually
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2026-04-20 20:49:06 +08:00
openvela-robot 81c68ca475 FFmpeg: bluelet muxer output poll_available duration for debug
Signed-off-by: shizhenghui <shizhenghui@xiaomi.com>
2026-04-20 20:49:02 +08:00
openvela-robot b405181bc9 lavu/riscv: fix build without <sys/hwprobe.h> 2026-04-20 20:48:58 +08:00
openvela-robot c22c375228 FFMPEG: add offload volume control
Signed-off-by: jinxiuxu <jinxiuxu@xiaomi.com>
2026-04-20 20:48:54 +08:00
openvela-robot e32eca295c avformat/file: fail for non-numerical arguments to pipe:
Before this patch, the implementation of pipe: inputs/outputs would
silently fall back to stdin/stdout for any argument not successfully
parsed by strtol().

This patch introduces an explicit error for any non-numerical arguments,
which should avoid user confusion as in #10977.

New behavior:

$ cat /tmp/video.mkv | ./ffmpeg -i pipe:aa -acodec copy -vcodec copy -f matroska pipe:1 | cat >/tmp/out.mkv

[pipe @ 0x5618c7bcf740] Non-numerical argument "aa" to pipe:
[in#0 @ 0x5618c7bced00] Error opening input: Invalid argument
Error opening input file pipe:aa.
Error opening input files: Invalid argument

Based on the patch of Nils Goroll <nils.goroll@uplex.de>.

Signed-off-by: Marton Balint <cus@passwd.hu>
2026-04-20 20:48:49 +08:00
openvela-robot dcb122c263 FFMPEG: change underflow log level from info to warning
Signed-off-by: jinxiuxu <jinxiuxu@xiaomi.com>
2026-04-20 20:48:45 +08:00
openvela-robot 12df655bb3 avformat/mov: support SpatialAudioBox ambisonic layouts with arbitrary channel mapping
Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 20:48:35 +08:00
openvela-robot 1bef6d7103 FFMPEG: adjust ioctrl sequence RESUME after ENQUEUE
Signed-off-by: hanqiyuan <hanqiyuan@xiaomi.com>
2026-04-20 20:48:31 +08:00
Anton Khirnov e6e309895a lavfi/avfilter: add an "auto" constant to the threads option
Analogous to the same constant in avfiltergraph and avcodec.
Cf. f599ae88c25.
2026-04-20 20:47:48 +08:00
openvela-robot f61d8b5e47 avcodec/huffyuvdec: Don't zero unnecessarily
A decoder's private data has already been zeroed (apart from options)
before init is called.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2026-04-20 20:47:42 +08:00
openvela-robot 519c62b47c FFMPEG: switched to ch_layout for adevsink.
Signed-off-by: zhushiqshi <zhushiqshi@xiaomi.com>
2026-04-20 20:47:36 +08:00
Andreas Rheinhardt b4d4d57cf7 avfilter/avfilter: Don't use av_uninit
GCC 9-13 do not emit warnings for this at all optimization
levels even when -Wmaybe-uninitialized is not disabled.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2026-04-20 20:47:26 +08:00
Andreas Rheinhardt 183df63b8c avfilter/avfilter: Honour the short options documentation
The documentation for filter arguments states that short options must
precede long options (i.e. those of the form key=value). Yet if
process_options() encounters arguments not abiding by this, it simply
treats short options after a long option as if it were parsing short
options for the first time. In particular, it overwrites options already
set earlier, possibly via other short options. This is not how it is
intended (as a comment in the code indicates).

This commit modifies the code to reject further shorthand options
after a long option has been encountered. After all, avfilter_init_str()
errors out upon unrecognized options, so it is intended to be picky.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2026-04-20 20:47:25 +08:00
Andreas Rheinhardt 1c2f343aa1 avfilter/avfilter: Use AV_DICT_DONT_STRDUP_(KEY|VAL) when possible
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2026-04-20 20:47:25 +08:00
openvela-robot 4c77c353f0 avformat/mov: simplify the entry count overflow check in the keys atom
Suggested-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 20:47:19 +08:00
openvela-robot 0aa2c85b42 FFMPEG: add log when enqueue eos buffer
Signed-off-by: jinxiuxu <jinxiuxu@xiaomi.com>
2026-04-20 20:47:15 +08:00
Andreas Rheinhardt dfb13f98b6 avutil/common: Don't auto-include mem.h
There are lots of files that don't need it: The number of object
files that actually need it went down from 2011 to 884 here.

Keep it for external users in order to not cause breakages.

Also improve the other headers a bit while just at it.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2026-04-20 20:47:08 +08:00
openvela-robot 22b4dd2b39 avutil/hwcontext_qsv: Fix mixed declaration and code
Reviewed-by: Xiang, Haihao <haihao.xiang@intel.com>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2026-04-20 20:46:53 +08:00
openvela-robot 7eb5d0d0c3 ffmpeg: do not reset codec config for A2DP stream when audio stopped.
Signed-off-by: gaozihao <gaozihao@xiaomi.com>
2026-04-20 20:46:49 +08:00
openvela-robot acced26ec4 aarch64: Fix ff_hevc_put_hevc_epel_h48_8_neon_i8mm
The first 32 elements of each row were correct, while the
last 16 were scrambled.

This hasn't been noticed, because the checkasm test erroneously
only checked half of the output (for 8 bit functions), and
apparently none of the samples as part of "fate-hevc" seem to
trigger this specific function.

Signed-off-by: J. Dekker <jdek@itanimul.li>
2026-04-20 20:46:14 +08:00
openvela-robot 9dd48b8de5 bluelet: fix busyloop when rpmsgsocket recv return 0
root cause: rpmsg socekt recieved POLLIN event when rpsmg unbinded

Signed-off-by: fangzhenwei <fangzhenwei@xiaomi.com>
2026-04-20 20:46:10 +08:00
openvela-robot 8623c6e0e2 avfilter: update filter timeline state only on main link
At present, consume_update evaluates timeline state on all links for
a multi-input filter. This can lead to the filter being incorrectly
en/dis-abled when evaluation on a frame on a secondary link leads to
a different result than the frame on the current main link next in
line for processing.
2026-04-20 20:46:01 +08:00
openvela-robot f7f513eb22 external/ffmpeg: add offloding audio recording with amr format.
dependson:3843703

Signed-off-by: xumin6 <xumin6@xiaomi.com>
2026-04-20 20:45:58 +08:00
联盟少侠 13d1aa44a0 avfilter/avfilter: Fix for Incorrect Parameter in ff_filter_config_links
src/libavfilter/internal.h:255:45: note: passing argument to parameter 'filter' here
int ff_filter_config_links(AVFilterContext *filter);

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2026-04-20 20:45:53 +08:00
Anton Khirnov 6b54c99a2c lavfi: deprecate avfilter_config_links()
It never makes sense for this function to be called by users.
2026-04-20 20:45:53 +08:00
Anton Khirnov 43341b2601 lavfi: deprecate avfilter_link_free()
It never makes sense for this function to be called by users.
2026-04-20 20:45:53 +08:00
openvela-robot ec42899a08 lavfi/vulkan_filter: fix input format
Otherwise s->input_format is always yuv420p.

This fixes invalid output format for hwframe download in the command
below:
./ffmpeg -init_hw_device vulkan -f lavfi \
	-i testsrc=duration=1,format=nv12 \
	-vf 'hwupload,format=vulkan,scale_vulkan=1024:768,hwdownload,format=nv12' \
	-f null -

Reviewed-by: Lynne <dev@lynne.ee>
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
2026-04-20 20:45:50 +08:00
openvela-robot 84e087c8a7 FFMPEG: fixed video delay when play agian.
Signed-off-by: zhushiqshi <zhushiqshi@xiaomi.com>
2026-04-20 20:45:46 +08:00
James Almer 822cb2d53a avutil: remove deprecated FF_API_PKT_DURATION
Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 20:45:40 +08:00
openvela-robot 3c330cd664 avformat: add a Tile Grid stream group type
This will be used to support tiled image formats like HEIF.

Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 20:45:22 +08:00
openvela-robot adc625357f FFMPEG: skip RESUME for PLAY incase not running
Signed-off-by: hanqiyuan <hanqiyuan@xiaomi.com>
2026-04-20 20:45:19 +08:00
Andreas Rheinhardt 82c99676e9 avfilter/avfilter: Suppress warning for variable only used in av_assert1
Forgotten in e7f9edb4698e94135aab24c302226734713548f0.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2026-04-20 20:45:15 +08:00
openvela-robot f4970d18ca lavc/vvc_ps: Correct vaule of ALF_NUM_FILTERS_CC
Signed-off-by: Fei Wang <fei.w.wang@intel.com>
2026-04-20 20:45:12 +08:00