ffmpeg/doc
Niklas Haas 2a091d4f2e swscale: introduce new, dynamic scaling API
As part of a larger, ongoing effort to modernize and partially rewrite
libswscale, it was decided and generally agreed upon to introduce a new
public API for libswscale. This API is designed to be less stateful, more
explicitly defined, and considerably easier to use than the existing one.

Most of the API work has been already accomplished in the previous commits,
this commit merely introduces the ability to use sws_scale_frame()
dynamically, without prior sws_init_context() calls. Instead, the new API
takes frame properties from the frames themselves, and the implementation is
based on the new SwsGraph API, which we simply reinitialize as needed.

This high-level wrapper also recreates the logic that used to live inside
vf_scale for scaling interlaced frames, enabling it to be reused more easily
by end users.

Finally, this function is designed to simply copy refs directly when nothing
needs to be done, substantially improving throughput of the noop fast path.

Sponsored-by: Sovereign Tech Fund
Signed-off-by: Niklas Haas <git@haasn.dev>
2024-11-25 11:03:50 +01:00
..
doxy
examples doc/examples/decode_filter_video: switch to new buffersink options 2024-09-30 09:10:20 +02:00
.gitignore
APIchanges swscale: introduce new, dynamic scaling API 2024-11-25 11:03:50 +01:00
authors.texi
bitstream_filters.texi doc/bitstream_filters: elaborate on h264_redundant_pps 2024-11-09 10:02:34 -06:00
bootstrap.min.css
build_system.txt
codecs.texi
community.texi
decoders.texi lavc/hevcdec: implement decoding MV-HEVC 2024-09-23 17:15:02 +02:00
default.css
demuxers.texi avformat/dvdvideodec: remove auto value for menu_lu option 2024-11-16 14:40:51 -06:00
developer.texi doc/developer: Document relationship between git accounts and MAINTAINERS 2024-11-20 21:28:14 +01:00
devices.texi
doxy-wrapper.sh
Doxyfile
encoders.texi doc/av1_qsv: Add missed options 2024-09-04 12:14:57 +08:00
errno.txt
faq.texi
fate_config.sh.template
fate.texi
ffmpeg-bitstream-filters.texi
ffmpeg-codecs.texi
ffmpeg-devices.texi
ffmpeg-filters.texi
ffmpeg-formats.texi
ffmpeg-protocols.texi
ffmpeg-resampler.texi
ffmpeg-scaler.texi
ffmpeg-utils.texi
ffmpeg.texi Document stream specifier syntax change from 46cbe4ab5c 2024-11-09 02:45:58 +01:00
ffmpeg.txt
ffplay.texi
ffprobe.texi
ffprobe.xsd
fftools-common-opts.texi Document stream specifier syntax change from 46cbe4ab5c 2024-11-09 02:45:58 +01:00
filter_design.txt
filters.texi lavfi/f_select: allow selection based on view ID 2024-09-23 17:11:40 +02:00
formats.texi
general_contents.texi avcodec/rv60: RealVideo 6.0 decoder 2024-11-03 10:53:15 +11:00
general.texi
git-howto.texi doc/git-howto: remove outdated line about gitolite 2024-11-08 15:59:13 +10:00
indevs.texi avdevice/decklink_dec: extend available actions on signal loss 2024-09-09 23:47:49 +02:00
infra.txt doc/infra: Document trac backup system 2024-11-20 21:28:13 +01:00
issue_tracker.txt
lexicon
libav-merge.txt
libavcodec.texi
libavdevice.texi
libavfilter.texi
libavformat.texi
libavutil.texi
libswresample.texi
libswscale.texi
mailing-list-faq.texi doc/mailing-list-faq: remove dead link 2024-08-14 18:25:37 +02:00
Makefile
metadata.texi
mips.txt
multithreading.txt
muxers.texi libavformat/hlsplaylist: add subtitle_varname for naming subtitle streams 2024-10-13 23:01:59 +08:00
nut.texi
optimization.txt configure: drop yasm support 2024-10-06 01:32:47 +02:00
outdevs.texi
patchwork
platform.texi configure: drop yasm support 2024-10-06 01:32:47 +02:00
print_options.c
protocols.texi
rate_distortion.txt
resampler.texi
scaler.texi
snow.txt
style.min.css
swresample.txt
swscale.txt
t2h.init
t2h.pm
tablegen.txt
texi2pod.pl
texidep.pl
transforms.md
undefined.txt
utils.texi avutil/channel_layout: add Binaural channels and layout 2024-11-13 12:38:04 -03:00
writing_filters.txt