--break-on-reject Stop the download process when encountering
a file that has been filtered out
--no-download-archive Do not use archive file (default)
- --include-ads Download advertisements as well
- (experimental)
- --no-include-ads Do not download advertisements (default)
## Download Options:
-N, --concurrent-fragments N Number of fragments to download
--playlist-random Download playlist videos in random order
--xattr-set-filesize Set file xattribute ytdl.filesize with
expected file size
- --hls-prefer-native Use the native HLS downloader instead of
- ffmpeg
- --hls-prefer-ffmpeg Use ffmpeg instead of the native HLS
- downloader
--hls-use-mpegts Use the mpegts container for HLS videos;
allowing some players to play the video
while downloading, and reducing the chance
--no-hls-use-mpegts Do not use the mpegts container for HLS
videos. This is default when not
downloading live streams
- --external-downloader NAME Name or path of the external downloader to
- use. Currently supports aria2c, avconv,
- axel, curl, ffmpeg, httpie, wget
- (Recommended: aria2c)
+ --downloader [PROTO:]NAME Name or path of the external downloader to
+ use (optionally) prefixed by the protocols
+ (http, ftp, m3u8, dash, rstp, rtmp, mms) to
+ use it for. Currently supports native,
+ aria2c, avconv, axel, curl, ffmpeg, httpie,
+ wget (Recommended: aria2c). You can use
+ this option multiple times to set different
+ downloaders for different protocols. For
+ example, --downloader aria2c --downloader
+ "dash,m3u8:native" will use aria2c for
+ http/ftp downloads, and the native
+ downloader for dash/m3u8 downloads
+ (Alias: --external-downloader)
--downloader-args NAME:ARGS Give these arguments to the external
downloader. Specify the downloader name and
the arguments separated by a colon ":". You
stdin), one URL per line. Lines starting
with '#', ';' or ']' are considered as
comments and ignored
- -P, --paths TYPE:PATH The paths where the files should be
+ -P, --paths TYPES:PATH The paths where the files should be
downloaded. Specify the type of file and
the path separated by a colon ":". All the
same types as --output are supported.
home path after download is finished. This
option is ignored if --output is an
absolute path
- -o, --output [TYPE:]TEMPLATE Output filename template, see "OUTPUT
+ -o, --output [TYPES:]TEMPLATE Output filename template; see "OUTPUT
TEMPLATE" for details
--output-na-placeholder TEXT Placeholder value for unavailable meta
fields in output filename template
into a single file
--no-audio-multistreams Only one audio stream is downloaded for
each output file (default)
- --all-formats Download all available video formats
--prefer-free-formats Prefer video formats with free containers
over non-free ones of same quality. Use
with "-S ext" to strictly prefer free
Specify the postprocessor/executable name
and the arguments separated by a colon ":"
to give the argument to the specified
- postprocessor/executable. Supported
- postprocessors are: SponSkrub,
- ExtractAudio, VideoRemuxer, VideoConvertor,
- EmbedSubtitle, Metadata, Merger,
- FixupStretched, FixupM4a, FixupM3u8,
- SubtitlesConvertor, EmbedThumbnail and
- SplitChapters. The supported executables
- are: SponSkrub, FFmpeg, FFprobe, and
- AtomicParsley. You can also specify
- "PP+EXE:ARGS" to give the arguments to the
- specified executable only when being used
- by the specified postprocessor.
- Additionally, for ffmpeg/ffprobe, "_i"/"_o"
- can be appended to the prefix optionally
- followed by a number to pass the argument
- before the specified input/output file. Eg:
- --ppa "Merger+ffmpeg_i1:-v quiet". You can
- use this option multiple times to give
+ postprocessor/executable. Supported PP are:
+ Merger, ExtractAudio, SplitChapters,
+ Metadata, EmbedSubtitle, EmbedThumbnail,
+ SubtitlesConvertor, ThumbnailsConvertor,
+ VideoRemuxer, VideoConvertor, SponSkrub,
+ FixupStretched, FixupM4a and FixupM3u8. The
+ supported executables are: AtomicParsley,
+ FFmpeg, FFprobe, and SponSkrub. You can
+ also specify "PP+EXE:ARGS" to give the
+ arguments to the specified executable only
+ when being used by the specified
+ postprocessor. Additionally, for
+ ffmpeg/ffprobe, "_i"/"_o" can be appended
+ to the prefix optionally followed by a
+ number to pass the argument before the
+ specified input/output file. Eg: --ppa
+ "Merger+ffmpeg_i1:-v quiet". You can use
+ this option multiple times to give
different arguments to different
postprocessors. (Alias: --ppa)
-k, --keep-video Keep the intermediate video file on disk
path to the binary or its containing
directory
--exec CMD Execute a command on the file after
- downloading and post-processing, similar to
- find's -exec syntax. Example: --exec 'adb
- push {} /sdcard/Music/ && rm {}'
+ downloading and post-processing. Similar
+ syntax to the output template can be used
+ to pass any field as arguments to the
+ command. An additional field "filepath"
+ that contains the final path of the
+ downloaded file is also available. If no
+ fields are passed, "%(filepath)s" is
+ appended to the end of the command
--convert-subs FORMAT Convert the subtitles to another format
(currently supported: srt|ass|vtt|lrc)
(Alias: --convert-subtitles)
+ --convert-thumbnails FORMAT Convert the thumbnails to another format
+ (currently supported: jpg)
--split-chapters Split video into multiple files based on
internal chapters. The "chapter:" prefix
can be used with "--paths" and "--output"
-A, --auto-number -o "%(autonumber)s-%(id)s.%(ext)s"
-t, --title -o "%(title)s-%(id)s.%(ext)s"
-l, --literal -o accepts literal names
+ --all-formats -f all
--autonumber-size NUMBER Use string formatting. Eg: %(autonumber)03d
--metadata-from-title FORMAT --parse-metadata "%(title)s:FORMAT"
--prefer-avconv avconv is no longer officially supported (Alias: --no-prefer-ffmpeg)
--prefer-ffmpeg Default (Alias: --no-prefer-avconv)
+ --hls-prefer-native --downloader "m3u8:native"
+ --hls-prefer-ffmpeg --downloader "m3u8:ffmpeg"
--avconv-location avconv is no longer officially supported
-C, --call-home Not implemented
--no-call-home Default
+ --include-ads Not implemented
+ --no-include-ads Default
--write-srt --write-subs
--no-write-srt --no-write-subs
--srt-lang LANGS --sub-langs LANGS