FFmpeg로 이미지를 JPG, PNG, WebP, GIF로 변환하는 방법 (2026 가이드)
FFmpeg를 사용하여 JPG, PNG, WebP, GIF 형식 간 이미지를 변환하는 완벽 가이드. 일괄 변환, 품질 제어 및 무료 원클릭 대안을 포함합니다.
FFmpeg는 단순한 동영상 도구가 아닙니다—이미지 포맷 변환에도 강력한 기능을 발휘합니다. PNG 스크린샷을 JPG로 변환하거나, 웹 최적화를 위해 WebP로 변환하거나, 이미지 시퀀스로 GIF를 만들 때까지, FFmpeg는 커맨드 라인에서 모든 것을 처리합니다.
물론 명령어 입력이 번거롭다면, 마지막에 무료 원클릭 솔루션을 소개해 드립니다.
사전 준비: FFmpeg 설치

macOS:
brew install ffmpeg
Ubuntu/Debian:
sudo apt update && sudo apt install ffmpeg
Windows:
ffmpeg.org에서 다운로드한 후 압축을 풀고, bin 폴더를 PATH에 추가하세요.
기본 이미지 변환
PNG → JPG
ffmpeg -i input.png -q:v 2 output.jpg
-q:v 2— JPEG 품질 (1 = 최고, 31 = 최저). 2–5를 권장합니다.
JPG → PNG
ffmpeg -i input.jpg output.png
PNG는 무손실 포맷이므로 품질 파라미터가 필요 없습니다.
PNG/JPG → WebP
ffmpeg -i input.png -quality 80 output.webp
-quality 80— WebP 품질 (0–100). 75–85가 적절한 균형입니다.
WebP → PNG
ffmpeg -i input.webp output.png
WebP → JPG
ffmpeg -i input.webp -q:v 2 output.jpg
BMP → PNG
ffmpeg -i input.bmp output.png
TIFF → JPG
ffmpeg -i input.tiff -q:v 2 output.jpg
GIF 작업
이미지 시퀀스 → GIF
일련의 이미지(frame001.png, frame002.png, …)를 애니메이션 GIF로 변환:
ffmpeg -framerate 10 -i frame%03d.png -vf "scale=480:-1:flags=lanczos" output.gif
-framerate 10— 초당 10 프레임frame%03d.png— frame001.png, frame002.png 등의 패턴 매칭scale=480:-1— 너비를 480px로 조정, 높이는 자동flags=lanczos— 고품질 스케일링 알고리즘
동영상 → GIF
ffmpeg -i input.mp4 -vf "fps=10,scale=480:-1:flags=lanczos" -loop 0 output.gif
GIF → 이미지 시퀀스
GIF의 모든 프레임 추출:
ffmpeg -i input.gif frame%03d.png
GIF → MP4
GIF는 용량이 큽니다—MP4로 변환하면 90% 이상 크기를 줄일 수 있습니다:
ffmpeg -i input.gif -movflags +faststart -pix_fmt yuv420p output.mp4
고급 옵션
JPEG 품질 조절
ffmpeg -i input.png -q:v 5 output.jpg
-q:v | 품질 | 파일 크기 |
|---|---|---|
| 1 | 최고 | 가장 큼 |
| 2–3 | 매우 좋음 | 큼 |
| 5 | 좋음 | 중간 |
| 10 | 보통 | 작음 |
| 31 | 최저 | 가장 작음 |
WebP 품질 조절
# 손실 WebP
ffmpeg -i input.png -quality 85 output.webp
# 무손실 WebP
ffmpeg -i input.png -lossless 1 output.webp
이미지 크기 조절
특정 너비로 조정 (종횡비 유지):
ffmpeg -i input.png -vf "scale=800:-1" output.png
특정 크기로 조정:
ffmpeg -i input.png -vf "scale=800:600" output.jpg
색상 공간 변경
그레이스케일로 변환:
ffmpeg -i input.png -vf "format=gray" output.png
일괄 변환
모든 PNG → JPG 변환
Linux/macOS:
for f in *.png; do
ffmpeg -i "$f" -q:v 2 "${f%.png}.jpg"
done
모든 JPG → WebP 변환
for f in *.jpg; do
ffmpeg -i "$f" -quality 80 "${f%.jpg}.webp"
done
Windows (PowerShell):
Get-ChildItem *.png | ForEach-Object {
ffmpeg -i $_.Name -q:v 2 ($_.BaseName + ".jpg")
}
자주 발생하는 오류와 해결법
“출력 파일이 비어 있거나 전체가 검은색” 일부 포맷에서는 픽셀 포맷을 명시해야 합니다:
ffmpeg -i input.png -pix_fmt rgb24 output.jpg
“GIF 출력 색상이 엉망” GIF는 256색으로 제한됩니다. 팔레트를 사용해 품질을 개선하세요:
ffmpeg -i input.mp4 -vf "fps=10,scale=480:-1:flags=lanczos,palettegen" palette.png
ffmpeg -i input.mp4 -i palette.png -lavfi "fps=10,scale=480:-1:flags=lanczos[x];[x][1:v]paletteuse" output.gif
“포맷을 인식할 수 없음” 포맷을 명시적으로 지정하세요:
ffmpeg -f image2 -i input.bmp output.png
터미널 없이 사용하기: WaveSpeed Desktop
FFmpeg로 이미지 하나를 변환하는 건 어렵지 않습니다. 하지만 품질, 포맷, 크기를 조절하면서 여러 이미지를 일괄 변환하려면? 금방 번거로워집니다.
WaveSpeed Desktop에는 이 과정을 간편하게 만들어 주는 이미지 변환기가 내장되어 있습니다:
- 이미지를 하나 또는 여러 장 드래그 앤 드롭
- 출력 포맷 선택 (JPG, PNG, WebP, GIF)
- 변환 클릭 — 완료
FFmpeg도, 터미널도, 품질 플래그를 외울 필요도 없습니다.

WaveSpeed Desktop 무료 다운로드: https://github.com/WaveSpeedAI/wavespeed-desktop/releases
자주 묻는 질문
웹에서 가장 좋은 이미지 포맷은 무엇인가요? WebP가 압축률 대비 품질 면에서 가장 우수합니다. 브라우저 호환성이 문제가 없다면 WebP를 사용하세요. 그렇지 않은 경우, 사진에는 JPEG, 투명도가 있는 그래픽에는 PNG를 사용하세요.
JPG를 PNG로 변환하면 품질이 향상되나요? 아닙니다. 오디오와 마찬가지로, JPEG 압축 과정에서 손실된 정보는 복구할 수 없습니다. PNG 파일의 용량만 커질 뿐입니다.
WebP는 JPEG보다 얼마나 더 작은가요? 동일한 시각적 품질 기준으로 일반적으로 25–35% 더 작습니다.
FFmpeg로 RAW 카메라 파일을 처리할 수 있나요? FFmpeg의 RAW 파일 지원은 제한적입니다. RAW 변환에는 ImageMagick이나 darktable 같은 전용 도구가 더 적합합니다.


