고용량의 gif에 고통받으며, webp의 아름다움을 만끽하고 싶지만, 어려운 브분이들을 위해서 준비했음
ffmpeg는 오디오와 비디오 등을 만들고, 변환하고, 스트리밍하기 위한 완변한 크로스 플랫폼 솔루션임
걍 대충 확장자 바꾸고 머시기 하는거라고 생각하면 됨
준비물은 다음과 같음.
1. gif든 mp4든 대충 움직이는 그거의 파일
2. ffmpeg
3. 글을 보고 그대로 따라할 수 있는 지능
자 그럼 시작하겠음
우선 처음은 ffmpeg를 설치하는거임
이 부분이 어려울 수 있는데, 내가 알려주는거 그대로만 따라하면 됨
일단 ffmpeg를 다운할거임
https://ffmpeg.org/
위 주소로 들어가셈.
[Download] 클릭
윈도우 모양에 커서 올리고, 바로 밑에 Windows EXE Files라고 써 있는 곳에서 아무거나 선택
나는 [Windows builds from gyan.dev]를 눌러줄거임.
[ffmpeg-git-full.7z] 다운로드
C 드라이브 최상위에 압축 풀고 이름을 [ffmpeg-2024-10-02-git-358fdf3083-full_build]과 같이 존나 긴 폴더명에서 ffmpeg로 줄이기
이러면 ffmpeg 폴더로 들어갔을 때, 상단에 뜨는 경로가 [내 PC > 로컬 디스트 (C:) > ffmpeg]일거임
물론 다른 경로도 가능한데, 괜히 다른 경로로 하겠다고 하다가 안된다고 하지 말고 그냥 천천히 따라하셈
폴더 안에 있는 bin 폴더로 들어오셈
상단에 저 부분 누르면 경로 복사 가능함.
경로 복사해두셈.
이제 [Win + R] 누르고, [sysdm.cpl] 이라고 쳐서 확인 누르셈
뜨는 창에서 [고급] 탭 누르고, 하단에 있는 [환경 변수] 클릭
윗쪽에서 [@@에 대한 사용자 변수]라고 된 곳에서 스크롤 내리면 Path라는 항목 있음
그거 더블 클릭
[새로 만들기] 클릭해서 아까 복사해 둔 주소 붙여넣기
날 그대로 따라했다면 아마 [C:\ffmpeg\bin] 이 주소일거임
확인하고 뭐 적용하고 다 해서 창 닫으셈
그 다음에 다시 [Win + R] 눌러서 이번에는 [cmd] 입력
그럼 대충 검은 창에 뭐라뭐라 있을거임
거기에서 >> ffmpeg -version << 입력
이것처럼 주르륵 뜨면 설치 성공
자 이제 그럼 이걸 써서 mp4나 gif 같은걸 webp로 바꿀거임
권장하는건 mp4나 뭐 mov나 avi 같은 동영상 확장자임
이유) gif는 이미 한번 화질이 구려져서 별로임
물론 gif도 상관은 없음
기본적인 설명은 mp4를 기준으로 하겠음
이제 아무곳에나 폴더 하나 만들어서 변환할 파일을 넣어주셈
그리고 같은 폴더에 [우클릭 -> 새로 만들기 -> 텍스트 문서] 해서 메모장 파일 하나 만드셈
파일 이름은 뭐 [WebpMaker] 정도?
방금 만든 메모장 파일 열어서 아래 내용 넣고 저장하셈
@echo off
ffmpeg -i "input.mp4" -vf "scale=640:360,fps=20" -vcodec libwebp -lossless 0 -q:v 50 -preset default -compression_level 6 -an -vsync vfr -loop 0 "output.webp"
pause
그 다음에는 파일 탐색기 위에 있는거 아래 보고 따라 누르셈
이러면 방금 만든 [WebpMaker]의 이름이 [WebpMaker.txt]로 바뀌었을거임
별건 아니고 png같은 확장자명을 보이게 해주는거임
이거 이름을 [WebpMaker.bat]으로 바꿔주셈
네가 가져온 mp4의 이름을 input.mp4로 바꿔주고, WebpMaker.bat을 더블클릭하면 검은 창 뜨면서 뭐 주르륵 하다가 시간 지나면 아무곳이나 클릭해서 끄라고 할텐데
그러면 output.webp가 생길거임
타단!
끝임.
이제는 mp4가 아닌 파일을 바꾸는 법, 용량 더 낮추는 법, 프레임 바꾸는 법, 해상도 바꾸는 법
이런걸 알려줄거임
아까 만든 WebpMaker.bat을 우클릭하면 [편집] 이라는 버튼이 있을거임
그거 누르면 메모장 다시 열림. 여셈
그러면 아까 넣은 문구들이 있을거임
@echo off
ffmpeg -i "input.mp4" -vf "scale=640:360,fps=20" -vcodec libwebp -lossless 0 -q:v 50 -preset default -compression_level 6 -an -vsync vfr -loop 0 "output.webp"
pause
이거 말임
자 이거 설명해줄게.
일단 ["input.mp4"] 이 부분
mp4를 뭐 gif나 avi나 원하는걸로 바꾸면 됨 그러면 mp4 아닌것도 가능함
다음은 ["scale=640:360,fps=20"] 이 부분 있지?
딱 보면 알겠지만 해상도랑 프레임임
가로:세로 형식으로 해상도 넣으면 됨
나는 16:9 가로 기준 640:360, 세로 기준 360:640 추천함
16:9가 아니거나 특정 해상도 원하면 대충 비율 계산해서 넣으면 됨
16:9 영상을 16:9가 아닌 값을 넣어서 변환하면 대충 찌그러져서 나오니까 잘 하셈
fps 부분은 20 권장하는데, 뭐 원하는 값 넣으셈
[-q:v 50] 이 부분은 퀄리티 설정인데 100이 최고 화질 최저 압축 / 0이 최저 화질 최고 압축임
대충 원하는 값 찾으면 되는데 나는 50씀 직접 해보면서 적절한 값 찾으셈
해상도, 프레임, 퀄리티 이거 조지면 용량은 막 떨어진다.
그럼 20000