Commit Graph

5879 Commits

Author SHA1 Message Date
hanqiyuan 9d7b568aae ffmpeg: codesize optimize for CONFIG_AUDIO_ONLY.
Enabled by --enable-audio-only, default disabled.
The size optimized 114656 bytes @ gcc -Os,-flto by --enable-audio-only.

Signed-off-by: hanqiyuan <hanqiyuan@xiaomi.com>
2026-04-20 20:58:41 +08:00
qiaohaijiao1 ab45daa6eb FFMPEG: add raw silk demuxer/decoder/muxer/encoder support
Signed-off-by: qiaohaijiao1 <qiaohaijiao1@xiaomi.com>
Signed-off-by: qiaohaijiao1 <qiaohaijiao1@xiaomi.com>
Signed-off-by: fangyibo <fangyibo@xiaomi.com>
2026-04-20 20:58:26 +08:00
fangzhenwei a11170cc26 ffmpeg/bsf:add a2dp rechunk bsf
Signed-off-by: fangzhenwei <fangzhenwei@xiaomi.com>
2026-04-20 20:58:24 +08:00
ligd 7a40318569 ffmpeg: add libfluoride sbc decoder & encoder
Signed-off-by: ligd <liguiding1@xiaomi.com>
2026-04-20 20:58:23 +08:00
qiaohaijiao1 3956758f76 FFMPEG: add libhelix-aac decode wrapper.
Signed-off-by: qiaohaijiao1 <qiaohaijiao1@xiaomi.com>
Signed-off-by: qiaohaijiao1 <qiaohaijiao1@xiaomi.com>
2026-04-20 20:58:12 +08:00
yangliming cad8fc3bb5 ffmpeg : add ldac demuxer and decoder.
add ldac demuxer and decoder in ffmpeg base on the libldac provided by sony

Signed-off-by: yangliming <yangliming@xiaomi.com>
2026-04-20 20:58:04 +08:00
openvela-robot 79d0634421 ffmpeg7: fixed amix format when graph load
Signed-off-by: zhushiqshi <zhushiqshi@xiaomi.com>
2026-04-20 20:57:53 +08:00
openvela-robot 225a503d52 FFMPEG: fix AVPacket mem leak
Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-04-20 20:57:50 +08:00
openvela-robot 6fb822a912 ffmpeg7: add avformat_write_trailer for adevsink
Signed-off-by: zhushiqshi <zhushiqshi@xiaomi.com>
2026-04-20 20:57:47 +08:00
openvela-robot 32ee48238c adevsink:only do grahp reconfig in start flow
Resolve audio ending process interrupted by adevsink non start command

Signed-off-by: shipei <shipei@xiaomi.com>
2026-04-20 20:57:39 +08:00
openvela-robot 3608e86b4f FFMPEG: fix sys/syscrl.h can not find
Signed-off-by: zhushiqshi <zhushiqshi@xiaomi.com>
2026-04-20 20:57:30 +08:00
openvela-robot a6c20059ed FFMPEG: add resume when eos is on
when eos is on, we should resume the stream if it is paused.

Signed-off-by: jinxiuxu <jinxiuxu@xiaomi.com>
2026-04-20 20:57:27 +08:00
openvela-robot 6cf52fc3f3 swscale/output: fill all the xv36le alpha bits
The format is 10 bit per component, not 8.

Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 20:57:24 +08:00
openvela-robot 356c47e109 FFMPEG: force start and stop after configure for driver
Signed-off-by: hanqiyuan <hanqiyuan@xiaomi.com>
2026-04-20 20:57:20 +08:00
openvela-robot dccba787a1 fftools/ffmpeg_demux: use proper logging contexts everywhere 2026-04-20 20:57:15 +08:00
openvela-robot 1e2e93b397 FFMPEG: only back completed msg when running state.
Signed-off-by: qiaohaijiao1 <qiaohaijiao1@xiaomi.com>
2026-04-20 20:57:12 +08:00
Lynne 6b01c298b4 libavcodec/Makefile: add a makefile for Vulkan shaders 2026-04-20 20:57:08 +08:00
openvela-robot 34d0892357 configure: Only try to use the -no_warn_duplicate_libraries flag on Darwin
While we only add the flag if the linker seems to support it,
it turns out that ld.bfd had a bug where the flag is accidentally
accepted, and the flag produces an output file named
"_warn_duplicate_libraries".

The ld.bfd bug was fixed in binutils 2.36, in
https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=3991c7acb29aa8d7d52150695eb3efa03a08dd50.

Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 20:57:04 +08:00
openvela-robot c8c957ba35 adevsrc: modify the type of codec_id option param to string.
codec_id=65544 => codec_name=pcm_s32le.

Signed-off-by: yaojingwei <yaojingwei@xiaomi.com>
2026-04-20 20:57:01 +08:00
openvela-robot 2006b05fae avcodec/hevc/ps: return a proper error code when we don't support parsing an sps
Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 20:56:54 +08:00
openvela-robot 79836cf6b9 FFMPEG: ff_nuttx_capbility_query_ranges not relay on AVFormatContext
Signed-off-by: yangyalei <yangyalei@xiaomi.com>
2026-04-20 20:56:51 +08:00
Martin Schitter 1650eed075 libavcodec/dnxuc_parser: DNxUncompressed essence parser
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 20:56:47 +08:00
IndecisiveTurtle 0c7f91ae4e avcodec/vulkan: Add support for generating GLSL strings from comp shaders 2026-04-20 20:56:36 +08:00
Lynne c0f9e1d8e1 lavc/vulkan: add SPIR-V compilation support
This is the same as with libavfilter.

We will need SPIR-V compilation for at least three different things,
like the VC-2 encoder and decoder, AV1 film grain synthesis for
hardware with no support for it, and possibly other codecs.
2026-04-20 20:56:34 +08:00
Lynne 97caa0aa36 lavc/vulkan: remove redundant header 2026-04-20 20:56:34 +08:00
Nuo Mi caf2a484f8 avcodec: make a local copy of executor
We still need several refactors to improve the current VVC decoder's performance,
which will frequently break the API/ABI. To mitigate this, we've copied the executor from
avutil to avcodec. Once the API/ABI is stable, we will move this class back to avutil
2026-04-20 20:56:33 +08:00
Martin Storsjö 7eb821b02a libavcodec: Makefile: Move the librsvg entry to the right section
Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 20:56:29 +08:00
Jan Ekström 49fa35bb95 avcodec/videotoolbox: add AV1 hardware acceleration
Use AV1DecContext's current_obu to access the original OBUs, and
feed them to videotoolbox, rather than the bare slice data passed
via decode_slice.

This requires a small addition to AV1DecContext, for keeping track
of the current range of OBUs that belong to the current frame.

Co-authored-by: Ruslan Chernenko <ractyfree@gmail.com>
Co-authored-by: Martin Storsjö <martin@martin.st>
Signed-off-by: Martin Storsjö <martin@martin.st>
2026-04-20 20:56:29 +08:00
openvela-robot 48ade96938 lavfi/buffersink: add array-type options to replace "int-list" ones
"int-list" options are a hack that provides rudimentary support for
array-type options by treating them as byte arrays (i.e.
AV_OPT_TYPE_BINARY). Since we now have proper array-type options, they
should replace "int-list" everywhere (which happens to be just
buffersink).
2026-04-20 20:56:25 +08:00
openvela-robot 53a6ff767c FFmpeg/bluelet: output bluelet send & recv timer duration.
Signed-off-by: zhaocheng1 <zhaocheng1@xiaomi.com>
2026-04-20 20:56:22 +08:00
openvela-robot 0f949a99a6 MAINTAINERS: update myself for dvdvideo, rcwtdec, rcwtenc
I plan to look after and test them for the forseeable future.
I am not a committer but do care for these muxers/demuxers.

Signed-off-by: Marth64 <marth64@proxyid.net>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-04-20 20:56:19 +08:00
openvela-robot 3450efdfb3 asrc_dev: add codec option param.
Signed-off-by: yaojingwei <yaojingwei@xiaomi.com>
2026-04-20 20:56:16 +08:00
James Almer eace8f7b5a avcodec: add LCEVC decoding support via LCEVCdec
Signed-off-by: James Almer <jamrial@gmail.com>
2026-04-20 20:56:01 +08:00
Lynne a9e6b5355e lavc: add hevc_vulkan hardware encoder
This commit adds a Vulkan hardware HEVC encoder, with full support
of the spec - I, P, and B-frames.
2026-04-20 20:55:57 +08:00
Lynne 68ce2d9d85 hw_base_encode_h265: split off SPS/PPS/VPS generation from VAAPI
This commit splits off the base unit generation from VAAPI to allow
sharing with other encoders.
2026-04-20 20:55:57 +08:00
Lynne c2f1f2037d lavc: add h264_vulkan hardware encoder
This commit adds the first Vulkan hardware encoder.

Currently, P, and **B**-frames are supported. This marks the
first implementation to support both.

The encoder has feature-parity with VAAPI.
2026-04-20 20:55:56 +08:00
Lynne 539455b7ca lavc: add Vulkan video encoding base code
This commit adds the common Vulkan video encoding framework.
It makes full use of the asynchronous features of our new common
hardware encoding code, and of Vulkan.
The code is able to handle anything from H264 to AV1 and MJPEG.
2026-04-20 20:55:56 +08:00
Lynne 8dd01feb0a lavc/Makefile: only compile hw_base_encode_h264.c when actually needed 2026-04-20 20:55:51 +08:00
openvela-robot e2419e45b6 avutil/cpu_internal: Provide ff_getauxval() wrapper for getauxvaul()
Initially used for getauxval() but will be used to add support for
other API, such as elf_aux_info().

Signed-off-by: Brad Smith <brad@comstyle.com>
2026-04-20 20:55:47 +08:00
openvela-robot 1982473758 ffmpeg: fix coverity issue on error branch
Signed-off-by: jihandong <jihandong@xiaomi.com>
2026-04-20 20:55:44 +08:00
Lynne 73cffc771e hw_base_encode: move VAAPI SPS/PPS constructors to a shared file 2026-04-20 20:55:41 +08:00
openvela-robot e40f90da59 doc/filters: update uspp availability status
The filter was disabled in 95054bfa48 and re-enabled in 771c27119d
2026-04-20 20:55:32 +08:00
openvela-robot fb1995503c FFmpeg: optimize bluelet muxer output poll_available duration.
Signed-off-by: zhaocheng1 <zhaocheng1@xiaomi.com>
2026-04-20 20:55:22 +08:00
openvela-robot fc00de3142 cbs_av1: Copy loop filter and segment parameters of repeat frame from its mapped frame
Implement load/save loop filter and segment parameters defined in
section 7.20 and 7.21 in spec for show_existing_frame frames.

Fixes ticket #11151.

Signed-off-by: Fei Wang <fei.w.wang@intel.com>
2026-04-20 20:55:16 +08:00
openvela-robot eae57e9b75 ffmpeg: fix noise caused by pause twice
add more stringent restrictions. when pause, do not
enqueuebuffer to the driver. This cen avoid the problem
of noise caused by pause twice.

Signed-off-by: cenzhanquan1 <cenzhanquan1@xiaomi.com>
2026-04-20 20:55:13 +08:00
Anton Khirnov b7388404f5 lavc/opus*: move to opus/ subdir 2026-04-20 20:55:10 +08:00
Matthieu Bouron 873f1cbff0 avcodec: add Mediacodec audio decoders support
Signed-off-by: Matthieu Bouron <matthieu.bouron@gmail.com>
2026-04-20 20:55:09 +08:00
openvela-robot c70a1acd01 avcodec/vvcdec: misc, rename BDOF_BLOCK_SIZE to BDOF_MIN_BLOCK_SIZE 2026-04-20 20:55:06 +08:00
openvela-robot b636313163 ffmpeg: blulet_dec should report fmts by finding needed decoder.
Signed-off-by: jihandong <jihandong@xiaomi.com>
2026-04-20 20:55:03 +08:00
openvela-robot 37473d1193 lavu/opt: document underlying C types for enum AVOptionType 2026-04-20 20:54:58 +08:00