System Compleat.

'Encoding'에 해당되는 글 1건

  1. Convert video format to mp4 with ffmpeg on Mac 3

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, 정윤진 )