]> jfr.im git - yt-dlp.git/blob - yt_dlp/postprocessor/__init__.py
Add option `--concat-playlist`
[yt-dlp.git] / yt_dlp / postprocessor / __init__.py
1 # flake8: noqa: F401
2
3 from ..utils import load_plugins
4
5 from .common import PostProcessor
6 from .embedthumbnail import EmbedThumbnailPP
7 from .exec import ExecPP, ExecAfterDownloadPP
8 from .ffmpeg import (
9 FFmpegPostProcessor,
10 FFmpegConcatPP,
11 FFmpegEmbedSubtitlePP,
12 FFmpegExtractAudioPP,
13 FFmpegFixupDuplicateMoovPP,
14 FFmpegFixupDurationPP,
15 FFmpegFixupStretchedPP,
16 FFmpegFixupTimestampPP,
17 FFmpegFixupM3u8PP,
18 FFmpegFixupM4aPP,
19 FFmpegMergerPP,
20 FFmpegMetadataPP,
21 FFmpegSubtitlesConvertorPP,
22 FFmpegThumbnailsConvertorPP,
23 FFmpegSplitChaptersPP,
24 FFmpegVideoConvertorPP,
25 FFmpegVideoRemuxerPP,
26 )
27 from .metadataparser import (
28 MetadataFromFieldPP,
29 MetadataFromTitlePP,
30 MetadataParserPP,
31 )
32 from .modify_chapters import ModifyChaptersPP
33 from .movefilesafterdownload import MoveFilesAfterDownloadPP
34 from .sponskrub import SponSkrubPP
35 from .sponsorblock import SponsorBlockPP
36 from .xattrpp import XAttrMetadataPP
37
38 _PLUGIN_CLASSES = load_plugins('postprocessor', 'PP', globals())
39
40
41 def get_postprocessor(key):
42 return globals()[key + 'PP']
43
44
45 __all__ = [name for name in globals().keys() if name.endswith('PP')]
46 __all__.extend(('PostProcessor', 'FFmpegPostProcessor'))