YouTube-DL (not to be confused with YouTube Downloader) is a free, cross-platform tool used to download videos from websites like YouTube which is useful for obtaining source material to make YouTube Poops. Despite the name of this software, YouTube-DL can download videos from a very wide variety of websites. This program is a command line program and may have a high learning curve to those not comfortable with or not used to using the command line. However, the command line version of this program is the best version of this program because it allows for many customization options. YouTube-DLG is also available which is easier to use than the original version since it uses the GUI but it's more inflexible than the command line version.
- Unlike programs like 4K Video Downloader, YouTube-DL is available completely free of charge and there are no limitations that requires you buy the full version.
- Has the ability to download entire playlists and channels on YouTube which can be handy for archiving purposes.
- Can download from a ton of different websites! (Check out this list.)
- Supports a wide variety of formats (MP4, M4A, FLV, WEBM, MP3, WAV, OGG, ect.)
- Can download thumbnails, titles, or even descriptions of the videos on YouTube.
- Can download YouTube Ads if you really want to. (Feature is considered experimental at the moment, beware)
- Has the ability to download videos in 4K or 60fps.
- High learning curve if you're not familiar with the command line.
- Not as easy to use as other video downloaders.
- You may need to memorize commands if you don't want to use the "youtube-dl -h" command every time.
- YouTube-DL can no longer work as time goes by and requires users to update it periodically.
- Downloading specific formats like 4K or 60fps videos off of YouTube requires more typing and the use of the "-F" flag beforehand to see which format to download. You pick the format by the format code.
- Can be mistaken as hacking if you are seen using this program in public.
- May be forced to download videos in one location if you are using the Windows version in Command Prompt. (Can download anywhere on MacOS or Linux though. Can be avoided by using WSL on Windows 10.)
Methods of installing this program vary on each operating system. Here are the easiest and the best ways to install them for each operating systems:
- 1. Create a folder called "youtube-dl" somewhere in your user folder. Let's say "C:\Users\username\Downloads\youtube-dl" in this case.
- 2. Install Microsoft Visual C++ 2010 Redistributable Package (x86) if you don't have that installed on your computer.
- 3. Download the Windows exe file from this website and download it to "C:\Users\username\Downloads\youtube-dl\".
Once you done these three steps, you can now open the Command Prompt and type in these two commands:
>cd Downloads >cd youtube-dl
If your Command Prompt has this before the blinking cursor, you can now use youtube-dl simply by typing in "youtube-dl":
You can also type in "dir" to verify that the exe file is in there if you aren't sure.
To update Youtube-DL, type in this command within your "youtube-dl" folder:
Alternatively, you can enable Windows Subsystem for Linux and install a Linux distribution from the Windows Store then follow the Linux instructions here if you are using Windows 10.
- 1. Install Homebrew
- 2. Type in the following:
$ brew install youtube-dl
After that, you are ready to use YouTube-DL simple by typing in "youtube-dl" in your current directory. (Which is your home folder by default. You can navigate using "cd".)
To update YouTube-DL, type in this command:
$ brew update && brew upgrade youtube-dl
There are multiple ways to install YouTube-DL on Linux. It is highly recommended to get the latest version of YouTube-DL.
Pip Install (Recommended for Ubuntu, Debian, Linux Mint, etc.)
- 1. Install "pip" using your package manager like this if you are using Ubuntu or Debian:
$ sudo apt-get install python-pip
- 2. Install youtube-dl using pip like this:
$ sudo pip install --upgrade youtube_dl
To upgrade youtube-dl, simply re-execute that command in Step 2 again down the line.
Since Arch Linux and Manjaro has the latest version of youtube-dl in the official repositories, it's recommended to simply type in this command:
$ sudo pacman -S youtube-dl
Type in this command:
$ sudo zypper install youtube-dl
- 1. Enable the EPL Repository.
- 2. Type in this command:
$ sudo yum install youtube-dl
After YouTube-DL is installed for your Linux system, it can be used with the "youtube-dl" command in your Terminal. YouTube-DL will be updated by the distributions' package manager respectively except those done with pip install. Any Linux distro can install YouTube-DL using pip.
YouTube-DL can simply download a video like this:
It can also download playlists like this:
As well as YouTube channels:
To download audio from a video, it can be done like this (you can swap out "mp3" with other audio formats like flac, wav, or ogg):
youtube-dl -x --audio-format mp3 https://www.youtube.com/watch?v=M9lRpkk4cWg
You can also use YouTube-DL to download a thumbnail used by a YouTube video like this:
youtube-dl --get-thumbnail https://www.youtube.com/watch?v=uxqaI0UBDHM
If you would like to know what flags you can use, you can get the help page by typing in:
Let's say you want to download a video that is in 60 frames per second, like this one. Maybe not that one specifically, but it will be used as an example for this demonstration.
You start by typing in this command:
youtube-dl -F https://www.youtube.com/watch?v=0LquON0MOZc
You should see this output after you have typed that in:
[youtube] 0LquON0MOZc: Downloading webpage [youtube] 0LquON0MOZc: Downloading embed webpage [youtube] 0LquON0MOZc: Refetching age-gated info webpage [info] Available formats for 0LquON0MOZc: format code extension resolution note 249 webm audio only tiny 62k , opus @ 50k (48000Hz), 450.48KiB 250 webm audio only tiny 80k , opus @ 70k (48000Hz), 581.39KiB 140 m4a audio only tiny 130k , m4a_dash container, mp4a.40.2@128k (44100Hz), 1001.51KiB 251 webm audio only tiny 150k , opus @160k (48000Hz), 1.07MiB 394 mp4 256x144 144p 85k , av01.0.00M.08, 30fps, video only, 610.42KiB 160 mp4 256x144 144p 109k , avc1.4d400c, 30fps, video only, 660.38KiB 278 webm 256x144 144p 120k , webm container, vp9, 30fps, video only, 737.86KiB 395 mp4 426x240 240p 193k , av01.0.00M.08, 30fps, video only, 1.32MiB 242 webm 426x240 240p 224k , vp9, 30fps, video only, 1.46MiB 133 mp4 426x240 240p 265k , avc1.4d4015, 30fps, video only, 1.53MiB 396 mp4 640x360 360p 349k , av01.0.01M.08, 30fps, video only, 2.41MiB 243 webm 640x360 360p 405k , vp9, 30fps, video only, 2.64MiB 134 mp4 640x360 360p 564k , avc1.4d401e, 30fps, video only, 3.02MiB 397 mp4 854x480 480p 643k , av01.0.04M.08, 30fps, video only, 4.45MiB 244 webm 854x480 480p 676k , vp9, 30fps, video only, 4.11MiB 135 mp4 854x480 480p 771k , avc1.4d401f, 30fps, video only, 4.52MiB 298 mp4 1280x720 720p60 1299k , avc1.4d4020, 60fps, video only, 8.10MiB 247 webm 1280x720 720p 1513k , vp9, 30fps, video only, 11.22MiB 302 webm 1280x720 720p60 1922k , vp9, 60fps, video only, 12.04MiB 136 mp4 1280x720 720p 2001k , avc1.4d401f, 30fps, video only, 11.93MiB 248 webm 1920x1080 1080p 2648k , vp9, 30fps, video only, 19.72MiB 137 mp4 1920x1080 1080p 3383k , avc1.640028, 30fps, video only, 21.41MiB 299 mp4 1920x1080 1080p60 4079k , avc1.64002a, 60fps, video only, 24.79MiB 303 webm 1920x1080 1080p60 4413k , vp9, 60fps, video only, 32.86MiB 43 webm 640x360 360p , vp8.0, vorbis@128k, 6.97MiB 18 mp4 640x360 360p 660k , avc1.42001E, mp4a.40.2@ 96k (44100Hz), 4.98MiB 22 mp4 1280x720 720p 1711k , avc1.64001F, mp4a.40.2@192k (44100Hz) (best)
If you wanted a 1080p 60fps video of that video in a MP4 format, the video format should be in MP4 and the audio should be in M4A. If you tried mixing it with MP4 video and WEBM audio, you will get a MKV file which is not supported in most video editors until it is converted.
The two formats we would want from that list is 299 and 140. You can get the 1080p60 video with audio by typing in this command:
youtube-dl -f 299+140 https://www.youtube.com/watch?v=0LquON0MOZc
And there you go! You now have downloaded a video in 1080p, 60 fps. Keep in mind that the "-f number + number" works if you put the video format before the audio format so like this:
youtube-dl -f video+audio link
If you're not much of a nerd at all, then YouTube-DLG may be a better fit for your needs. YouTube-DLG is a GUI front-end version of YouTube-DL. It is available for Windows and Linux. MacOS users unfortunately will only have the original command line version.
YouTube-DLG has a more straightforward way to install on Windows and is much easier to use though it may not be as flexible as the command line version.
Advantages over YouTube-DL
- Easier to use and comfortable.
- Easier and more straight-forward installation.
- Don't need to memorize commands.
- People will not think that you are hacking if you use this program in public, saving yourself from getting kicked out of Starbucks.
Disadvantages over YouTube-DL
- The UI might be a bit confusing for some people.
- Cannot do custom commands except done automated in the options for the program which isn't very ideal.
- May not be able to download 60FPS videos due to inflexibility.
- Interface may look broken in GTK themes that aren't Adwaita on Linux. Especially for dark themes.
- You won't be able to see what YouTube-DL is doing in detail.
In conclusion, YouTube-DLG seems to be a fine choice for those who aren't as tech savvy and can fit most people's needs just fine. Keep in mind of the limitations and the clunky user interface.