mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2026-11-06 21:37:26 +00:00
f736784a52eeab4bdf7a8c2ed645a4b8e27dfeca
amf_setup_input_output_formats() builds both negotiated lists from output_pix_fmts and ignores its input_pix_fmts argument, so the input lists have never been used and have drifted from what the filters handle. None of them lists AV_PIX_FMT_D3D11 or AV_PIX_FMT_DXVA2_VLD even though amf_avframe_to_amfsurface() wraps both. sr_amf and vpp_amf carry the two in their output lists, so they accept such input today only because the input list is dead; vqe_amf and frc_amf carry them nowhere and gain the input here. vpp_amf meanwhile lists three formats AMF will not take: YUV420P10 and 0RGB have no format_map[] entry at all, and the video converter rejects GRAY8 with AMF_NOT_SUPPORTED. Those three only appear to work today because the dead input list leaves libavfilter converting them in software first. vpp_amf also loses BGR0, RGB0 and YUYV422. The converter takes them as input, but with the default format=same the output frames context is created in the input format, and hwcontext_amf cannot back an AMF frames context with RGB0 or YUYV422, nor download BGR0. Once the list is live, each of the three would fail at configuration or at hwdownload where libavfilter converts it in software today, so they stay out until hwcontext_amf supports them. Correct the lists in both directions so they describe reality before the helper is made to use them. No functional change on its own. Assisted-by: Claude Opus 5 Assisted-by: Claude Fable 5.1 Signed-off-by: Julius Bairaktaris <julius@bairaktaris.de>
…
…
FFmpeg README
FFmpeg is a collection of libraries and tools to process multimedia content such as audio, video, subtitles and related metadata.
Libraries
libavcodecprovides implementation of a wider range of codecs.libavformatimplements streaming protocols, container formats and basic I/O access.libavutilincludes hashers, decompressors and miscellaneous utility functions.libavfilterprovides means to alter decoded audio and video through a directed graph of connected filters.libavdeviceprovides an abstraction to access capture and playback devices.libswresampleimplements audio mixing and resampling routines.libswscaleimplements color conversion and scaling routines.
Tools
- ffmpeg is a command line toolbox to manipulate, convert and stream multimedia content.
- ffplay is a minimalistic multimedia player.
- ffprobe is a simple analysis tool to inspect multimedia content.
- Additional small tools such as
aviocat,ismindexandqt-faststart.
Documentation
The offline documentation is available in the doc/ directory.
The online documentation is available in the main website and in the wiki.
Examples
Coding examples are available in the doc/examples directory.
License
FFmpeg codebase is mainly LGPL-licensed with optional components licensed under GPL. Please refer to the LICENSE file for detailed information.
Contributing
Patches should be submitted to the ffmpeg-devel mailing list using
git format-patch or git send-email. Github pull requests should be
avoided because they are not part of our review process and will be ignored.
Languages
C
88.8%
Assembly
8.4%
Makefile
1.6%
GLSL
0.4%
C++
0.3%
Other
0.3%