본문으로 건너뛰기

Shorts Pipeline

영상 업로드, 클립 선택, TTS 대본, 음성, 자막, FFmpeg 합성을 한 프로젝트 흐름으로 묶은 개인 제작 도구입니다.

Editor소스 영상, 클립, 분석 메모, 타임라인을 한 화면에서 봅니다.
TTS대본 생성, 음성 선택, 업로드 흐름을 탭으로 나눴습니다.
Compose마지막 탭에서 자막과 음성 상태를 확인하고 합성으로 넘깁니다.
Shorts Pipeline 실제 편집 화면 캡처
실제 운영 화면을 캡처했습니다. 원본 영상과 썸네일은 제3자 콘텐츠 노출을 줄이기 위해 공개용으로 블러 처리했습니다.
정보

Repository는 private으로 운영 중입니다. 공개 페이지에는 민감정보, 저작권 이슈, 재사용 가능한 세부 구현을 노출하지 않습니다.

Snapshot

구분내용
상태In progress, private repository
문제숏폼 제작 과정에서 파일 관리, 대본 생성, 자막 처리, 렌더링 단계가 분리되어 반복 비용이 큼
접근프로젝트 단위로 원본, 클립, 대본, 출력물을 관리하고 LLM API와 FFmpeg 처리를 연결
기술FastAPI, Python, LLM API, FFmpeg, yt-dlp, Docker
실행Docker 기반 실행과 로컬 업로드/출력 디렉터리 분리를 고려

What It Does

  • 제작 작업을 프로젝트 단위로 만들고 상태를 관리합니다.
  • 업로드 파일과 출력물을 분리해 작업 단계를 추적합니다.
  • 데스크톱과 모바일에서 같은 제작 단계를 이어서 볼 수 있는 탭형 UI를 제공합니다.
  • TTS 대본 생성, TTS 음성 생성/업로드, FFmpeg 합성 흐름을 파이프라인에 포함합니다.
  • Docker 실행 환경으로 로컬 실행 조건을 일정하게 맞춥니다.

데스크톱/모바일 화면

Shorts Pipeline 데스크톱 소스 영상과 클립 편집 화면 캡처
데스크톱에서는 소스 영상, AI 분석 메모, 클립 순서, 타임라인 편집을 한 화면에 펼쳐 작업합니다.
Shorts Pipeline 모바일 소스 영상과 클립 편집 화면 캡처
모바일에서는 같은 기능을 단일 컬럼으로 정리하고, 저장과 다음 단계 이동을 하단 고정 액션으로 배치합니다.

단계별 탭 화면

Shorts Pipeline 프로젝트 목록 실제 화면 캡처
프로젝트 목록에서 클립 수, 마지막 저장 시각, 편집/완료 상태를 바로 확인합니다.
Shorts Pipeline TTS 대본 탭 실제 화면 캡처
TTS 대본 탭에서는 클립 길이에 맞춰 여러 스타일의 대본을 생성하고 선택한 버전을 편집합니다.
Shorts Pipeline TTS 음성 탭 실제 화면 캡처
TTS 음성 탭에서는 대본 텍스트를 확인하고, 음성 선택/품질 옵션과 통합 업로드 흐름을 다룹니다.
Shorts Pipeline 합성 탭 실제 화면 캡처
마지막 합성 탭에서는 클립, 대본, 음성, 자막 상태를 최종 확인하고 FFmpeg 합성으로 넘깁니다.

화면으로 보는 기능

01

프로젝트 단위 작업

업로드 파일, 클립, 대본, 출력물을 하나의 프로젝트 상태로 묶어 작업 흐름을 추적합니다.

02

TTS 대본 생성

클립 길이와 목적에 맞춰 여러 스타일의 대본을 생성하고, 선택한 버전을 직접 편집합니다.

03

TTS 음성 매칭

대본을 음성으로 만들거나 파일을 업로드하고, 통합/구간별 TTS 흐름을 선택할 수 있게 나눴습니다.

04

FFmpeg 합성 확인

영상 레이아웃, 오디오 비율, 자막, 오버레이 상태를 마지막 탭에서 검토한 뒤 합성합니다.

동작 흐름

1프로젝트 생성

제작 단위를 만들고 입력 파일을 분리해 저장합니다.

2클립 준비

원본, 선택 구간, 출력 조건을 작업 상태로 관리합니다.

3대본 생성

LLM API로 숏폼용 대본과 자막 초안을 만듭니다.

4렌더링 확인

FFmpeg 결과물을 output 영역에서 검토합니다.

Portfolio Signal

이 프로젝트의 중심은 화면보다 작업 흐름입니다. 파일 업로드, 상태 관리, 외부 API 호출, 렌더링처럼 끊기기 쉬운 단계를 하나의 작업 모델로 묶었습니다.

Implementation Notes

  • FastAPI를 사용해 업로드, 프로젝트 조회, 상태 변경, 렌더링 요청을 API로 분리했습니다.
  • uploadsoutputs 디렉터리를 분리해 원본과 결과물을 명확히 관리합니다.
  • Dockerfile에서 FFmpeg와 폰트 의존성을 함께 구성해 렌더링 환경 차이를 줄였습니다.
  • API key는 환경변수로 분리해 repository에 저장하지 않는 구조를 전제로 합니다.

Next

  • 긴 작업의 진행률, 실패 원인, 재시도 상태를 더 명확히 노출
  • 대본 버전 관리와 렌더링 설정 변경 이력을 정리
  • README와 실행 문서를 보강해 프로젝트 설명 가능성 개선