Recent Posts
Recent Comments
반응형
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

오늘도 공부

# 기본 FFmpeg 사용 가이드 본문

카테고리 없음

# 기본 FFmpeg 사용 가이드

행복한 수지아빠 2025. 2. 11. 12:30
반응형

FFmpeg 사용 가이드

본 프로젝트에서 사용하는 FFmpeg 명령어와 필터에 대한 상세 설명입니다.

기본 설치

macOS

brew install ffmpeg

Ubuntu/Debian

sudo apt-get install ffmpeg

Windows

  1. FFmpeg 공식 사이트에서 다운로드
  2. 압축 해제 후 시스템 환경 변수 PATH에 추가

주요 사용 사례

1. 오디오 변환 (WAV 포맷)

ffmpeg -i input.mp3 -acodec pcm_s16le -ar 16000 -ac 1 output.wav
  • -acodec pcm_s16le: 16비트 PCM 포맷으로 변환
  • -ar 16000: 샘플링 레이트 16kHz
  • -ac 1: 모노 채널

2. 더빙 오디오 합성

ffmpeg -i video.mp4 -i dub.mp3 -filter_complex \
"[0:a]volume=0.2[bg]; \
[bg][1:a]amix=inputs=2:duration=first[a]" \
-map 0:v -map "[a]" output.mp4
  • volume=0.2: 원본 오디오 볼륨 20%로 감소
  • amix=inputs=2: 두 오디오 트랙 믹싱
  • duration=first: 첫 번째 입력 길이에 맞춤

3. 자막 추가

ffmpeg -i input.mp4 -vf \
"drawtext=textfile=subs.txt:reload=1:fontfile=/path/to/font.ttf: \
fontcolor=white:fontsize=24:box=1:boxcolor=black@0.5: \
x=(w-text_w)/2:y=h-80" \
output.mp4
  • reload=1: 자막 파일 실시간 로드
  • box=1: 자막 배경 박스 추가
  • boxcolor=black@0.5: 반투명 검은색 배경

4. 다중 자막 (영어/한글)

ffmpeg -i input.mp4 -vf \
"drawtext=textfile=eng.txt:fontcolor=white:y=h-80, \
drawtext=textfile=kor.txt:fontcolor=white:y=h-40" \
output.mp4
  • 영어 자막: 아래에서 80픽셀
  • 한글 자막: 아래에서 40픽셀

자주 사용하는 필터

drawtext 필터

drawtext=
    textfile=자막파일경로:     # 자막 텍스트 파일
    reload=1:                 # 실시간 파일 로드
    fontfile=폰트파일경로:     # 폰트 파일
    fontcolor=색상:           # 글자 색상
    fontsize=크기:            # 글자 크기
    box=1:                    # 배경 박스 사용
    boxcolor=색상@투명도:      # 박스 색상과 투명도
    x=위치:                   # 가로 위치
    y=위치                    # 세로 위치

색상 지정

  • white: 흰색
  • yellow: 노란색
  • black@0.5: 50% 투명한 검은색
  • #FFFFFF: RGB 색상코드

위치 지정

  • x=(w-text_w)/2: 가로 중앙
  • y=h-80: 아래에서 80픽셀
  • x=10: 왼쪽에서 10픽셀
  • y=10: 위에서 10픽셀

오디오 필터

volume=0.2              # 볼륨 조절 (20%)
atempo=1.5             # 재생 속도 조절 (1.5배)
adelay=1000            # 지연 시간 (1초)
amix=inputs=2          # 오디오 믹싱

유용한 팁

1. 영상 정보 확인

ffmpeg -i video.mp4

2. 오디오 추출

ffmpeg -i video.mp4 -vn audio.mp3

3. 특정 구간 추출

ffmpeg -i input.mp4 -ss 00:00:30 -t 00:00:10 output.mp4
  • -ss: 시작 시간
  • -t: 지속 시간

4. 화질 설정

ffmpeg -i input.mp4 -c:v libx264 -crf 23 output.mp4
  • crf: 품질 설정 (0-51, 낮을수록 고품질)

5. 오류 해결

  1. 폰트 문제

    • 시스템에 해당 폰트가 설치되어 있는지 확인
    • 폰트 경로가 올바른지 확인
  2. 권한 문제

    • 입출력 파일의 읽기/쓰기 권한 확인
    • 임시 파일 생성 권한 확인
  3. 메모리 부족

    • -max_muxing_queue_size 1024 옵션 추가
반응형