DAY 2 · 11교시 · 60분

moviepy 비디오 및 오디오 최종 합성

📚1단계: 주요 개념 설명

이번 단원의 목표

파이썬 moviepy를 사용하여 이미지와 음성 파일을 동기화 결합한 MP4 동영상을 렌더링한다.

🗂️강의 슬라이드
슬라이드 1 / 10

moviepy 비디오 합성 개론

🖼️ 이미지들🔊 음성들🎬 moviepy🎞️.mp4
  • 모든 소스(대본, Qwen TTS 오디오 파일, FLUX 이미지 카드) 준비 후 최종 미디어 결합을 실시합니다.
  • 파이썬 moviepy 모듈과 미디어 전용 FFmpeg 유틸리티 엔진을 사용하여 단일 비디오 인코딩을 지휘합니다.

🛠️2단계: 따라하기 실습

실습 미션 체크리스트
1개념 직관

숏폼 자동 제작의 최종 정점으로, 로컬 디렉토리에 각각 흩어져 저장되어 있는 FLUX.1 이미지 카드들과 Qwen TTS WAV 음성 파일들을 시간축(Timeline) 위로 정렬 병합해 단일 비디오 파일로 인코딩합니다.

2실습 미션

우측 비디오 렌더 타임라인 스티처에서 장면 카드에 알맞은 이미지 트랙과 TTS 사운드 트랙을 올바른 순서대로 조립하고 비디오 렌더러를 가동해 합성해 보세요.

moviepy 비디오 결합 렌더링
from moviepy.editor import ImageClip, AudioFileClip, concatenate_videoclips

# 이미지와 오디오 클립을 한 덩어리로 묶어 결합
clips = [
    ImageClip("flux_scene_1.jpg").set_duration(AudioFileClip("scene_1.wav").duration)
    .set_audio(AudioFileClip("scene_1.wav"))
]
final = concatenate_videoclips(clips)
final.write_videofile("final_shorts.mp4", fps=24)

💡 코딩 중 막히나요? 모범 솔루션 코드

🧩3단계: 개념 검증 퀴즈

검증 챌린지 미션

디렉토리에 final_shorts.mp4 비디오 파일이 인코딩 출력되어 디스크에 완성 저장되는 과정을 점검합니다.

📝 객관식 개념 확인 (2문항)

Q1. moviepy에서 각 이미지의 화면 노출 시간을 무엇에 맞추나?

Q2. 스마트폰·브라우저에서 바로 재생되도록 쓰는 표준 비디오 코덱은?

🔬 인터랙티브 체험 (선택)— 개념을 직접 조작하며 확인해 보세요

장면별 이미지 트랙과 TTS 오디오 트랙을 시간축 순서대로 동기화 매칭하는 비디오 결합 렌더러를 시뮬레이션합니다.

SCENE 1
🎬 매칭완료
JPG + WAV
SCENE 2
🎬 매칭완료
JPG + WAV
SCENE 3
🎬 매칭완료
JPG + WAV
SCENE 4
❔ 트랙대기
미완료
다음 교시로 이동하기 (12교시: zrok 로컬 터널링 및 쇼츠 시연회) ➡️