Yt-dlp
lastmod 2025-07-25created 2022-06-2013 edits
A youtube-dl fork with additional features and fixes
yt-dlp is a youtube-dl fork based on the now inactive youtube-dlc. The main focus of this project is adding new features and patches while also keeping up to date with the original project
Examples
-
yt-dlp --split-chapters "$@" - Split by chapter
-
--force-keyframes-at-cuts - Ensures keyframes so cuts happen exactly at chapter points
-
--no-part - Downloads without creating a
.partfile. Writes directly to the output file. - Not that useful an option if you are just recording; if anything, it carries a higher risk of some segments not being recorded due to network errors. The advantage of this option is that you can play the file while it downloads.
-
--live-from-start - Records from the beginning when recording (experimental feature). It records from the start even without rewind, so it is mainly used to back up unarchived streams you missed partway through. Cannot be used together with
--no-part
-
--update - Updates to the latest version
-
--download-sections "*0:12:51-1:13:05" - Downloads only the 12:51 ~ 1:13:05 section of the video. Chapter names also work.
- Used to download only part of a video. Useful for downloading a short section when the video is long. Does not work properly for videos of streams that have just ended.
-
yt-dlp --extract-audio --audio-format flac --audio-quality 0 "$@" - Saves the best-quality audio in flac format.
-
yt-dlp -f "bestvideo[ext=mp4]+bestaudio[ext=m4a]" "$@" - Saves in the best quality (video, audio) used in youtube-dl.
-
yt-dlp -o "%(playlist)s/%(playlist_index)02d - %(title)s.%(ext)s" "$@" - Add an index to file names for playlists
-
yt-dlp -f 'bestvideo+bestaudio' URL - Selects the best quality without specifying a file format (automatic selection).
-
yt-dlp -F URL - Lists available formats.
-
yt-dlp -f '137+140' URL - Selects specific formats. Here 137 is a specific video format ID and 140 is a specific audio format ID.
Script to remove the ID appended to file names after download
Alan Walker - All Falls Down [R8nfqmHQ87s].flac
Alan Walker - Alone & Sing Me To Sleep [MeHhOB4KTHk].flac
Given files like these, a script that removes things like "[R8nfqmHQ87s]":
#!/bin/bash
for file in *.flac; do
# 파일명에서 대괄호와 그 안의 텍스트 제거
new_name=$(echo "$file" | sed 's/ \[[^]]*\]//')
# 파일명 변경
mv "$file" "$new_name"
done
See also
- YouTube
- FFmpeg
- youtube-dl
- Yark - YouTube archiving tool
- Pinchflat - Self-hostable YouTube media manager
- my-yt - Personal YouTube frontend based on yt-dlp