Usage: youtube-dl [OPTIONS] URL [URL...
]
Options:
General Options:
-h, --help
--version
-U, --update
sure that you have sufficient
-i, --ignore-errors
skip unavailable videos in a
--abort-on-error
playlist or the command line)
--dump-user-agent
--list-extractors
they would handle
--extractor-descriptions
tors
--default-search PREFIX
xample "gvsearch2:" downloads
Print this help text and exit
Print program version and exit
Update this program to latest version. Make
permissions (run with sudo if needed)
Continue on download errors, for example to
playlist
Abort downloading of further videos (in the
if an error occurs
Display the current browser identification
List all supported extractors and the URLs
Output descriptions of all supported extrac
Use this prefix for unqualified URLs. For e
two videos from google videos for youtube-d
l "large apple". Use the value
"auto" to let youtube-dl guess ("auto_warni
ng" to emit a warning when
guessing). "error" just throws an error. Th
e default value "fixup_error"
repairs broken URLs, but emits an error if
this is not possible instead of
--ignore-config
in the global configuration
searching.
Do not read configuration files. When given
file /etc/youtube-dl.conf: Do not read the
user configuration in ~/.config
/youtube-dl/config (%APPDATA%/youtube-dl/co
nfig.txt on Windows)
--flat-playlist
ly list them.
--no-color
Network Options:
--proxy URL
an empty string (--proxy "")
--socket-timeout SECONDS
--source-address IP
ntal)
-4, --force-ipv4
)
-6, --force-ipv6
)
--cn-verification-proxy URL
some Chinese sites. The default
Do not extract the videos of a playlist, on
Do not emit color codes in output
Use the specified HTTP/HTTPS proxy. Pass in
for direct connection
Time to wait before giving up, in seconds
Client-side IP address to bind to (experime
Make all connections via IPv4 (experimental
Make all connections via IPv6 (experimental
Use this proxy to verify the IP address for
proxy specified by --proxy (or none, if the
options is not present) is used
for the actual downloading. (experimental)
Video Selection:
--playlist-start NUMBER
Playlist video to start at (default is 1)
--playlist-end NUMBER
--playlist-items ITEM_SPEC
ndices of the videos in the
Playlist video to end at (default is last)
Playlist video items to download. Specify i
playlist seperated by commas like: "--playl
ist-items 1,2,5,8" if you want
to download videos indexed 1, 2, 5, 8 in th
e playlist. You can specify
range: "--playlist-items 1-3,7,10-13", it w
ill download the videos at index
--match-title REGEX
eless sub-string)
--reject-title REGEX
caseless sub-string)
--max-downloads NUMBER
--min-filesize SIZE
E (e.g. 50k or 44.6m)
--max-filesize SIZE
(e.g. 50k or 44.6m)
--date DATE
--datebefore DATE
this date (i.e. inclusive)
--dateafter DATE
his date (i.e. inclusive)
--min-views COUNT
OUNT views
--max-views COUNT
OUNT views
--match-filter FILTER
y any key (see help for -o for a
1, 2, 3, 7, 10, 11, 12 and 13.
Download only matching titles (regex or cas
Skip download for matching titles (regex or
Abort after downloading NUMBER files
Do not download any videos smaller than SIZ
Do not download any videos larger than SIZE
Download only videos uploaded in this date
Download only videos uploaded on or before
Download only videos uploaded on or after t
Do not download any videos with less than C
Do not download any videos with more than C
Generic video filter (experimental). Specif
list of available keys) to match if the key
is present, !key to check if
the key is not present,key > NUMBER (like "
comment_count > 12", also works
with >=, <, <=, !=, =) to compare against a
number, and & to require
multiple matches. Values which are not know
n are excluded unless you put a
question mark (?) after the operator.For ex
ample, to only match videos that
have been liked more than 100 times and dis
liked less than 50 times (or the
dislike functionality is not available at t
he given service), but who also
have a description, use --match-filter "li
ke_count > 100 & dislike_count
--no-playlist
to a video and a playlist.
--yes-playlist
a video and a playlist.
--age-limit YEARS
age
--download-archive FILE
ive file. Record the IDs of all
--include-ads
al)
Download Options:
<? 50 & description" .
Download only the video, if the URL refers
Download the playlist, if the URL refers to
Download only videos suitable for the given
Download only videos not listed in the arch
downloaded videos in it.
Download advertisements as well (experiment
-r, --rate-limit LIMIT
e.g. 50K or 4.2M)
-R, --retries RETRIES
nite".
--buffer-size SIZE
(default is 1024)
--no-resize-buffer
. By default, the buffer size is
Maximum download rate in bytes per second (
Number of retries (default is 10), or "infi
Size of download buffer (e.g. 1024 or 16K)
Do not automatically adjust the buffer size
automatically resized from an initial value
of SIZE.
--playlist-reverse
--xattr-set-filesize
cted filesize (experimental)
--hls-prefer-native
mpeg (experimental)
--external-downloader COMMAND
ently supports aria2c,curl,wget
--external-downloader-args ARGS
ader
Filesystem Options:
-a, --batch-file FILE
tdin)
--id
-o, --output TEMPLATE
get the title, %(uploader)s for
Download playlist videos in reverse order
Set file xattribute ytdl.filesize with expe
Use the native HLS downloader instead of ff
Use the specified external downloader. Curr
Give these arguments to the external downlo
File containing URLs to download ('-' for s
Use only video ID in file name
Output filename template. Use %(title)s to
the uploader name, %(uploader_id)s for the
uploader nickname if different,
%(autonumber)s to get an automatically incr
emented number, %(ext)s for the
filename extension, %(format)s for the form
at description (like "22 1280x720" or "HD"), %(format_id)s for the u
nique id of the format (like
YouTube's itags: "137"), %(upload_date)s fo
r the upload date (YYYYMMDD),
%(extractor)s for the provider (youtube, me
tacafe, etc), %(id)s for the
video id, %(playlist_title)s, %(playlist_id
)s, or %(playlist)s (=title if
present, ID otherwise) for the playlist the
video is in, %(playlist_index)s
for the position in the playlist. %(height)
s and %(width)s for the width
and height of the video format. %(resolutio
n)s for a textual description of
the resolution of the video format. %% for
a literal percent. Use - to
output to stdout. Can also be used to downl
oad to a different directory,
for example with -o '/my/downloads/%(upload
er)s/%(title)s-%(id)s.%(ext)s' .
--autonumber-size NUMBER
r)s when it is present in output
Specify the number of digits in %(autonumbe
filename template or --auto-number option i
s given
--restrict-filenames
, and avoid "&" and spaces in
-A, --auto-number
Restrict filenames to only ASCII characters
filenames
[deprecated; use -o "%(autonumber)s-%(titl
e)s.%(ext)s" ] Number downloaded
-t, --title
files starting from 00000
[deprecated] Use title in file name (defaul
t)
-l, --literal
-w, --no-overwrites
-c, --continue
By default, youtube-dl will
--no-continue
estart from beginning)
--no-part
o output file
--no-mtime
the file modification time
--write-description
ile
--write-info-json
--write-annotations
ml file
--load-info FILE
(created with the "--write-info--cookies FILE
ar in
--cache-dir DIR
can store some downloaded
[deprecated] Alias of --title
Do not overwrite files
Force resume of partially downloaded files.
resume downloads if possible.
Do not resume partially downloaded files (r
Do not use .part files - write directly int
Do not use the Last-modified header to set
Write video description to a .description f
Write video metadata to a .info.json file
Write video annotations to a .annotations.x
JSON file containing the video information
json" option)
File to read cookies from and dump cookie j
Location in the filesystem where youtube-dl
information permanently. By default $XDG_CA
CHE_HOME/youtube-dl or ~/.cache
/youtube-dl . At the moment, only YouTube p
layer files (for videos with
obfuscated signatures) are cached, but that
may change.
--no-cache-dir
--rm-cache-dir
Thumbnail images:
--write-thumbnail
--write-all-thumbnails
--list-thumbnails
ormats
Verbosity / Simulation Options:
-q, --quiet
--no-warnings
-s, --simulate
anything to disk
--skip-download
-g, --get-url
-e, --get-title
--get-id
--get-thumbnail
--get-description
--get-duration
--get-filename
--get-format
-j, --dump-json
See --output for a description
-J, --dump-single-json
Disable filesystem caching
Delete all filesystem cache files
Write thumbnail image to disk
Write all thumbnail image formats to disk
Simulate and list all available thumbnail f
Activate quiet mode
Ignore warnings
Do not download the video and do not write
Do not download
Simulate, quiet
Simulate, quiet
Simulate, quiet
Simulate, quiet
Simulate, quiet
Simulate, quiet
Simulate, quiet
Simulate, quiet
Simulate, quiet
the
but
but
but
but
but
but
but
but
but
video
print
print
print
print
print
print
print
print
print
URL
title
id
thumbnail URL
video description
video length
output filename
output format
JSON information.
of available keys.
Simulate, quiet but print JSON information
for each command-line argument.
If the URL refers to a playlist, dump the w
hole playlist information in a
--print-json
JSON (video is still being
--newline
--no-progress
--console-title
-v, --verbose
--dump-pages
ery verbose)
--write-pages
s in the current directory to
--print-traffic
-C, --call-home
--no-call-home
bugging
Workarounds:
--encoding ENCODING
--no-check-certificate
--prefer-insecure
nformation about the video.
--user-agent UA
--referer URL
access is restricted to one
--add-header FIELD:VALUE
separated by a colon ':'. You
--bidi-workaround
al text support. Requires bidiv
--sleep-interval SECONDS
load.
Video Format Options:
-f, --format FORMAT
N" for all the info
--all-formats
--prefer-free-formats
one is requested
-F, --list-formats
--youtube-skip-dash-manifest
e videos
--merge-output-format FORMAT
audio), output to given
single line.
Be quiet and print the video information as
downloaded).
Output progress bar as new lines
Do not print progress bar
Display progress in console titlebar
Print various debugging information
Print downloaded pages to debug problems (v
Write downloaded intermediary pages to file
debug problems
Display sent and read HTTP traffic
Contact the youtube-dl server for debugging
Do NOT contact the youtube-dl server for de
Force the specified encoding (experimental)
Suppress HTTPS certificate validation
Use an unencrypted connection to retrieve i
(Currently supported only for YouTube)
Specify a custom user agent
Specify a custom referer, use if the video
domain
Specify a custom HTTP header and its value,
can use this option multiple times
Work around terminals that lack bidirection
or fribidi executable in PATH
Number of seconds to sleep before each down
Video format code, see the "FORMAT SELECTIO
Download all available video formats
Prefer free video formats unless a specific
List all available formats
Do not download the DASH manifest on YouTub
If a merge is required (e.g. bestvideo+best
container format. One of mkv, mp4, ogg, web
m, flv.Ignored if no merge is
required
Subtitle Options:
--write-sub
--write-auto-sub
Write subtitle file
Write automatic subtitle file (YouTube only
)
--all-subs
Download all the available subtitles of the
video
--list-subs
--sub-format FORMAT
, for example: "srt" or
--sub-lang LANGS
ional) separated by commas, use
List all available subtitles for the video
Subtitle format, accepts formats preference
"ass/srt/best"
Languages of the subtitles to download (opt
IETF language tags like 'en,pt'
Authentication Options:
-u, --username USERNAME
-p, --password PASSWORD
t, youtube-dl will ask
-2, --twofactor TWOFACTOR
-n, --netrc
--video-password PASSWORD
Post-processing Options:
-x, --extract-audio
quires ffmpeg or avconv and
--audio-format FORMAT
s", "mp3", "m4a", "opus", or
--audio-quality QUALITY
a value between 0 (better) and
Login with this account ID
Account password. If this option is left ou
interactively.
Two-factor auth code
Use .netrc authentication data
Video password (vimeo, smotri)
Convert video files to audio-only files (re
ffprobe or avprobe)
Specify audio format: "best", "aac", "vorbi
"wav"; "best" by default
Specify ffmpeg/avconv audio quality, insert
9 (worse) for VBR or a specific bitrate lik
e 128K (default 5)
--recode-video FORMAT
sary (currently supported:
-k, --keep-video
processing; the video is erased
--no-post-overwrites
post-processed files are
--embed-subs
and mp4 videos)
--embed-thumbnail
--add-metadata
--metadata-from-title FORMAT
artist from the video title.
Encode the video to another format if neces
mp4|flv|ogg|webm|mkv)
Keep the video file on disk after the postby default
Do not overwrite post-processed files; the
overwritten by default
Embed subtitles in the video (only for mkv
Embed thumbnail in the audio as cover art
Write metadata to the video file
Parse additional metadata like song title /
The format syntax is the same as --output,
the parsed parameters replace
existing values. Additional templates: %(al
bum), %(artist). Example:
--metadata-from-title "%(artist)s - %(title
)s" matches a title like
--xattrs
using dublin core and xdg
--fixup POLICY
ile. One of never (do nothing),
"Coldplay - Paradise"
Write metadata to the video file's xattrs (
standards)
Automatically correct known faults of the f
warn (only emit a warning), detect_or_warn(
the default; fix file if we can,
--prefer-avconv
warn otherwise)
Prefer avconv over ffmpeg for running the p
ostprocessors (default)
--prefer-ffmpeg
ostprocessors
--ffmpeg-location PATH
r the path to the binary or its
--exec CMD
ding, similar to find's -exec
Prefer ffmpeg over avconv for running the p
Location of the ffmpeg/avconv binary; eithe
containing directory.
Execute a command on the file after downloa
syntax. Example: --exec 'adb push {} /sdcar
d/Music/ && rm {}'
--convert-subtitles FORMAT
ently supported: srt|ass|vtt)
Convert the subtitles to other format (curr