AI 영상 자동화 파이프라인 구축기 — 고양이 이미지 생성에서 시작한 시행착오 기록

1. 소개

주제를 입력하면 AI 숏폼 영상이 자동 생성되는 파이프라인을 구축하는 수업을 수강 중이다. 영화·드라마 기획과 제작을 본업으로 하고 있어서, 이 자동화 과정이 실무에서 어디까지 쓸 수 있는지가 궁금했다. 작품 프리뷰 티저, IP 소개 영상, 실험적인 애니메이션 콘텐츠 같은 것들을 빠르게 만들어낼 수 있는 수준을 목표로 하고 있다.

수업에서는 파이프라인 설계, MVP 정의, 프로젝트 세팅, 이미지 레퍼런스 생성까지를 진행했다. 수업 이후엔 차주 수업의 프로세스를 미리 실행해보고, 수업 중 피드백을 빠르게 반영하기 위해 Gemini API로 이미지를 생성하고, Veo API로 움직이는 영상으로 변환하는 과정을 직접 실행해봤다.

2. 진행 방법

고양이 일상 영상으로 파이프라인을 먼저 테스트한 뒤, 회사 웹소설 작품 표지를 활용한 티저 영상(로맨스판타지 톤)과 단편 소설(실사·스릴러 톤) 두 작품에 순차적으로 적용했다.

사용 도구

  1. VS Code — 프로젝트 구조 설계 및 코드 실행

  2. Claude Code (VS Code 확장) — 파이프라인 설계 정리, 스킬 작성, 코드 생성

  3. Google Gemini API (Nano Banana Pro) — AI 이미지 생성, 레퍼런스 최대 14장 동시 활용

  4. Google Veo API — 이미지를 8초 움직이는 영상으로 변환

  5. Python + moviepy/FFmpeg — 영상 합성 및 자막 처리

활용 과정

수업에서 진행한 것: 파이프라인 쪼개기 → MVP 정의 → 프로젝트 세팅

수업에서는 숏폼 하나를 만드는 과정을 단계별로 세분화하고, 최소한으로 동작하는 MVP를 정의한 뒤, Claude Code로 프로젝트 구조를 세팅하는 것, 이미지 레퍼런스를 바탕한 추가 이미지 생성까지를 진행했다. 여기까지가 수업 범위이고, 이후는 이 설계를 바탕으로 직접 실행한 내용이다.

1단계: 설계를 실행 가능한 구조로 옮기기

수업에서 정리한 파이프라인을 VS Code에서 돌릴 수 있는 폴더 구조로 만들었다.

short-drama/
├── core/                       # 공통 모듈 (API 클라이언트, 프롬프트 빌더)
├── references/                 # 장르별, 앵글별, 조명별 참고 자료
├── skills/
│   ├── auto-pipeline/          # 자동화 (빠른 테스트용)
│   └── production/             # 정식 제작
│       ├── 01-preproduction/   # 대본 → 캐릭터/씬/스타일 구조화
│       ├── 02-imagegen/        # 씬별 이미지 생성
│       ├── 03-image-to-video/  # 이미지 → 움직이는 영상
│       └── 04-postproduction/  # 편집/자막/BGM

자동화(주제 한 줄로 빠르게 돌리는 용도)와 정식 파이프라인(단계별로 확인하며 제작)을 분리했다. 나중에 문제가 생겼을 때 어디를 고쳐야 하는지 바로 특정할 수 있어서, 이 구분이 이후 과정에서 큰 차이를 만들었다.

2단계: 레퍼런스 체계 구축

실행을 하면서 주안점을 둔 부분이 있다. AI에게 "예쁘게 만들어줘."와 같은 추상적인 요청을 하면 매번 다른 결과가 나온다. 일관된 톤을 유지하려면 앵글, 조명, 비주얼 톤을 구체적으로 지시해야 한다. 실무 적용을 위해서는 꼭 필요한 부분이다.

위 부분을 실험하기 위해 참고 자료를 다음과 같이 분류했다.

  • 장르별 비주얼 톤 (로판 일러스트 vs 실사 다큐)

  • 카메라 앵글 7종 (CU, MCU, MS, WS, Low, High, Dutch)

  • 조명 타입 (골든아워, 네온, 촛불 등)

  • 감정별 키워드 사전

이걸 prompt_builder에 프리셋으로 내장했다. 씬 정보만 넣으면 앵글, 조명, 분위기까지 포함된 프롬프트가 자동으로 조립되는 구조다.

3단계: 첫 실행 — 고양이의 하루

본 작품에 바로 들어가지 않고, 고양이 일상 영상으로 파이프라인을 먼저 돌려봤다. 주제 한 줄을 입력하면 5씬 대본이 자동 생성되고, 이미지 생성과 영상 합성까지 이어지는 구조다.

자동 생성된 대본 예시:

json
{
  "scene": 1,
  "text": "아침 7시, 우리 집 상전님 기상. 눈뜨자마자 밥 안 준다고 시위 중.",
  "image_prompt": "A chubby orange tabby cat sits upright on a messy bed with a demanding, grumpy expression..."
}

결과물이 나왔는데, 이미지 슬라이드쇼였다. 이미지가 3초씩 넘어가는 수준이라 영상이라고 부르기 어렵다. 설계 단계에서는 보이지 않던 문제였다. 실제 결과물을 보고 나서야 Veo API로 image-to-video 단계를 추가했으나, 해당 스킬이 적용되지 않았음을 알게 됐다.

이후 영상 씬별 이미지 컷을 영상화하도록, 스킬을 구체적으로 업데이트하고 재실행했고 아래와 같은 결과물을 얻었다.

영상 내 이미지 일관성이 떨어지는 부분은, 초기 생성 이미지에서 이 단계엔 일부러 귀여운 이미지를 적용한 의도된 결과였다. 구체적인 피드백없이 앵글이 어느 정도 다양하게 적용되었다는 점이 인상적이었다.

4단계: 다른 작품에 적용

회사 내 웹소설 포스터를 활용한 티저를 제작했다. 기획 중인 작품의 프리뷰를 빠르게 뽑아보는 것이 목적이었다. Claude Code를 활용해 스킬 작성, 프롬프트 빌더 코드 생성, 디버깅을 진행했다.

여기서 또 하나의 문제가 드러났다. 만들어둔 prompt_builder가 실제로 호출되지 않고 있었다. 코드는 존재하는데 이미지 생성 모듈과 연결이 끊겨 있었다. 결과물의 앵글이 단조롭고 조명이 씬과 맞지 않아서 이상하다 싶었고, 원인을 추적하다 발견했다.

아래는 이 문제를 찾기 위해 Claude Code에 입력한 프롬프트다.

"영상 생성과 관련하여, 스킬이 적용되지 않았을 때와 스킬이 적용됐을 때를 비교해서 어떤 차이가 있는지 피드백해줘. 이 피드백 결과를 보고, 스킬 사용 방식을 업데이트해야 할 것 같아."

코드가 존재하는 것과 실제로 작동하는 것은 별개의 문제였다.

5단계: 장르 교차 검증

장르가 달라져도 쓸 수 있는지 확인하고 싶었다. 마찬가지로 회사 내 IP를 활용한 실사 스타일 이미지 레퍼런스를 테스트했다. 스타일 가이드와 레퍼런스를 적절히 구분해줬고, 이후 적절하게 작품 톤앤매너를 반영함을 확인했다. 장르가 다른 IP 소개 영상이나 티저를 만들 때도 파이프라인을 그대로 재활용할 수 있다는 뜻이다. 다만 Veo API 쿼터가 소진되어 이번에는 이미지 생성까지만 완료했다. 😇

노트북을 들고 방에 앉아 있는 남자와 여자

단계

목표

결과

폴더 구조 설계

자동화 스킬(빠른 테스트)과 퀄리티 영상 스킬(정식 제작)을 분리하여 구축

목적에 따라 파이프라인을 나누니 목적에 맞는 테스트와 디버깅 속도가 올라감

실행 가능한 구조로 이전

설계를 실행 가능한 구조로 옮기기

제작 단계별 폴더 분리로 문제 발생 시 위치 특정이 빨라짐

레퍼런스 체계 구축

일관된 톤을 유지할 수 있는 지시 체계 만들기

장르/앵글/조명별 분류 후 prompt_builder에 프리셋으로 내장, 실제 실행까지 확인

고양이 테스트

가벼운 소재로 파이프라인 전체 흐름 검증

스킬 미적용으로 Veo API(image-to-video) 단계가 적용되도록 스킬 업데이트함

작품 적용

기획 중인 작품의 프리뷰 티저를 실제로 뽑아보기

prompt_builder가 호출되지 않는 버그를 발견하고 수정함

장르 교차 검증

장르가 바뀌어도 같은 파이프라인을 쓸 수 있는지 확인

레퍼런스만 교체하면 로판→실사에서도 작동 확인

3. 정리

실행해보니 각 단계마다 예상하지 못한 문제가 나온다. 슬라이드쇼가 영상이 아니라는 점, prompt_builder가 호출되지 않고 있었다는 점 등. 전체 스킬을 고칠 때는 좋았던 부분도 바뀌는 부분이 생긴다.

결국 해당 문제를 빠르게 특정하고 고치려면 단계를 쪼개놓은 것이 결정적이었다. "전체가 안 된다"가 아니라 "02-imagegen에서 prompt_builder 연결이 안 된다"로 범위가 좁혀진다. 수업에서 파이프라인을 쪼개는 과정을 배운 것이 유효했다.

4. 개인적인 TIP

  • 설계가 끝났다면, 가벼운 소재로 먼저 한 바퀴 돌려보는 걸 추천한다.

본 작품에 바로 들어가기보다 고양이 영상 같은 부담 없는 소재로 파이프라인을 먼저 테스트하는 것이 좋다. 모델명 오류, 결과물의 실제 수준 같은 문제들은 설계 단계에서 예측하기 어렵다.

  • 자동화의 퀄리티 차이는 레퍼런스 체계에서 나온다.

같은 도구를 사용해도 결과물이 달라지는 이유는, 앵글·조명·비주얼 톤을 얼마나 구체적으로 전달하느냐의 차이다. 참고 자료를 장르별, 용도별로 정리해두면 다른 작품에 적용할 때 체감되는 차이가 크다.

구체적인 시행착오 해결 과정

  • prompt_builder가 실제로 호출되지 않고 있었다 — 결과물의 앵글이 단조로운 것을 보고 원인을 추적하여 발견

  • 첫 결과물이 이미지 슬라이드쇼였다 — 고양이 테스트에서 확인하고 Veo API 단계를 추가

  • 캐릭터 외모가 씬마다 달라지는 문제 — 원작 묘사를 직접 전달하여 재생성

  • Veo API 쿼터 소진 — 두 번째 작품은 이미지까지만 완료

5. 앞으로의 계획

  • 기획 중인 작품의 프리뷰 티저를 이 파이프라인으로 빠르게 뽑아보기

  • IP 소개 영상을 장르별 레퍼런스 교체만으로 제작하는 워크플로우 구축

  • 짧은 대본 기반의 실험적 애니메이션 콘텐츠 시도


2
3개의 답글

뉴스레터 무료 구독

👉 이 게시글도 읽어보세요