Update this program to latest version. Make sure you have sufficient permissions (run with sudo if needed)
--ignore-errors,-i
Continue on download errors, for example to skip unavailable videos in a playlist
--abort-on-error
Abort downloading of further videos (in the playlist or the command line) if an error occurs
--dump-user-agent
Display the current browser identification
--list-extractors
List all supported extractors
--extractor-descriptions
Output descriptions of all supported extractors
--default-search <command>
Use this prefix for unqualified URLs. For example "gvsearch2:" downloads two videos from google videos for youtube-dl "large apple"
--config-location <command>
Location of the configuration file; either the path to the config or its containing directory
--force-generic-extractor
Force extraction to use the generic extractor
--ignore-config
Do not read configuration files
--flat-playlist
Do not extract the videos of a playlist, only list them
--mark-watched
Mark videos watched (YouTube only)
--no-mark-watched
Do not mark videos watched (YouTube only)
--no-color
Do not emit color codes in output
--proxy <command>
Use the specified HTTP/HTTPS/SOCKS proxy. Pass in an empty string for direct connection
--socket-timeout <command>
Time to wait before giving up, in seconds
--source-address <command>
Client-side IP address to bind to
-4,--force-ipv4
Make all connections via IPv4
-6,--force-ipv6
Make all connections via IPv6
--geo-verification-proxy <command>
Use this proxy to verify the IP address for some geo-restricted sites
--geo-bypass
Bypass geographic restriction via faking X-Forwarded-For HTTP header
--no-geo-bypass
Do not bypass geographic restriction via faking X-Forwarded-For HTTP header
--geo-bypass-country <command>
Force bypass geographic restriction with explicitly provided two-letter ISO 3166-2 county code
--geo-bypass-ip-block <command>
Force bypass geographic restriction with explicitly provided IP block in CIDR notation
--playlist-start <command>
Playlist video to start at (default is 1)
--playlist-end <command>
Playlist video to end at (default is last)
--playlist-items <command>
Playlist video to end at (default is last)
--match-title <command>
Download only matching titles (regex or caseless sub-string)
--reject-title <command>
Skip download for matching titles (regex or caseless sub-string)
--max-downloads <command>
Abort after downloading NUMBER files
--min-filesize <command>
Do not download any videos smaller than SIZE (e.g. 50k or 44.6)
--max-filesize <command>
Do not download any videos larger than SIZE (e.g. 50k or 44.6)
--date <command>
Download only videos uploaded in this date
--datebefore <command>
Download only videos uploaded on or before this date (i.e. inclusive)
--dateafter <command>
Download only videos uploaded on or after this date (i.e. inclusive)
--min-views <command>
Do not download any videos with less than COUNT views
--max-views <command>
Do not download any videos with more than COUNT views
--match-filter <command>
Generic video filter
--no-playlist
Download only the video, if the URL refers to a video and a playlist
--yes-playlist
Download the playlist, if the URL refers to a video and a playlist
--age-limit <command>
Download only videos suitable for the given age
--download-archive <command>
Download only videos not listed in the archive file. Record the IDs of all downloaded videos in it
--include-ads
Download advertisements as well (experimental)
-r,--limit-rate <command>
Maximum download rate in bytes per second (e.g. 50K or 4.2M)
-R,--retries <command>
Number of retries or "infinite"
--fragment-retries <command>
Number of retries for a fragment or "infinite"
--skip-unavailable-fragments
Skip unavailable fragments
--abort-on-unavailable-fragments
Abort downloading when some fragment is not available
--keep-fragments
Keep downloaded fragments on disk after downloading is finished; fragments are erased by default
--buffer-size <command>
Size of download buffer (e.g. 1024 or 16K)
--no-resize-buffer
Do not automatically adjust the buffer size
--http-chunk-size <command>
Size of a chunk for chunk-based HTTP downloading (e.g. 10385760 or 10M)
--playlist-reverse
Download playlist videos in reverse order
--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-prefer-mpegts
Use the mpegts container for HLS videos, allowing to play the video while downloading
--external-downloader <command>
Use the specified external downloader
--external-downloader-args <command>
Give these arguments to the external downloader
-a,--batch-file <command>
File containing URLs to download ('-' for stdin), one URL per line. Lines starting with '#', ';' or ']' are considered as comments and ignored
--id
Use only video ID in file name
-o,--output <command>
Output filename template
--output-na-placeholder <command>
Placeholder value for unavailable meta fields in output filename template
--autonumber-start <command>
Specify the start value for %(autonumber)s
--restrict-filenames
Restrict filenames to only ASCII characters, and avoid "&" and spaces in filenames
-w,--no-overwrites
Do not overwrite files
-c,--continue
Do not resume partially downloaded files (restart from beginning)
--no-part
Do not use .part files - write directly into output file
--no-mtime
Do not use the Last-modified header to set the file modification time
--write-description
Write video descriptions to a .description file
--write-info-json
Write video metadata to a .info.json file
--write-annotations
Write video annotations to a .annotations.xml file
--load-info-json <command>
JSON file containing the video information (created with the "--write-info-json" option
--cookies <command>
File to read cookies from and dump cookie jar in
--cache-dir <command>
Location in the filesystem where youtube-dl can store some downloaded information permanently
--no-cache-dir
Disable filesystem caching
--rm-cache-dir
Delete all filesystem cache files
--write-thumbnail
Write thumbnail image to disk
--write-all-thumbnail
Write all thumbnail image formats to disk
--list-thumbnails
Simulate and list all available thumbnail formats
-q,--quiet
Activate quite mode
--no-warnings
Ignore warnings
-s,--simulate
Do not download the video and do note write anything to disk
--skip-download
Do not download the video
-g,--get-url
Simulate, quiet but print URL
-e,--get-title
Simulate, quiet but print title
--get-id
Simulate, quiet but print id
--get-thumbnail
Simulate, quiet but print thumbnail URL
--get-description
Simulate, quiet but print video description
--get-duration
Simulate, quiet but print video length
--get-filename
Simulate, quiet but print output filename
--get-format
Simulate, quiet but print output format
-j,--dump-json
Simulate, quiet but JSON information
-J,--dump-single-json
Simulate, quiet but JSON information for each command-line argument
--print-json
Be quiet and print the video information as JSON (video is still being downloaded)
--newline
Output the progress bar as new lines
--no-progress
Do not print the progress bar
--console-title
Display progress in console titlebar
-v,--verbose
Print various debugging information
--dump-pages
Print downloaded pages encoded using base64 to debug problems (very verbose)
--write-pages
Write downloaded intermediary pages to files in the current directory to debug problems
--print-traffic
Display sent and read HTTP traffic
-C,--call-home
Contact the youtube-dl server for debugging
--no-call-home
Do NOT contact the youtube-dl server for debugging
--encoding <command>
Force the specified encoding (experimental)
--no-check-certificate
Suppress HTTPS certificate validation
--prefer-insecure
Use an unencrypted connection to retrieve information about the video. (Currently supported only for YouTube)
--user-agent <command>
Specify a custom user agent
--referer <command>
Specify a custom referer, use if the video access is restricted to one domain
--add-header <command>
Repeatable ♾
--bidi-workaround
Work around terminals that lack bidirectional text support. Requires bidiv or fribidi executable in PATH
--sleep-interval <command>
Number of seconds to sleep before each download when used alone or a lower bound of a range for randomized sleep before each download when used along with --max-sleep-interval
--max-sleep-interval <command>
Upper bound of a range for randomized sleep before each download. Must only be used along with --min- sleep-interval
-f,--format <command>
Video format code
--all-formats
Download all available video formats
--prefer-free-formats
Prefer free video formats unless a specific one is requested
-F,--list-formats
List all available formats of requested videos
--youtube-skip-dash-manifest
Do not download the DASH manifests and related data on YouTube videos
--merge-output-format <command>
If a merge is required (e.g. bestvideo+bestaudio), output to given container format
Multiple-system operator account password. If this option is left out, youtube-dl will ask interactively
--ap-list-mso
List all supported multiple-system operators
-x,--extract-audio
Convert audio files to audio-only files (requires ffmpeg/avconv and ffprobe/avprobe)
--audio-format <command>
Specify audio format
--audio-quality <command>
Specify ffmpeg/avconv audio quality, insert a value between 0 (better) and 9 (worse) for VBR or a specific bitrate like 128K
--recode-video <command>
Encode the video to another format if necessary
--postprocessor-args <command>
Give these arguments to the postprocessor
-k,--keep-video
Keep the video file on disk after the post-processing; the video is erased by default
--no-post-overwrites
Do not overwrite post-processed files; the post-processed files are overwritten by default
--embed-subs
Embed subtitles in the video (only for mp4, webm and mkv videos)
--embed-thumbnails
Embed thumbnail in the audio as cover art
--embed-metadata
Write metadata to the video file
--metadata-from-title <command>
Parse additional metadata like song title / artist from the video title. The format syntax is the same as --output. Regular expressions with named capture groups may also be used. The parsed parameters replace existing values
--xattrs
Write metadata to the video file's xattrs (using dublin core and xdg standards)
--fixup <command>
Automatically correct known faults of the file
--prefer-avconv
Prefer avconv over ffmpeg for running the postprocessors
--prefer-ffmpeg
Prefer ffmpeg over avconv for running the postprocessors (default)
--ffmpeg-location <command>
Location of the ffmpeg/avconv binary; either the path to the binary or its containing directory
--exec <command>
Execute a command on the file after downloading and post-processing, similar to find's -exec syntax