개요
ffmpeg는 미디어 파일의 인코딩, 디코딩, 트랜스코딩, 멀티플렉싱, 디멀티플렉싱, 스트리밍, 필터링 등 광범위한 작업을 수행할 수 있습니다. 다양한 플랫폼에서 사용 가능하며, 개발자 및 고급 사용자에게 필수적인 도구입니다.
주요 기능
- 다양한 오디오/비디오 형식 간 변환
- 비디오 크기 조정, 자르기, 회전 등 필터링
- 오디오 추출 및 변환
- 스트리밍 미디어 처리
- 화면 녹화 및 웹캠 캡처
주요 옵션
ffmpeg는 수많은 옵션을 제공하지만, 다음은 가장 일반적으로 사용되는 옵션들입니다.
입력/출력 제어
비디오 옵션
오디오 옵션
시간 제어
생성된 명령어:
명령어를 조합해 보세요.
설명:
`ffmpeg` 명령어를 실행합니다.
위 옵션들을 조합하여 AI와 함께 가상으로 명령어를 실행해 보세요.
사용 예시
ffmpeg의 다양한 활용법을 보여주는 예시입니다.
MP4 파일을 AVI로 변환
ffmpeg -i input.mp4 output.avi
가장 기본적인 파일 형식 변환 예시입니다.
비디오 해상도 변경 (1280x720)
ffmpeg -i input.mp4 -vf scale=1280:720 output_hd.mp4
비디오의 해상도를 1280x720으로 변경합니다.
비디오에서 오디오 추출 (MP3)
ffmpeg -i input.mp4 -vn -acodec libmp3lame output.mp3
비디오 파일에서 오디오 스트림만 추출하여 MP3 파일로 저장합니다.
비디오의 특정 구간 자르기
ffmpeg -ss 00:00:10 -i input.mp4 -t 00:00:30 -c copy output_clip.mp4
비디오의 10초 지점부터 30초 길이만큼 잘라냅니다.
비디오를 GIF 애니메이션으로 변환
ffmpeg -i input.mp4 -vf "fps=10,scale=320:-1:flags=lanczos" -c:v gif output.gif
비디오를 저용량 GIF 애니메이션으로 변환합니다. 프레임 레이트와 스케일을 조정하여 최적화합니다.
설치
ffmpeg는 대부분의 리눅스 배포판에 기본으로 포함되어 있지 않으므로, 패키지 관리자를 통해 설치해야 합니다.
Debian/Ubuntu
sudo apt update
sudo apt install ffmpeg
APT 패키지 관리자를 사용하여 설치합니다.
Fedora/CentOS (dnf)
sudo dnf install ffmpeg
DNF 패키지 관리자를 사용하여 설치합니다. (EPEL 저장소가 필요할 수 있습니다.)
Arch Linux
sudo pacman -S ffmpeg
Pacman 패키지 관리자를 사용하여 설치합니다.
팁 & 주의사항
ffmpeg를 더욱 효율적으로 사용하기 위한 팁과 주의할 점입니다.
성능 최적화
- `-ss` 옵션을 `-i` 앞에 두면 입력 파일 탐색 시간을 줄여 더 빠르게 시작할 수 있지만, 정확도는 떨어질 수 있습니다.
- `-c copy` (스트림 복사)를 사용하면 인코딩/디코딩 과정 없이 스트림을 직접 복사하여 매우 빠르게 작업할 수 있습니다. 단, 출력 컨테이너가 입력 스트림을 지원해야 합니다.
코덱 이해
- 비디오 코덱(예: `libx264`, `libvpx-vp9`)과 오디오 코덱(예: `aac`, `libmp3lame`)을 이해하는 것이 중요합니다. 적절한 코덱 선택은 파일 크기와 품질에 큰 영향을 미칩니다.
- 일부 코덱은 기본 설치에 포함되지 않을 수 있으며, 추가 라이브러리 설치가 필요할 수 있습니다.
필터 그래프 활용
- `-vf` (비디오 필터) 및 `-af` (오디오 필터) 옵션을 사용하여 복잡한 미디어 조작을 수행할 수 있습니다. 여러 필터를 쉼표(`,`)로 연결하거나 세미콜론(`;`)으로 필터 체인을 구성할 수 있습니다.