diff options
author | nanahi <130121847+na-na-hi@users.noreply.github.com> | 2024-03-07 00:56:25 -0500 |
---|---|---|
committer | sfan5 <sfan5@live.de> | 2024-03-11 21:01:01 +0100 |
commit | 73e08043d221729c7a71a23a059378341f5c2634 (patch) | |
tree | d0157c3d9616ac161872609d5c64dde658f86e39 /DOCS/tech-overview.txt | |
parent | c254cf42cb30ffefc001137510e287373e6b7125 (diff) | |
download | mpv-73e08043d221729c7a71a23a059378341f5c2634.tar.bz2 mpv-73e08043d221729c7a71a23a059378341f5c2634.tar.xz |
DOCS/tech-overview.txt: add a section for the new filter framework
76276c92104c31ee936ba5c76a76072f09978c5f introduced a generic filtering
framework which replaced the separate video and audio filter chains.
Additionally, 6d36fad83c779936a012e85a1eb92ec94651c7c0 and
76e7e78ce989aad546310b9808cf7f96f23a281f made the decoder wrappers
a filter.
Add a new section to document this, and corrrect the outdated
audio/video decoder and filter info.
Diffstat (limited to 'DOCS/tech-overview.txt')
-rw-r--r-- | DOCS/tech-overview.txt | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/DOCS/tech-overview.txt b/DOCS/tech-overview.txt index 3e11666b34..a24e0161da 100644 --- a/DOCS/tech-overview.txt +++ b/DOCS/tech-overview.txt @@ -189,6 +189,14 @@ demux/: cache, which is implemented as a list of packets. The cache is complex because it support seeking, multiple ranges, prefetching, and so on. +filters/: + Filter related code. filter.c contains the generic filtering framework + which converts input frames to output frames (audio, video, or demux + packet data). f_decoder_wrapper.c is a source filter which connects the + frontend with the actual audio and video decoders. f_output_chain.c handles + VO/AO output conversions. f_autoconvert.c automatically inserts the + appropriate conversion filters if format conversion is needed. + video/: This contains several things related to audio/video decoding, as well as video filters. @@ -197,15 +205,11 @@ video/: internally. video/decode/: - vd_*.c are video decoders. (There's only vd_lavc.c left.) dec_video.c - handles most of connecting the frontend with the actual decoder. + vd_*.c are video decoders. (There's only vd_lavc.c left.) video/filter/: - vf_*.c and vf.c form the video filter chain. They are fed by the video - decoder, and output the filtered images to the VOs though vf_vo.c. By - default, no video filters (except vf_vo) are used. vf_scale is automatically - inserted if the video output can't handle the video format used by the - decoder. + vf_*.c are video filters. They are fed by the video decoder, and output the + filtered images to the VOs. By default, no video filters are used. video/out/: Video output. They also create GUI windows and handle user input. In most @@ -224,13 +228,13 @@ audio/: compressed formats used for spdif.) audio/decode/: - ad_*.c and dec_audio.c handle audio decoding. ad_lavc.c is the - decoder using ffmpeg. ad_spdif.c is not really a decoder, but is used for - compressed audio passthrough. + ad_*.c handle audio decoding. ad_lavc.c is the decoder using ffmpeg. + ad_spdif.c is not really a decoder, but is used for compressed audio + passthrough. audio/filter/: - Audio filter chain. af_lavrresample is inserted if any form of conversion - between audio formats is needed. + Audio filters. af_scaletempo2 is inserted by default if playback is different + from normal speed. audio/out/: Audio outputs. |