Transcript
Page 1: Video Downloader in terminal with youtube-dl

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

Page 2: Video Downloader in terminal with youtube-dl

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:

Page 3: Video Downloader in terminal with 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

Page 4: Video Downloader in terminal with youtube-dl

"-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".


Top Related