Convert video format to mp4 with ffmpeg on Mac
Techs( younjin.jeong@gmail.com, 정윤진 )
오늘은 간단한 팁.
맥용 인코딩 어플을 뒤져봐도 뭐 하나 쓸만한게 없는데 다들 도네이션이나 돈은 내란다.
이전에도 avconv 를 소개 한 적이 있는데, 오늘 맥에서 보니 brew 에는 avconv 가 없어서 ffmepg 를 사용하는 방법을 소개 한다.
먼저 brew 인데, 이건 구글에서 Home brew 라고 검색해서 먼저 설치 해 주어야 한다. 그거 설명은 패스.
아, 그리고 Home brew 는 이를테면 Gentoo 리눅스의 emerge 같은 건데, 패키지 소스를 받아서 컴파일 후 맥에 설치하기 때문에 컴파일러가 필요하다. 이 말인 즉슨, Xcode 를 설치해야 하고, 아울러 Xcode 의 CLI 도구도 설치해야 한다는 말. 검색하면 다 나온다.
어차피 기나긴 옵션에 대한 설명은 필요 없을 듯 하고.
brew install ffmpeg ==> Installing ffmpeg dependency: texi2html ==> Downloading http://download.savannah.gnu.org/releases/texi2html/texi2html-1.82.tar.gz .... .. 하면 뭔가 엄청 다운받고 컴파일 한다. ... 기다리면, .... ==> Installing ffmpeg ==> Downloading http://ffmpeg.org/releases/ffmpeg-1.1.tar.bz2 ######################################################################## 100.0% ==> ./configure --prefix=/usr/local/Cellar/ffmpeg/1.1 --enable-shared --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --cc=cc ==> make install /usr/local/Cellar/ffmpeg/1.1: 141 files, 25M, built in 3.1 minutes # 하고 프롬프트가 떨어지면 설치가 완료 된 것.설치가 완료되면 .avi 와 같은 파일을 mp4 로 바꿔보자.
ffmpeg -i My_Godness.avi -qscale 0 -vcodec mpeg4 -acodec libfaac -threads 16 -f psp My_Godness.mp4 # 다음과 같은 메세지가 주르륵 나오며 인코딩을 시작한다. 영상 파일의 크기에 따라 시간이 걸리므로 주의. ffmpeg version 1.1 Copyright (c) 2000-2013 the FFmpeg developers built on Jan 8 2013 18:20:08 with Apple clang version 4.1 (tags/Apple/clang-421.11.66) (based on LLVM 3.1svn) configuration: --prefix=/usr/local/Cellar/ffmpeg/1.1 --enable-shared --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --cc=cc --host-cflags= --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid libavutil 52. 13.100 / 52. 13.100 ........ ..... .. Stream mapping: Stream #0:0 -> #0:0 (mpeg4 -> mpeg4) Stream #0:1 -> #0:1 (mp3 -> libfaac) Press [q] to stop, [?] for help frame=227317 fps=262 q=0.0 Lsize= 2194142kB time=02:06:25.32 bitrate=2369.6kbits/s dup=1 drop=0 video:2069449kB audio:118243kB subtitle:0 global headers:0kB muxing overhead 0.294866%
ffmpeg 는 무지하게 많은 옵션을 가지고 있지만 내가 가진 비디오를 모바일용으로 인코딩 하기위해서라면 위의 정도로 충분하다.
간단히 설명하면,
-i : 원본파일
-qscale 0 : 퀄리티 변경 없이 인코딩 할 것
-vcodec mpeg4 : 비디오 코덱
-acodec libfaac : 오디오 코덱
-threads 16 : 작업을 수행 할 스레드의 갯수
-f psp : 출력파일
그럼, 즐거운 모바일 생활을 위해!
( younjin.jeong@gmail.com, 정윤진 )