해결하는 문제
전문 자막 번역은 느리고 분 단위로 비용이 청구되기 때문에, 대부분의 크리에이터는 한 언어로만 게시합니다. YouTube 자동 번역은 품질이 들쭉날쭉하고 내보내거나 편집할 수도 없습니다. 팀에게는 직접 검토하고 업로드할 수 있는, 여러 언어로 된 편집 가능한 시간 정보 자막 파일이 필요합니다.
첫 버전에 넣을 기능
- 이미 존재하는 자막 언어 감지
- 여러 대상 언어로 동시 번역
- 원본 타이밍을 유지한 SRT 및 VTT 내보내기
- 번역 검토용 나란히 보기 에디터
- 브랜드명과 전문 용어를 위한 용어집
단계별 개발 방법
- 01
기존 언어 확인
/transcripts/{video_id}/languages를 호출해 이미 있는 자막 트랙을 확인하세요. 이미 있는 언어를 번역하느라 비용을 낭비하지 않아도 됩니다.
- 02
원본 자막 가져오기
format.timestamp를 지정해 /transcribe를 호출하면 시작·종료 시간이 포함된 세그먼트를 얻을 수 있습니다.
- 03
번역
대상 언어마다 /transcripts/{video_id}/translate를 호출합니다. 세그먼트 타이밍은 원본과 그대로 맞춰집니다.
- 04
자막 파일 내보내기
각 세그먼트의 시작·종료 시간으로 번호가 매겨진 SRT 블록이나 VTT 큐를 작성한 뒤, 사용자가 다운로드하거나 YouTube에 업로드하게 합니다.
스타터 코드
이 아이디어는 "레시피 1: 영상 하나를 넣고 구조화된 결과 받기" 패턴을 기반으로 합니다. 채널, 프롬프트, 저장소는 원하는 대로 바꿔 쓰세요.
import requests
API = "https://www.youtubetranscript.dev/api/v2"
HEADERS = {"Authorization": "Bearer yt_sk_live_YOUR_KEY"}
res = requests.post(f"{API}/transcribe", headers=HEADERS, json={
"video": "https://www.youtube.com/watch?v=VIDEO_ID",
"format": {"timestamp": True, "paragraphs": True},
}).json()
transcript = res["data"]["transcript"]
print(transcript["text"][:500]) # plain text for your LLM prompt
for seg in transcript["segments"][:3]: # timestamps for deep links
print(seg["start"], seg["text"])만들 가치가 있는 이유
언어별 영상 분당 요금이나 월 구독 요금제로 책정하세요. 대량으로 현지화하는 이러닝 플랫폼과 에이전시가 최고의 고객입니다. 언어가 하나 늘 때마다 가치가 커지기 때문입니다.
피해야 할 실수
- 맥락 없이 한 줄씩 번역하기: 여러 자막 큐에 걸친 문장이 깨집니다.
- 읽기 속도 무시하기: 번역문은 원문보다 길어질 수 있으니 초당 글자 수를 확인하세요.
- 사람이 만든 자막이 이미 있는 언어를 돈 들여 번역하기.
이 아이디어에 대한 질문
번역된 YouTube 자막을 SRT로 다운로드할 수 있나요?
네. API로 자막을 번역한 뒤, 시간 정보가 있는 각 세그먼트를 SRT나 VTT 형식으로 작성하면 됩니다.
자막 번역 비용은 얼마인가요?
번역은 자막 텍스트 2,500자당 약 1크레딧입니다. 기본 자막을 가져오는 비용은 영상당 1크레딧입니다.
더빙에도 쓸 수 있나요?
네. 번역되고 시간 정보가 담긴 스크립트는 대부분의 AI 음성·더빙 도구에 필요한 입력값입니다.