유튜브 자막, 브라우저엔 "사용 불가"인데 실제로는 있습니다

강의 영상으로 공부하는 분들을 위한 기술 메모

겪은 일

유튜브 강의를 정리하려고 자막을 찾는데, 어떤 영상은 재생기 아래 자막 버튼이 "자막 사용 불가"로 회색 처리돼 있습니다. 저는 이걸 보고 "이 영상은 자막이 없구나" 하고 넘어갔습니다. 그런 영상이 하루에만 여러 편이었습니다.

그런데 나중에 확인해 보니, 그 영상들 대부분에 한국어 자막이 있었습니다. 한 24분짜리 강연은 자막 조각이 1,299개나 됐습니다. 브라우저에서만 안 보였던 겁니다.

왜 이런 일이 생기나

영상 페이지의 원본 데이터를 열어 보면 captionTracks라는 자막 정보가 분명히 들어 있습니다. 그런데 그 안에 적힌 자막 주소로 직접 요청하면 0바이트가 돌아옵니다. 내용이 비어서 오는 거죠.

유튜브가 자동 수집을 막으려고 자막 요청에 별도의 확인 절차를 붙여 두었기 때문입니다. 브라우저 화면에서도 이 절차가 어긋나면 "사용 불가"로 보입니다. 자막이 없는 게 아니라, 평범한 방법으로는 못 꺼내는 상태인 겁니다.

해결 — yt-dlp를 쓰면 됩니다

yt-dlp는 이 절차를 계속 따라잡으며 갱신되는 도구입니다. 설치는 한 줄입니다.

pip install yt-dlp

자막만 받고 영상은 받지 않으려면 이렇게 씁니다.

yt-dlp --write-auto-subs --sub-langs ko --skip-download "영상주소"

파일 하나가 생기고, 그걸 열면 전문이 들어 있습니다. 이걸 AI에게 넣으면 요약이든 정리든 원하는 대로 됩니다.

알아두면 덜 헤매는 것 세 가지

항목내용
언어 코드가 이상합니다 ko가 아니라 ko-orig, ko-FmoQciUtYSc 같은 형태로 붙습니다. 정확히 ko만 찾으면 있는 자막도 못 찾습니다. ko시작하는지를 봐야 합니다.
자동 생성 자막은 깨집니다 사람이 단 자막이 아니라 음성인식 자막이면 오탈자가 많습니다. 실제로 "제가 재차 강조하지만""제가 제 차 강조하지만"으로 나옵니다. 인용할 때는 원본 영상에서 한 번 확인하세요.
가끔 안 될 때도 있습니다 유튜브가 구조를 바꾸면 yt-dlp도 따라 바뀝니다(버전이 날짜 형태인 이유입니다). 갑자기 안 되면 pip install -U yt-dlp로 갱신해 보세요.

자막이 정말 없을 때는

그런 영상도 있습니다. 그럴 때 제가 지키는 원칙이 하나 있습니다.

내용을 추측해서 채우지 않는다.

제목·챕터·설명글은 확인된 사실이니 그것만 정리하고, "이 강연에서 이렇게 말했다"는 식의 인용은 만들지 않습니다. 나중에 그 문장이 어디서 왔는지 못 찾으면, 정리해 둔 노트 전체를 믿을 수 없게 되기 때문입니다.

AI에게 요약을 맡길 때도 마찬가지입니다. 자막 없이 제목만 주고 "요약해줘" 하면 AI는 그럴듯한 문장을 만들어 줍니다. 그건 요약이 아니라 창작입니다.

정리

아이엠 조차장 · AI 도구로 업무 다이어트하는 법을 기록합니다