본문으로 건너뛰기
yt-dlp

yt-dlp로 YouTube를 MP3로

YouTube 영상을 태그와 표지가 붙은 MP3로 바꾸는 yt-dlp 명령어를 만듭니다.

쓸 만한 MP3를 얻으려면

오디오 추출은 변환이므로 ffmpeg가 반드시 필요합니다 —— 새로 설치한 환경에서 명령어가 실패하는 이유가 이것입니다. 최고(VBR)가 올바른 기본값입니다: 용량 대비 품질이 가장 좋고, 고정 bitrate를 높여도 원본에 없던 품질이 생기지는 않습니다.

표지와 메타데이터는 이름 없는 파일이 가득한 폴더를 음악 플레이어가 정리할 수 있는 것으로 바꿔 줍니다. 여기 이름 템플릿은 아티스트를 앞에 두고, 태그에 아티스트가 없으면 업로더 이름을 씁니다.

--audio-quality 0은 가장 많이 오해받는 설정입니다. "품질 0"이 아니라 가변 비트레이트에서 가장 좋은 설정이고, 평균 245 kbps 정도이며, 눈금이 거꾸로 갑니다. 0이 최고이고 9가 최저입니다. 가변 비트레이트는 소리가 빽빽한 구간에 비트를 더 쓰고 조용한 구간에는 덜 쓰기 때문에, 같은 용량이라면 보통 VBR이 고정 비트레이트보다 더 좋게 들립니다. 고정 비트레이트를 고집하는 기기가 있다면 0~9 눈금에서 숫자를 짐작하지 말고 --audio-quality 320K처럼 이름으로 지정하세요.

더 중요한 질문은 애초에 변환해야 하느냐입니다. YouTube는 오디오를 Opus나 AAC로 제공하고 둘 다 MP3가 아닙니다. 즉 MP3를 요구하면 반드시 재인코딩이 일어납니다. 파일이 디코딩된 뒤 두 번째로 압축되고, 그때마다 품질이 조금씩 깎입니다. 가진 것 중에 .mp3 확장자를 꼭 요구하는 게 없다면 "최고(변환 없음)"를 고르세요. 더 빠르고, ffmpeg가 아예 필요 없으며, 결과물이 어떤 MP3보다도 원본에 가깝습니다. 자동차 오디오, DJ 프로그램, 오래된 휴대폰처럼 선택의 여지가 없을 때만 변환하세요.

재생목록 전체를 받으려면 재생목록을 켜고 아카이브 파일을 더하세요. 아카이브는 이미 받은 것을 기록하므로 다음 주에 같은 명령어를 실행해도 처음부터 다시 하지 않고 새로 올라온 것만 가져옵니다. "오류가 나도 계속"과 함께 쓰면 지역 제한이나 삭제된 곡 하나가 나머지 이백 곡을 끌고 내려가는 일도 없어집니다. 곡 순서가 중요하다면 출력 템플릿에 재생목록 번호를 넣으세요. 넣지 않으면 플레이어가 폴더를 알파벳순으로 정렬해 앨범 순서가 뒤엉킵니다.

선택 사항입니다. 비워 두면 명령어가 URL 로 끝나므로 나중에 직접 채우면 됩니다.

만들어진 명령어

yt-dlp -x --audio-format mp3 --audio-quality 0 --no-playlist --embed-thumbnail --embed-metadata -o '%(artist,uploader)s - %(title)s.%(ext)s' 'https://www.youtube.com/watch?v=dQw4w9WgXcQ'
기본

오디오만 고르면 소리 트랙만 뽑고 영상은 버립니다.

오디오

오디오를 변환할 대상 형식입니다.

VBR은 용량 대비 품질이 가장 좋고, 고정 bitrate는 용량을 예상하기 쉽습니다.

재생목록과 채널

URL이 영상과 재생목록에 동시에 속할 때 어떻게 할지 정합니다.

범위와 목록 모두 됩니다. 예를 들어 1-10,15, 또는 끝에서부터 하나씩 건너뛰는 -5::2.

고급 옵션 (1)

이미 내려받은 항목을 적어 두어 다시 실행할 때 건너뜁니다. 채널을 계속 동기화하는 방법이 바로 이것입니다.

메타데이터와 표지
고급 옵션 (3)
파일과 폴더

필드 이름은 %(...)s 안에 씁니다. 슬래시는 폴더를 만듭니다.

고급 옵션 (4)

파일을 저장할 위치입니다. 위 템플릿과 조합하면 하위 폴더도 만들 수 있습니다.

파일 이름의 최대 길이(문자 수)입니다.

우회 방법
고급 옵션 (3)

구식이며 --add-headers 로 대체되었습니다. 오래된 안내 글이 아직 많이 쓰기 때문에 남겨 두었습니다.

구식이며 --add-headers 로 대체되었습니다.

사이트별 전용 옵션입니다. 예를 들어 youtube:player_client=web.

초기화

자주 묻는 질문

MP3 품질은 무엇을 골라야 하나요?
대부분은 최고(VBR) —— 용량 대비 품질이 가장 좋습니다. 320 kbps는 뒤쪽 어딘가에서 고정 bitrate를 요구할 때만 의미가 있습니다. 둘 다 원본에 없던 품질을 만들어 내지는 않습니다.
MP3 추출이 실패하는 이유는?
오디오 변환에는 ffmpeg가 필요합니다. 설치한 뒤 ffmpeg -version 으로 확인하세요.
VBR이냐 고정 bitrate냐?
VBR은 필요한 곳에 비트를 쓰므로 같은 체감 품질에서 용량이 작습니다. 고정 bitrate는 기기나 프로그램이 요구할 때만 쓰세요.
재생목록 전체를 MP3로 바꿀 수 있나요?
가능합니다 —— 오디오 출력에 재생목록 전체 모드를 더하면 됩니다. 기록 파일도 더하면 다시 실행할 때 변환을 되풀이하지 않습니다.