video downloader in terminal with youtube-dl
DESCRIPTION
Video Downloader in terminal with youtube-dlTRANSCRIPT
Video Downloader `youtube-dl` Gets Support For
Separate Audio And Video YouTube DASH Streams
YouTube uses Dynamic Adaptive Streaming over HTTP (DASH) for delivering videos and along with
that, it serves the audio and video in two separate streams for some resolutions/formats. For instance,
resolutions like 1080p and 480p are available only with separate audio and video streams.
youtube-dl, a popular command line tool for downloading videos from YouTube and other
similar websites, was updated recently with proper support for DASH and separate audio and
video streams: the tool can now automatically combine / merge / multiplex the audio and
video formats offered by YouTube.
Here's an example via cynic.cc for downloading separate audio and video streams from YouTube and
combining them automatically using youtube-dl (which uses ffmpeg or avconv under the hood):
"Now, if you want a 480p video in H.264 format, High profile, with 128kbps AAC audio (this used to be Youtube's format
35), you can specify format -f 135+140 on the command-line and it will download both the audio, the video and multiplex it
with ffmpeg (or avconv, depending on what you have installed)."
And that's not all, a lot of other improvements and fixes are added daily to this command line
download tool.
For instance, since our previous article about youtube-dl, the downloader received support for many
websites, including: Vevo, 9gag, discovery.com, vk.com, southpark.de, myspace.com, vube.com, vesti.ru,
stream.cz, ndr.de, onf.ca, Dropbox and so on, along with many fixes and improvements.
For those not familiar with youtube-dl, this command line video downloader not only supports
hundreds of websites, but it can also extract the audio automatically, download playlists, download and
embed subtitles into videos and more.
Install youtube-dl in Ubuntu
The latest youtube-dl 2014.02.17 is available in the Ubuntu 14.04 Trusty Tahr repository but it
wasn't backported for older Ubuntu versions. Install it via Ubuntu Software Center or by using thefollowing command:
sudo apt-get install youtube-dl
For older Ubuntu versions (though I also recommend it for Ubuntu 14.04), you can installyoutube-dl by using the main WebUpd8 PPA.
As a reminder, I update youtube-dl from the WebUpd8 PPA a few times a week, so if YouTube or another websitemake changes that break it, run an update and it's very likely that a new youtube-dl version will be available, whichfixes the issues.
To add the main WebUpd8 PPA and install youtube-dl in Ubuntu and derivatives (Linux Mint,elementary OS and so on), use the following commands:
sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt-get update
sudo apt-get install youtube-dl
If you don't want to add our PPA, you can manually download the deb from the PPA by visiting THISlink.
For other Linux distributions, you'll find installation instructions HERE.
Using youtube-dl to download videos
To download a video, simply use the following command:
youtube-dl http://VIDEO_URL
where "VIDEO_URL" is the url of the video you want to download.
If you don't use any parameters, youtube-dl tries to download the best format. For YouTube, bydefault it downloads the best non-DASH format, which usually is 720p mp4 for YouTube.
So here's how to download 1080p YouTube videos using youtube-dl:
How to download 1080p YouTube videos using youtube-dl
1. Firstly, get a list of formats. I'll use a random video link as an example below:
youtube-dl -F http://www.youtube.com/watch?v=3JZ_D3ELwOQ
This will list all the available formats:
youtube-dl -F http://www.youtube.com/watch?v=3JZ_D3ELwOQ
[youtube] Setting language
[youtube] 3JZ_D3ELwOQ: Downloading webpage
[youtube] 3JZ_D3ELwOQ: Downloading video info webpage
[youtube] 3JZ_D3ELwOQ: Extracting video information
[info] Available formats for 3JZ_D3ELwOQ:
format code extension resolution note
171 webm audio only DASH webm audio , audio@ 48k (worst)
140 m4a audio only DASH audio , audio@128k
160 mp4 192p DASH video
133 mp4 240p DASH video
134 mp4 360p DASH video
135 mp4 480p DASH video
136 mp4 720p DASH video
137 mp4 1080p DASH video
17 3gp 176x144
36 3gp 320x240
5 flv 400x240
43 webm 640x360
18 mp4 640x360
22 mp4 1280x720 (best)
As you can see, for 1080p there's only a DASH video available (format 137) and two separate DASH
audio files (formats 140 and 171).
2. To get the best video quality (1080p DASH - format "137") and best audio quality (DASH audio -
format "140"), you must use the following command:
youtube-dl -f 137+140 http://www.youtube.com/watch?v=3JZ_D3ELwOQ
"-f 137+140" specifies the format: 137 (which means mp4 1080p as you can see above) for video and140 (which means m4a audio@128k) for audio, as displayed by the command under step 1.
To see all the available options (extract audio,choose a different video quality, download a videoplaylist and many many other options), type thefollowing commands in a terminal: "man youtube-dl" or "youtube-dl -h".