
글숏 | 글 한 편이 60초 세로 쇼츠가 됩니다
글숏 | 글 한 편이 60초 세로 쇼츠가 됩니다
간단한 설명
블로그 글이나 기사 텍스트를 주시면 훅 한 줄과 5~8개 비트로 재구성한 대본을 써 드립니다.
나머지는 로컬 파이썬 스크립트 두 개가 처리합니다. edge-tts로 문장별 음성을 합성하고, Ken
Burns 배경(사용자 이미지 또는 자동 생성 그라디언트)과 키워드 강조 자막, 스토리형 진행
바를 Pillow와 ffmpeg로 합성해 1080x1920, 60초 이하 mp4로 뽑습니다. API 키 없이
동작하고, BGM을 넣으면 사이드체인 더킹까지 자동 적용됩니다.
카테고리
비디오 / 소셜 미디어 / 마케팅
태그
숏폼, 쇼츠, TTS, 블로그투비디오, 세로영상
가격 제안
USD $7 (1회 다운로드)
상세 설명
글 하나 올리고 나면, 쇼츠는 늘 따로 만들어야 했습니다
블로그에 글을 쓰고 나서 "이건 쇼츠로도 만들어야 하는데"까지는 생각이 닿지만, 대본
쓰고 녹음하고 배경 구하고 자막 얹고 인코딩까지 하면 글 쓰는 시간보다 영상 만드는
시간이 더 걸립니다. 글숏은 그 뒷단을 로컬 파이프라인으로 묶었습니다. 에이전트가
원문을 읽고 짧은 대본 JSON 하나만 쓰면, 음성 합성부터 최종 mp4 인코딩까지 파이썬
스크립트 두 개가 처리합니다. 클라우드 API도, 구독료도 없습니다.
파이프라인
원문(텍스트/URL)
→ (선택) fetch.py 로 URL에서 본문만 추출
→ 에이전트가 훅+비트 대본 JSON 작성
→ tts.py: edge-tts 로 문장별 음성 합성 + 자막 타이밍 계산
→ render.py: 배경(Ken Burns/그라디언트) + 키네틱 자막 + 진행 바 합성
→ (선택) BGM 사이드체인 더킹
→ loudnorm 2-pass 정규화 → H.264 High + AAC 48k + faststart
→ out/final.mp4 (1080x1920, ≤60초)
실제 명령
uv run scripts/fetch.py "https://example.com/article" --out article.txt # URL일 때만
uv run scripts/tts.py my_script.json --outdir out/audio
uv run scripts/render.py out/audio/timing.json --outdir out --bgm bgm.mp3
포함 구성
다운로드하면 이 파일들이 들어 있습니다.
| 파일 | 역할 |
|---|---|
SKILL.md |
사용 절차 전체 |
scripts/fetch.py |
URL → 본문 텍스트 추출 (trafilatura, 선택 사항) |
scripts/tts.py |
edge-tts 음성 합성 + 문장/자막 타이밍 계산 |
scripts/render.py |
Ken Burns 배경, 키네틱 자막, 진행 바, BGM 더킹, loudnorm, 최종 인코딩 |
guides/script-template.md |
대본 JSON 스키마 + 작성 요령 |
guides/licensing.md |
edge-tts·BGM·이미지 라이선스 유의사항 |
사용 예시 3개
이런 상황에 바로 씁니다.
- 개인 블로그 글 → 인스타 릴스: 수면·재테크·생산성 같은 정보성 글을 쓰고 나서
핵심 5~6개를 비트로 뽑아 세로 영상으로 만들고 릴스·쇼츠에 올립니다. - 사내 공지·업데이트 노트 → 사내 공유 영상: 텍스트로만 올라오는 릴리스 노트를
30~40초 요약 영상으로 만들어 슬랙에 공유합니다. 실존 인물 음성이 아닌 합성 음성만
쓰므로 사칭 문제 없이 쓸 수 있습니다. - 뉴스 큐레이션 채널 → 요약 쇼츠: 기사 URL을
fetch.py로 본문만 뽑고, 에이전트가
객관적 사실 위주로 대본을 재구성해 정보 요약 쇼츠를 만듭니다.
필요한 준비물
미리 갖춰야 할 것은 이 정도입니다.
uv,ffmpeg(Homebrew 기본 빌드로 충분), 인터넷 연결(edge-tts 통신용)- 한글 폰트: macOS·Windows는 자동 탐색됩니다. Linux는 Noto Sans CJK 설치가 필요합니다
- (선택) BGM을 쓰려면 로열티 프리 음원 파일을 직접 준비합니다
- (선택) 배경 이미지를 쓰려면 저작권이 확인된 로컬 이미지 파일을 준비합니다
이 스킬은 실존 인물 사칭이나 딥페이크, 기만 목적으로는 사용할 수 없습니다. 합성 음성과
자동 생성 배경은 범용 콘텐츠 제작용입니다.
추천 / 비추천
이럴 때 추천
- 정보성 블로그·뉴스레터·사내 문서를 짧은 세로 영상으로 빠르게 뽑고 싶을 때
- API 키·구독 없이 로컬에서 끝내고 싶을 때
- 키워드 강조 자막, 진행 바가 있는 쇼츠를 반복 제작할 때
이럴 때 비추천
- 정확한 단어 단위 립싱크·자막 타이밍이 꼭 필요한 방송용 콘텐츠 (한국어 TTS 특성상
자막은 문장 경계 기준 근사치입니다. 아래 FAQ 참고) - 광고 수익이 붙는 채널에 대량 게시할 계획이라 상업용 TTS 라이선스가 꼭 필요한 경우
(edge-tts는 비공식 엔드포인트입니다.guides/licensing.md필독) - 실존 인물의 음성·얼굴을 모사하려는 목적 (금지)
FAQ
Q1. API 키가 정말 하나도 필요 없나요?
네. TTS(edge-tts), 이미지 배경(Pillow 생성 또는 로컬 이미지), 자막(Pillow) 모두
로컬·무료 경로만 씁니다. 대본 작성만 에이전트(Claude 등)가 텍스트로 직접 하고,
스크립트가 LLM API를 호출하지 않습니다.
Q2. 자막이 단어 하나하나 입 모양까지 정확히 맞나요?
아니요. edge-tts는 한국어 보이스에서 단어 단위 타임스탬프(WordBoundary)를 주지
않습니다(실측 확인). 문장 경계는 정확히 맞고, 문장 안의 2~3어절 자막 청크는 글자수
비례로 배분한 근사치입니다. 체감상 자연스럽게 맞지만 완벽한 워드 타임스탬프는
아닙니다.
Q3. 60초를 넘으면 어떻게 되나요?tts.py 실행 시 stderr에 예상 총 길이가 출력되고, 60초를 넘으면 경고가 뜹니다.
자동으로 잘라주지는 않으므로 비트 문장을 줄이거나 rate(말하기 속도)를 올려서
다시 실행해야 합니다.
Q4. BGM 없이도 되나요?
됩니다. --bgm 옵션을 생략하면 내레이션만으로 최종 영상이 만들어집니다. BGM을
넣으면 사이드체인 컴프레서로 내레이션이 나올 때 자동으로 BGM 볼륨이 낮아집니다.
Q5. 자막에 그림자·외곽선이 있는데 ffmpeg drawtext를 쓴 건가요?
아니요. Homebrew ffmpeg 9.x에는 drawtext·subtitles(libass) 필터가 없습니다(실측).
텍스트는 전부 Pillow로 투명 PNG로 그린 뒤 ffmpeg overlay 필터로 합성합니다.
진행 바도 같은 이유로 Pillow로 그립니다(ffmpeg drawbox의 시간 기반 애니메이션이
이 빌드에서 정상 동작하지 않는 것을 실측으로 확인했습니다).
구매 안내
다운로드 후 package/ 폴더를 그대로 풀어서 SKILL.md의 사용 절차를 따르세요.uv와 ffmpeg만 설치되어 있으면 추가 설정 없이 바로 동작합니다.
실제 출력 예시 (샘플 원고: "잠을 아무리 자도 피곤한 이유", 수면 습관에 관한 약
870자 원문 기사 → 48.3초 세로 쇼츠)
예시의 배경 사진은 NASA 이미지 라이브러리 공개 사진(퍼블릭 도메인), 글은 예시로 직접 작성했습니다. 실제 결과 영상에는 edge-tts 나레이션이 들어갑니다.
외부 API
Microsoft Edge TTS

