윈도우 10에서 FFmpeg를 다운받아 설치하고 환경 변수 설정을 통해서 윈도우 명령 프롬프트 어디에서서 실행 가능토록 만들고, 더 나아가 간단히 gif 동영상 변환 방법을 살펴보도록 하겠습니다.
우분투 ffmpeg 설치 방법 및 사용 방법은 아래 글을 참조하면 좋을 것 같습니다.
윈도우 10 ffmpeg 설치 프로그램 다운받기
그 동안 널리 알려졌던 FFmpeg 윈도우 버젼 배포처로 ffmpeg.zeranoe.com에서 제공하는 윈도우용 빌드 버전을 다운받아 비교적(?) 편하게 설치할 수 있었습니다.
그렇지만 2020년 9월 18일 이후 이 사이트에서는 더이상 빌드 버전 제공을 지원하지 않고 있습니다.
정식 ffmpeg 다운로드 사이트
대신 정식 ffmpeg 다운로드 사이트에서 리눅스, 위도우, 맥용 다운로드 사이트를 각각 연결해 주고 있습니다. 윈도우용은 아래 이미지에서 보듯이 gyan.dev나 BtbN의 두 곳에서 다운받을 수 있습니다.
gyan.dev를 통한 다운로드 설명
두군데 중 하나를 클릭하면 빌드 버전을 다운 받을 수 있는 페이지로 이동합니다. 여기서는 gyan.dev를 사용하는 방법 중심으로 설명해 봅니다.
gyan.dev 이동하면 FFmpeg Windows Builds에 대한 설명이 나오고 조금 더 내려가면 release(배포)라는 제목을 만날 수 있습니다.
여기서 여러가지 파일이 있는데 35MB에 달하는 full 버전(fmpeg-release-full.7z)이나 22MB로 상대적으로 가벼운 essentials 버전(ffmpeg-release-essentials.7z)중 어느 하나를 받아도 무방합니다.
이 중 마음에 드는 항목을 클릭하면 다운로드가 시작됩니다. 대부분 그냥 다운로드 폴더에 저장됩니다.(브라우저 설정 시 다룬로드 폴더를 특정해 놓았다면 그 특정해 놓은 폴더로 다운받아 지겠죠.)
essentials 버전은 zip 파일과 7z 압축 버전으로 구분해 제공되고 있으니 사용하는 압푹 해제 프로그램에 따라 받으면 될 것 같습니다.
만약 개발자라면 다양한 라이브러리가 포함된 ffmpeg-release-full-shared.7z을 다운받으면 되겠죠.
다운받은 설치 파일을 압축 해제
FFmpeg 설치 파일을 다운받은 후 압축 해제합니다. 그리고 적절한 위치에 복사(이동)합니다.
위치는 정말 별 상관이 없을 것 같긴합니다만 어느 글에는 가능하면 프로그램 설치 폴더인 program files 밑에 두는 것이 좋겠다고 하네요..
굳이 나쁜 선택은 아닌 듯 싶어서 저도 프로그램 설치 폴더아래에 ffmpeg라는 폴더를 만들고 여기에 관련 파일을 이동시켰습니다.
나중에 환경 변수 설정에 대비해 ffmpeg 아래 프로그램이 있는 bin 폴더 절대 주소를 복사해 놓습니다. C:\Program Files\ffmpeg\bin
환경 변수 설정
윈도우 10에서는 다운받은 실행 파일이 제대로 작동하지 않습니다. 제대로 작동하게 만들려면 이 실행 파일이 있는 위치를 윈도우 10에게 알려주어야 합니다. 이게 환경 변수 설정인데요.
아쉽게도 이러한 작업이 자동으로 이루어지 지지 않기 때문에 수작업으로 진행해야 합니다.
시스템으로 이동
바탕화면에 있는 내 컴퓨터(또는 내 PC) 아이콘을 클릭하거나, 윈도우 10 설치 방법에 따라 바탕 화면에 그런 아이콘이 없는 경우는 탐색기에서 내 PC를 눌러 나오는 화면의 맨 위쪽 빨간 체크 표시가 있는 속성탭을 눌러 시스템으로 이동할 수 있습니다.
고급 시스템 설정
아래 이미지와 같은 시스템에서 왼쪽 중간에 있는 고급 시스템 설정을 누릅니다.
환경 변수(N) 클릭
그러면 시스템 속성이 나오는데요. 여기서 맨 아래에 있는 환경 변수(N)을 누릅니다.
Path 선택 후 편집 클릭
그러면 환경 변수 화면이 나타나는데요. 사용자 변수(U) 중에서 Path를 선택 후 편집을 클릭 합니다.
환경 변수 편집에서 새로 만들기
이러면 환경 변수 편집 화면이 나오는데요.여기서 우측 버튼 중 새로만들기 버튼을 누르면 데이타 입력칸이 나오는데 여기에 아까 복사해 두었던 ffmpeg 아래 bin 폴더 절대 주소인 C:\Program Files\ffmpeg\bin를 입력합니다.(복사되었다면 붙이기 하면 되겠죠)
그리고 확인 버튼을 눌러서 빠져 나옵니다.
그리고 환경 변수 화면에서도 확인을 눌러 줍니다. 그리고 나머지 띄워놓은 창들은 모두 확인을 눌러서 닫습니다.
컴퓨터를 리부팅하면 적용되기 시작
그러면 환경 변수 설정은 끝났습니다. 제대로 다 적용되려면 위도우 10을 리부팅합니다. 그 전에는 제대로 인식하지 않는 것 같습니낟.
ffmpeg 실행, 활용
이 동영상 편집 프로그램 ffmpeg는 우리가 흔히 보는 GUI 프로그램이 아니라 커맨드 라인에 명령어를 입력하는 예전 방식을 사용합니다.
굉장히 불편하지만 제대로 익혔다면 빠르게 실행시킬 수 있는 장점도 있기는 합니다.
이를 사용하려면 명령 프롬프트로 이동해야 합니다. 이를 위한 가장 간단한 방식은 왼쪽 하단의 찾기에서 ‘명령’ 을 입력해 명령 프롬프트로 이동하는 것입니다.
이 명령 프롬프트에서 ffmpeg를 치면 아래처럼 관련 사항을 주르륵 보여 주게 됩니다. 이러한 메세지가 나오지 않는다면 설치가 잘못 된 것입니다.
폴더 내 gif 전체를 mp4로 변환하기
폴더 내에 있는 여러개의 gif 파일을 하나 하나 변환하기는 불편하기 때문에 한꺼번에 전부 변환하고 싶을 때가 있습니다.
이럴때는 아래와 같은 명령을 사용합니다.
FOR /F "tokens=*" %G IN ('dir /b *.gif') DO ffmpeg -i "%G" -pix_fmt yuv420p -c:v libx264 -movflags +faststart -filter:v crop='floor(in_w/2)*2:floor(in_h/2)*2' "%~nG.mp4"
Code language: PHP (php)
폴더 전체 gif 파일을 변환하는 배치 파일
위도우에서 아주 오랜전 방식으로 명령어를 입력하는 것은 솔직히 고역이죠. 이러한 불편을 조금이라조 해소하려면 batch 파일을 만들어 간단히 실행시키도록 합니다.
배치 파일 만들 때 유의할 점은 For 명령어 사용 방법이 조금 달라진다는 것입니다. 배치 파일에서는 %대신 %%를 사용해야 합니다.
위에서 사용한 명령을 배치 파일로 만들면, 예를 들어 g.bat 파일을 열어 아래와 같은 명령을 적용합니다.
FOR /F "tokens=*" %%G IN ('dir /b *.gif') DO ffmpeg -i "%%G" -pix_fmt yuv420p -c:v libx264 -movflags +faststart -filter:v crop='floor(in_w/2)*2:floor(in_h/2)*2' -y "%%~nG.mp4"
Code language: PHP (php)
참고
서버에서 PNG 이미지 최적화로 사이트 속도 개선 방법
서버에서 JPEG 이미지 최적화로 사이트 속도 개선 방법