# Youtube-DL > Not deprecated, but surpassed many times by its improved fork, [yt-dlp]. ## Table of contents 1. [TL;DR](#tldr) 1. [Installation](#installation) 1. [Further readings](#further-readings) 1. [Sources](#sources) ## TL;DR ```sh # Limit the bandwidth. youtube-dl --format 313 --limit-rate 2M video-url # List all available formats. youtube-dl --list-formats video-url # Download the 'bestvideo' and 'bestaudio' formats and merge them in a single # file. youtube-dl -f bestvideo+bestaudio video-url # Download formats separately and do not merge them. youtube-dl -f bestvideo,bestaudio video-url # Download the best all-around formats. youtube-dl -f best video-url # Download the first format in a list. youtube-dl -f bestvideo+bestaudio/best video-url # Filter formats by conditions. youtube-dl -f bestvideo+bestaudio[height>=720]/best[filesize>100M] video-url # Also download thumbnails and other info (in separate files). youtube-dl --write-description --write-info-json --write-annotations \ --write-sub --write-thumbnail video-url # Show what name would the resulting file have youtube-dl --get-filename -o '%(title)s.%(ext)s' video-url youtube-dl --get-filename -o '%(title)s.%(ext)s' video-url --restrict-filenames # Sequentially download a list of videos. parallel --jobs 1 --retries 10 \ 'youtube-dl -f bestvideo+bestaudio "https://www.youtube.com/watch?v={}"' \ ::: ${CODES[@]} # Download all videos in a YouTube channel. youtube-dl -f "bestvideo+bestaudio/best" -ciw \ -o "%(title)s.%(ext)s" -v https://www.youtube.com/c/pbsspacetime/videos # Download YouTube playlist videos in a separate directory. # Index by video order in the playlist. youtube-dl -o '%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s' playlist-url # Download an entire series season. # Keep each series and each season in separate directories. youtube-dl \ -o "%(series)s/%(season_number)s %(season)s/%(episode_number)s %(episode)s.%(ext)s" \ serie-url ``` ## Installation The preferred method is to just download it from the [project]: ```sh curl --location https://yt-dl.org/downloads/latest/youtube-dl --remote-name chown a+x youtube-dl python3 youtube-dl … ``` Alternatively, most package managers will have the package available. > To be able to merge multiple formats into one, you will also need to install `ffmpeg` or `avconv`. ## Further readings - Github [project]'s page - [Website] - [yt-dlp] ## Sources - [Youtube-DL tutorial with examples for beginners] - [using youtube-dl to download entire youtube channel] [project]: https://github.com/ytdl-org/youtube-dl [website]: http://ytdl-org.gitlab.io/youtube-dl [yt-dlp]: yt-dlp.md [youtube-dl tutorial with examples for beginners]: https://ostechnix.com/youtube-dl-tutorial-with-examples-for-beginners [using youtube-dl to download entire youtube channel]: https://askubuntu.com/questions/856911/using-youtube-dl-to-download-entire-youtube-channel#1245829