]> jfr.im git - yt-dlp.git/blob - yt_dlp/postprocessor/__init__.py
[dash,youtube] Download live from start to end (#888)
[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 FFmpegEmbedSubtitlePP,
11 FFmpegExtractAudioPP,
12 FFmpegFixupDuplicateMoovPP,
13 FFmpegFixupDurationPP,
14 FFmpegFixupStretchedPP,
15 FFmpegFixupTimestampPP,
16 FFmpegFixupM3u8PP,
17 FFmpegFixupM4aPP,
18 FFmpegMergerPP,
19 FFmpegMetadataPP,
20 FFmpegSubtitlesConvertorPP,
21 FFmpegThumbnailsConvertorPP,
22 FFmpegSplitChaptersPP,
23 FFmpegVideoConvertorPP,
24 FFmpegVideoRemuxerPP,
25 )
26 from .metadataparser import (
27 MetadataFromFieldPP,
28 MetadataFromTitlePP,
29 MetadataParserPP,
30 )
31 from .modify_chapters import ModifyChaptersPP
32 from .movefilesafterdownload import MoveFilesAfterDownloadPP
33 from .sponskrub import SponSkrubPP
34 from .sponsorblock import SponsorBlockPP
35 from .xattrpp import XAttrMetadataPP
36
37 _PLUGIN_CLASSES = load_plugins('postprocessor', 'PP', globals())
38
39
40 def get_postprocessor(key):
41 return globals()[key + 'PP']
42
43
44 __all__ = [name for name in globals().keys() if name.endswith('PP')]
45 __all__.extend(('PostProcessor', 'FFmpegPostProcessor'))