From ArchWiki
Jump to navigation Jump to search

youtube-dl is a command-line program that lets you easily download videos and audio from more than a thousand websites. See the list of supported sites.


Install the youtube-dl package, or youtube-dl-gitAUR for the development version. It is recommended to also install FFmpeg as it is used for muxing for some sites. See the optional dependencies.


The system-wide configuration file is /etc/youtube-dl.conf and the user-specific configuration file is ~/.config/youtube-dl/config. The syntax is simply one command-line option per line. Example configuration:

# --no-playlist

# Save in ~/Videos
-o ~/Videos/%(title)s.%(ext)s

# Prefer 1080p or lower resolutions
-f bestvideo[ext=mp4][height<1200]+bestaudio[ext=m4a]/bestvideo[ext=webm][height<1200]+bestaudio[ext=webm]/bestvideo[height<1200]+bestaudio/best[height<1200]/best

See [1] for more information.


See youtube-dl(1) for the manual.

$ youtube-dl [OPTIONS] URL
Tip: In some cases (like YouTube) URL can be substituted with the video ID.

Format selection

In cases where multiple formats of a video are available, youtube-dl will download the best ones by default.

To select a specific one to download, first get a list of the available formats:

$ youtube-dl -F URL

Note the code of the format you want, then run:

$ youtube-dl -f format URL

Extract audio

Use -x for audio-only downloads (requires FFmpeg):

$ youtube-dl -x -f bestaudio URL

Depending on the available source streams, this will often correct the audio-only container. If an audio-only stream is not available, exclude -f bestaudio from the example above. This will download the video and copy its audio as post process. By default this will remove the downloaded video, include -k to keep it.

To also include album art (requires atomicparsley):

$ youtube-dl -x -f bestaudio[ext=m4a] --embed-thumbnail URL


To see which languages are available:

$ youtube-dl --list-subs URL

To download a video with selected subtitles (comma separated):

$ youtube-dl --write-sub --sub-lang LANG URL

Tips and tricks

Faster downloads

Some websites throttle transfer speeds. You can often get around this by using aria2, an external downloader which supports multi-connection downloads. For example:

$ youtube-dl --external-downloader aria2c --external-downloader-args '-c -j 3 -x 3 -s 3 -k 1M' URL

Trim (partial download)

Parts of videos can be downloaded by using the output of youtube-dl -g -f format URL as ffmpeg input with the -ss, -t and -c copy options.

URL from clipboard

A shell alias, a desktop launcher or a keyboard shortcut can be set to download a video (or audio) of a selected (or copied) URL by outputting it from the X selection. See Clipboard#Tools.

See also