
이 글은 맥미니에서 ffmpeg을 설치하고, 영상 파일을 자르고, 소리를 입히고, 형식을 바꾸거나 오디오만 뽑는 핵심 기능 네 가지를 익히는 방법을 다룬다.
터미널 사용 경험이 있고 Homebrew가 이미 설치된 맥미니 사용자라면 이 글만 보고 따라 해도 좋다.
ffmpeg 설치하기
ffmpeg은 영상과 오디오 파일을 처리하는 데 쓰는 강력한 명령줄 도구다. 우리가 사용하는 맥미니 환경에서는 Homebrew라는 패키지 관리자를 통해 쉽게 설치할 수 있다.
터미널을 열고 다음 명령어를 입력한다.
brew install ffmpeg
이 명령어는 Homebrew 저장소에서 ffmpeg 최신 버전을 다운로드하고 설치한다. 설치가 끝나면 버전 정보를 확인해 제대로 설치됐는지 본다.
ffmpeg -version

내 맥미니에서는 현재 ffmpeg 버전 8.1이 설치되어 있다. 명령어를 치면 버전 정보와 함께 여러 설정 내용이 쭉 나올 것이다.
ffmpeg 핵심 명령어 4가지 익히기
우리는 자동화 스크립트에서 매일 ffmpeg을 활용한다. 많은 기능 중에서도 핵심적인 네 가지 명령어를 가장 자주 쓴다.
1. 영상 자르기: 시작 시점과 길이로 잘라내기
특정 구간만 잘라내 새 영상으로 만들 때 유용하다. ffmpeg의 -ss 옵션으로 시작 시간을, -t 옵션으로 길이를 지정한다.
예를 들어, input.mp4 파일에서 10초 지점부터 5초 길이만큼만 잘라 output_cut.mp4로 저장하고 싶다면 이렇게 친다.
ffmpeg -i input.mp4 -ss 00:00:10 -t 00:00:05 output_cut.mp4
- -i input.mp4
입력 파일이다. - -ss 00:00:10
00시 00분 10초부터 시작한다. - -t 00:00:05
5초 길이만큼 잘라낸다. - output_cut.mp4
출력 파일 이름이다.
5초 길이의 MP4 파일을 컷팅하는 데 내 맥미니에서는 0.8초가 걸렸다. 작업이 끝나면 output_cut.mp4 파일을 재생해서 제대로 잘렸는지 확인한다.
2. 영상에 소리 입히기: 재인코딩 없이 빠르게 합치기
이 기능은 영상에 새로운 오디오 트랙을 추가하거나 기존 오디오를 교체할 때 쓴다. 이때 가장 중요한 옵션은 -c:v copy다. 이 옵션을 쓰면 비디오 스트림을 다시 인코딩하지 않고 그대로 복사한다. 영상 화질 손실도 없고, 작업 속도도 엄청나게 빠르다.
영상을 재인코딩 없이 처리할 수 있는 -c:v copy 옵션을 알게 된 후 작업 속도가 훨씬 빨라졌다.
오디오가 없는 video_only.mp4 파일에 audio_new.mp3 파일을 입혀 output_with_audio.mp4로 만들고 싶다면 아래 명령어를 쓴다.
- -i video_only.mp4
첫 번째 입력 파일, 영상만 있는 파일이다.0번 스트림에 해당한다.
ffmpeg -i video_only.mp4 -i audio_new.mp3 -c:v copy -c:a aac -map 0:v:0 -map 1:a:0 -shortest output_with_audio.mp4
- -i audio_new.mp3
두 번째 입력 파일, 오디오 파일이다.1번 스트림에 해당한다. - -c:v copy
비디오 스트림을 재인코딩하지 않고 원본을 그대로 복사한다. - -c:a aac
오디오 스트림은 AAC 코덱으로 인코딩한다. (copy로 복사도 가능하지만, 상황에 따라 코덱 변환이 필요할 때 쓴다.) - -map 0:v:0
첫 번째 입력 파일(0번)의 비디오 스트림(v) 첫 번째(0)를 가져온다. - -map 1:a:0
두 번째 입력 파일(1번)의 오디오 스트림(a) 첫 번째(0)를 가져온다. - -shortest
두 입력 스트림 중 길이가 짧은 쪽에 맞춰서 출력을 끝낸다. 영상이 끝나면 오디오도 끝난다.
2분 길이의 영상을 새 오디오를 입히는 데 -c:v copy를 쓰면 0.5초면 충분하다. 작업 후 output_with_audio.mp4를 재생해서 영상과 소리가 잘 맞고 끊김 없이 나오는지 확인한다.
3. 영상 형식 바꾸기: MP4를 MOV로
영상 파일의 컨테이너 형식만 바꿀 때 사용한다. 예를 들어, .mp4 파일을 .mov 파일로 바꾸는 경우다. 별다른 옵션 없이 파일 확장자만 바꿔 지정해도 ffmpeg이 알아서 변환을 시도한다.
이 명령은 input.mp4 파일을 output.mov로 변환한다. 내부적으로는 필요한 경우 비디오나 오디오 코덱을 다시 인코딩할 수 있다. 5분짜리 MP4를 MOV로 바꾸는 데 약 10초가 소요됐다. 변환이 끝나면 파일 확장자가 .mov로 바뀌었는지 확인하고, 재생해서 영상과 소리에 문제가 없는지 본다.
4. 영상에서 오디오만 뽑기: 비디오 없이 오디오 파일로
영상의 오디오 트랙만 추출해 별도의 오디오 파일로 만들 때 쓴다. -vn 옵션을 사용하면 비디오 스트림을 출력하지 않는다.
ffmpeg -i input.mp4 -vn output_audio.mp3
- -vn
비디오 스트림을 출력하지 않겠다는 의미다.
ffmpeg -i input.mp4 output.mov
1분짜리 영상에서 오디오를 MP3 파일로 추출하는 데 0.7초가 걸렸다. output_audio.mp3 파일을 오디오 플레이어로 재생해서 소리가 잘 나오는지 확인한다.
ffmpeg 사용 시 주의할 점 확인하기
ffmpeg을 쓸 때 몇 가지를 주의하면 좋다.
- 재인코딩 피하기 (
-c copy)
위에서 강조했지만,-c:v copy나-c:a copy옵션은 영상을 다시 인코딩하지 않아 작업 속도가 빠르고 화질 손실이 없다. 가능한 한 이 옵션을 활용하는 게 좋다. 복잡한 편집이 아니라 단순히 파일을 자르거나 합치는 작업이라면 꼭copy옵션을 기억한다. - 파일 경로의 공백
파일 이름이나 경로에 공백이 있다면 전체 경로를 큰따옴표로 감싸줘야 한다. 예를 들어,My Video.mp4는ffmpeg -i "My Video.mp4" ...이런 식으로 써야 한다. - 덮어쓰기 (
-y)
같은 이름의 출력 파일이 이미 존재할 때,ffmpeg은 기본적으로 사용자에게 덮어쓸지 물어본다. 자동화 스크립트에서는 중간에 멈추면 안 되니-y옵션을 붙여 항상 덮어쓰도록 한다.ffmpeg -y -i input.mp4 output.mp4처럼 사용한다.
영상이 왜 깨지는지, MP4 파일이 제대로 만들어졌는지 진단해야 할 때는 ffprobe라는 별도의 도구를 사용한다. ffprobe 사용법은 이 글에서 다루지 않지만, 필요하면 ffprobe를 검색해 관련 정보를 찾아보길 권한다.
ffmpeg은 기능이 많고 복잡해 보이지만, 우리가 자주 쓰는 몇 가지 명령어만 익혀도 영상 처리 자동화에 큰 도움이 된다. 직접 해보면서 자신에게 맞는 옵션을 찾아가는 과정도 재밌을 것이다.

'맥미니를 서버로' 카테고리의 다른 글
| 파이썬 패키지 설치가 느릴 때, uv로 바꾸면 얼마나 빨라지나 (0) | 2026.09.16 |
|---|---|
| 영상을 GIF로 만들기, ffmpeg 한 줄이면 된다 (0) | 2026.09.14 |
| 맥미니를 24시간 서버로 돌리면 뜨거워질까 (0) | 2026.09.12 |
| sudo 없이 Tailscale 쓰기, 재부팅해도 안 죽게 만들기 (0) | 2026.09.10 |
| Tailscale이란? 회사 컴퓨터에서도 집 서버에 붙습니다 (0) | 2026.09.10 |