summaryrefslogtreecommitdiff
path: root/Changelog
Commit message (Collapse)AuthorAge
* fftools/ffmpeg_filter: implement filtergraph chainingAnton Khirnov2024-04-09
| | | | | | | | | | This allows one complex filtergraph's output to be sent as input to another one, which is useful in certain situations (one is described in the docs). Chaining filtergraphs was already effectively possible by using a wrapped_avframe encoder connected to a loopback decoder, but it is ugly, non-obvious and inefficient.
* avcodec/liblc3: add encoding/decoding support of LC3 audio codecAntoine Soulier via ffmpeg-devel2024-04-04
| | | | | | | The LC3 audio codec is the default codec of Bluetooth LE audio. This is a wrapper over the liblc3 library (https://github.com/google/liblc3). Signed-off-by: Antoine Soulier <asoulier@google.com>
* Changelog: fix typos for 7.0 sectionMarth642024-04-04
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* changelog: update for 7.0Jean-Baptiste Kempf2024-04-04
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/rcwtdec: add RCWT Closed Captions demuxerMarth642024-04-02
| | | | | | | | | | | | | | | RCWT (Raw Captions With Time) is a format native to ccextractor, a commonly used OSS tool for processing 608/708 Closed Captions (CC). RCWT can be used to archive the original extracted CC bitstream. The muxer was added in January 2024. In this commit, add the demuxer. One can now demux RCWT files for rendering in ccaption_dec or interop with ccextractor (which produces RCWT). Using the muxer/demuxer combo, the CC bits can be kept for processing or rendering with either tool. This can be an effective way to backup an original CC stream, including format extensions like EIA-708 and overall original presentation. Signed-off-by: Marth64 <marth64@proxyid.net>
* Changelog: add next entryStefano Sabatini2024-04-02
|
* Changelog: Add 7.0 pointMichael Niedermayer2024-03-27
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* Changelog: add Android content URIs protocol entryMatthieu Bouron2024-03-27
| | | | Signed-off-by: Matthieu Bouron <matthieu.bouron@gmail.com>
* Changelog: add dnn libtorch backend entryWenbin Chen2024-03-23
| | | | Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
* Changelog: mention ffplay with hwaccel decoding supportZhao Zhili2024-03-22
| | | | Signed-off-by: Zhao Zhili <zhilizhao@tencent.com>
* Changelog: Add Support PacketTypeMetadata of PacketType in enhanced flvSteven Liu2024-03-18
| | | | | Reviewed-by: Jean-Baptiste Kempf <jb@videolan.org> Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
* fftools/ffmpeg: add loopback decodingAnton Khirnov2024-03-13
| | | | | This allows to send an encoder's output back to decoding and feed the result into a complex filtergraph.
* avformat/aea: add aea muxerasivery2024-03-12
| | | | Signed-off-by: asivery <asivery@protonmail.com>
* fftools/ffprobe: add AVFilmGrainParams printingNiklas Haas2024-03-07
|
* fftools/ffprobe: add support for Stream GroupsJames Almer2024-03-05
| | | | | Reviewed-by: Stefano Sabatini <stefasab@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* Changelog: restore new lineMarth642024-03-04
| | | | | | | A new line was removed in a1304272c3a0ef7c3d77c702dd466b3f11bf300f which breaks consistency in between versions. Signed-off-by: Marth64 <marth64@proxyid.net>
* libavformat/dvdvideo: add DVD-Video demuxer, powered by libdvdread and libdvdnavMarth642024-03-02
| | | | | Signed-off-by: Marth64 <marth64@proxyid.net> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* fftools/ffmpeg: remove options deprecated before 6.0Anton Khirnov2024-03-01
|
* lavc/qsvenc: update the selection of bitrate control methodHaihao Xiang2024-02-29
| | | | | | The default method is changed to CQP Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* Require compilers to support C11.Anton Khirnov2024-02-18
| | | | | | | | | It should be available in all relevant modern compilers and will allow us to use features like anonymous unions. Note that stdatomic.h is still emulated on MSVC, as current versions require the /experimental:c11atomics, and do not support ATOMIC_VAR_INIT() anyway.
* lavc/bsf: add a showinfo filterAnton Khirnov2024-02-02
| | | | | Analogous to the (a)showinfo lavfi filters, logs basic packet information. Mainly useful for debugging/testing/development.
* lavc/dxvenc: add DXV encoder with support for DXT1 texture formatConnor Worley2024-01-23
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* fftools/cmdutils: add option syntax for loading arbitrary arguments from a fileAnton Khirnov2024-01-20
| | | | Aligned with analogous feature for filter options in ffmpeg CLI.
* fftools/ffmpeg_demux: implement -bsf for inputAnton Khirnov2024-01-19
| | | | | Previously bitstream filters could only be applied right before muxing, this allows to apply them right after demuxing.
* libavformat: add RCWT closed caption muxexMarth642024-01-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Marth64 <marth64@proxyid.net> Raw Captions With Time (RCWT) is a format native to ccextractor, a commonly used open source tool for processing 608/708 closed caption (CC) sources. It can be used to archive the original, raw CC bitstream and to produce a source file file for later CC processing or conversion. As a result, it also allows for interopability with ccextractor for processing CC data extracted via ffmpeg. The format is simple to parse and can be used to retain all lines and variants of CC. A free specification of RCWT can be found here: https://github.com/CCExtractor/ccextractor/blob/master/docs/BINARY_FILE_FORMAT.TXT This muxer implements the specification as of 01/05/2024, which has been stable and unchanged for 10 years as of this writing. This muxer will have some nuances from the way that ccextractor muxes RCWT. No compatibility issues when processing the output with ccextractor have been observed as a result of this so far, but mileage may vary and outputs will not be a bit-exact match. Specifically, the differences are: (1) This muxer will identify as "FF" as the writing program identifier, so as to be honest about the output's origin. (2) ffmpeg's MPEG-1/2, H264, HEVC, etc. decoders extract closed captioning data differently than ccextractor from embedded SEI/user data. For example, DVD captioning bytes will be translated to ATSC A53 format. This allows ffmpeg to handle 608/708 in a consistant way downstream. This is a lossless conversion and the meaningful data is retained. (3) This muxer will not alter the extracted data except to remove invalid packets in between valid CC blocks. On the other hand, ccextractor will by default remove mid-stream padding, and add padding at the end of the stream (in order to convey the end time of the source video).
* avfilter: Add fsync filterThilo Borgmann2024-01-05
|
* vvcdec: add vvc decoderNuo Mi2024-01-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | vvc decoder plug-in to avcodec. split frames into slices/tiles and send them to vvc_thread for further decoding reorder and wait for the frame decoding to be done and output the frame Features: + Support I, P, B frames + Support 8/10/12 bits, chroma 400, 420, 422, and 444 and range extension + Support VVC new tools like MIP, CCLM, AFFINE, GPM, DMVR, PROF, BDOF, LMCS, ALF + 295 conformace clips passed - Not support RPR, IBC, PALETTE, and other minor features yet Performance: C code FPS on an i7-12700K (x86): BQTerrace_1920x1080_60_10_420_22_RA.vvc 93.0 Chimera_8bit_1080P_1000_frames.vvc 184.3 NovosobornayaSquare_1920x1080.bin 191.3 RitualDance_1920x1080_60_10_420_32_LD.266 150.7 RitualDance_1920x1080_60_10_420_37_RA.266 170.0 Tango2_3840x2160_60_10_420_27_LD.266 33.7 C code FPS on a M1 Mac Pro (ARM): BQTerrace_1920x1080_60_10_420_22_RA.vvc 58.7 Chimera_8bit_1080P_1000_frames.vvc 153.3 NovosobornayaSquare_1920x1080.bin 150.3 RitualDance_1920x1080_60_10_420_32_LD.266 105.0 RitualDance_1920x1080_60_10_420_37_RA.266 133.0 Tango2_3840x2160_60_10_420_27_LD.266 21.7 Asm optimizations still working in progress. please check https://github.com/ffvvc/FFmpeg/wiki#performance-data for the latest Contributors (based on code merge order): Nuo Mi <nuomi2021@gmail.com> Xu Mu <toxumu@outlook.com> Frank Plowman <post@frankplowman.com> Shaun Loo <shaunloo10@gmail.com> Wu Jianhua <toqsxw@outlook.com> Thank you for reporting issues and providing performance reports: Łukasz Czech <lukaszcz18@wp.pl> Xu Fulong <839789740@qq.com> Thank you for providing review comments: Ronald S. Bultje <rsbultje@gmail.com> James Almer <jamrial@gmail.com> Andreas Rheinhardt <andreas.rheinhardt@outlook.com> Co-authored-by: Xu Mu <toxumu@outlook.com> Co-authored-by: Frank Plowman <post@frankplowman.com> Co-authored-by: Shaun Loo <shaunloo10@gmail.com> Co-authored-by: Wu Jianhua <toqsxw@outlook.com>
* lavu/eval: add randomi function to compute random value in intervalStefano Sabatini2024-01-01
|
* lavfi: add quirc filterStefano Sabatini2024-01-01
|
* lavfi: add qrencode source and filterStefano Sabatini2024-01-01
|
* Add new vf_tiltandshift filterVittorio Giovara2023-12-21
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* Changelog: D3D12VA hardware accelerated H264, HEVC, VP9, AV1, MPEG-2 and VC1 ↵Wu Jianhua2023-12-21
| | | | | | | decoding Signed-off-by: Wu Jianhua <toqsxw@outlook.com> Signed-off-by: Tong Wu <tong1.wu@intel.com>
* avformat: Immersive Audio Model and Formats muxerJames Almer2023-12-18
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avformat: Immersive Audio Model and Formats demuxerJames Almer2023-12-18
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* gdigrab: allow capturing a window by its handleLena2023-12-17
| | | | | | | | | x11grab can capture windows by their ID, but gdigrab can only capture windows by their names, internally calling FindWindowW to lookup its handle. This patch simply allows the user to specify a window handle directly. Signed-off-by: Lena <lena@nihil.gay>
* fftools/ffmpeg: convert to a threaded architectureAnton Khirnov2023-12-12
| | | | | | | | | | Change the main loop and every component (demuxers, decoders, filters, encoders, muxers) to use the previously added transcode scheduler. Every instance of every such component was already running in a separate thread, but now they can actually run in parallel. Changes the results of ffmpeg-fix_sub_duration_heartbeat - tested by JEEB to be more correct and deterministic.
* avfilter: add Affine Projection adaptive audio filterPaul B Mahol2023-11-28
|
* avformat: add QOA demuxerPaul B Mahol2023-11-26
|
* avcodec: add QOA decoderPaul B Mahol2023-11-26
|
* avcodec: bump version after EVC additionsJames Almer2023-11-20
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec: LEAD MCMP decoderPeter Ross2023-11-08
| | | | | | | | | Partially fixes ticket #798 Reviewed-by: James Almer <jamrial@gmail.com> Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Peter Ross <pross@xvid.org>
* Changelog: mark 6.1James Almer2023-10-29
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* ffprobe: add -output_format as an alias of -ofStefano Sabatini2023-10-20
| | | | | Currently we have -of and -print_format, which is a bit confusing. Add -output_format as an alias of -of to match the short name.
* ffprobe: fix XML rendering, review XML layoutStefano Sabatini2023-10-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix rendering of int values within a side data element, which was broken since commit d2d3a83ad93, where the side data element was correctly marked as a variable fields element. Logic to render a string variable was implemented already, but it was not implemented for the int fields path, which was enabled by that commit. Also, code and schema is changed in order to account for multiple variable-fields elements - such as side data, contained within the same parent. Previously it was assumed that a single variable-fields element was contained within the parent, which was the case for tags, but is not the case for side-data. Previously data was rendered as: <side_data_list> <side_data side_data_type="CPB properties" max_bitrate="0" min_bitrate="0" avg_bitrate="0" buffer_size="327680" vbv_delay="-1"/> </side_data_list> Now as: <side_data_list> <side_data type="CPB properties"> <side_datum key="side_data_type" value="CPB properties"/> <side_datum key="max_bitrate" value="0"/> <side_datum key="min_bitrate" value="0"/> <side_datum key="avg_bitrate" value="0"/> <side_datum key="buffer_size" value="49152"/> <side_datum key="vbv_delay" value="-1"/> </side_data> </side_data_list> Variable-fields elements are rendered as a containing element wrapping generic key/values elements, enabling use of strict XML schema. Fix trac issue: https://trac.ffmpeg.org/ticket/10613
* lavc/vaapi_encode: Add VAAPI AV1 encoderFei Wang2023-09-22
| | | | | Signed-off-by: Fei Wang <fei.w.wang@intel.com> Acked-by: Neal Gompa <ngompa13@gmail.com>
* fftools/ffmpeg: deprecate the -top optionAnton Khirnov2023-09-18
| | | | | | It is badly named (should have been -top_field_first, or at least -tff), underdocumented and underspecified, and (most importantly) entirely redundant with the setfield filter.
* avformat: add CRI USM demuxerPaul B Mahol2023-09-17
|
* Changelog: Add Support hevc,vp9,av1 codec fourcclist in enhanced rtmp protocolSteven Liu2023-09-05
| | | | | Reviewed-by: Jean-Baptiste Kempf <jb@videolan.org> Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
* avformat: add OSQ demuxerPaul B Mahol2023-09-01
|
* Bump minor libavfilter version and add Changelog entryPaul B Mahol2023-08-14
|