This is a userscript that allows the user to download any streamable YouTube video in selected formats. Conversion of video-only streams + audio -> video and audio -> mp3 are supported on Windows, Mac and Linux, using the ffmpeg
library. More information can be found in the wiki
Some of the qualities available for any given YouTube video are video only. This is due to YouTube storing some of the qualities - including 480p, 720p60, 1080p and 1080p60 - as video only (DASH), and playing it back synchronously with a separate m4a audio stream.
Because of this, to download these videos, both the video stream (*.m4v
) and audio stream (*.m4a
) must be downloaded, and then remuxed into a single mp4 video after they have downloaded. Further notes on this can be found in the wiki.
- Download the chrome extension
- Navigate to chrome://extensions
- Enable "Developer mode" in the top right corner
- Drag the aforementioned extension to install
- Download and install your favourite userscript manager (Greasemonkey for Firefox or Tampermonkey for Chrome)
- Install from here, or by copying the raw
main.js
file into your userscript manager - Enable and whitelist appropriate file types in GM_download, as detailed here
- Navigate to a YouTube video watch page
- Select your quality from the dropdown - note that if the selected quality has a
dash
tag, or is*.mp3
, you will be required to run a script after downloading - Press "Download" to begin downloading
- Download the relevant script/app from the wiki
- Run the script/app in the same folder that your files are stored
The functionality is pretty self explanatory - the script will allow the user to download any desired quality and type with the correct name. The post conversion script/app allows for the merging of video-only streams with audio, and the conversion of audio to MP3.
- Filtering types and qualities
- Interfacing videos embedded on external sites
- Mass downloading (e.g. playlists)