Skip to content

[CentOS] ffmpeg 설치

조회 수 24524 추천 수 0 2012.02.07 17:48:02
1. First install subversion and ruby via yum or up2date:

yum -y install subversion ruby

yum install subversion*

yum install ncurses-devel*





2. make ffmpeg

cd /
mkdir ffmpeg





3. Now we need to install MPlayer & FFmpeg sources from SVN:

cd /ffmpeg
svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer





4. Now we need some codecs:

wget http://www.mplayerhq.hu/MPlayer/releases/codecs/essential-20071007.tar.bz2
tar xvjpf essential-20071007.tar.bz2
cd essential-20071007
mkdir /usr/local/lib/codecs
mv * /usr/local/lib/codecs/
chmod -R 755 /usr/local/lib/codecs/
cd /ffmpeg





5. Next we will install LAME MP3 encoder:

wget http://downloads.sourceforge.net/lame/lame-398-2.tar.gz
tar xvzpf lame-398-2.tar.gz
cd lame-398-2
./configure --prefix=/usr
make
make install
cd /ffmpeg





6. Now we install Libogg:

wget http://downloads.xiph.org/releases/ogg/libogg-1.1.3.tar.gz
tar xvzpf libogg-1.1.3.tar.gz
cd libogg-1.1.3
./configure --prefix=/usr
make
make install
cd /ffmpeg







7. We need to make sure the correct lib directories are setup in ldconfig. Edit the /etc/ld.so.conf file and add the following lines:

/usr/lib
/usr/local/lib





8. Now save and run the following command:

ldconfig



※ 7, 8 과정은 생략하여도 문제가 없는듯...






9. To install libvorbis we will run:

wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.2.0.tar.gz
tar xvzpf libvorbis-1.2.0.tar.gz
cd libvorbis-1.2.0
./configure --prefix=/usr
make
make install
cd /ffmpeg





10. Now we will install FLVTool2:

wget http://rubyforge.org/frs/download.php/17497/flvtool2-1.0.6.tgz
tar xvzpf flvtool2-1.0.6.tgz
cd flvtool2-1.0.6
ruby setup.rb config
ruby setup.rb setup
ruby setup.rb install
cd /ffmpeg





11. Next we should build MPlayer & MEncoder and it will take a while unless you have a nice dual or quad core machine. Note that I’ve seen the SVN version of these packages break before, so you can always download the source code from their site (a stable copy) if it fails on make:

cd mplayer
./configure --prefix=/usr
make
make install
cd /ffmpeg





12. We will now build FFmpeg:

mkdir /usr/local/src/tmp
chmod 777 /usr/local/src/tmp
export TMPDIR=/usr/local/src/tmp
cd /ffmpeg/ffmpeg
./configure --prefix=/usr --enable-libmp3lame --enable-libvorbis --disable-mmx --enable-shared
make
make install
cd /ffmpeg

※ 여기서 make하면, error가 발생하는 경우가 있습니다.
In file included from libavdevice/v4l.c:33:
/usr/include/linux/videodev.h:56: error: syntax error before "ulong"
/usr/include/linux/videodev.h:72: error: syntax error before '}' token
libavdevice/v4l.c: In function `grab_read_header':
libavdevice/v4l.c:75: error: storage size of 'tuner' isn't known
libavdevice/v4l.c:133: error: invalid application of `sizeof' to incomplete type `video_tuner'
libavdevice/v4l.c:140: error: invalid application of `sizeof' to incomplete type `video_tuner'
libavdevice/v4l.c:75: warning: unused variable `tuner'
make: *** [libavdevice/v4l.o] 오류 1

이런 error가 뜨신다면!
vi /usr/include/linux/videodev.h 해서 ulong을 unsigned long으로 바꿔주시면 문제 해결!




13. Symlink some libraries if needed (ignore file exists errors):

ln -s /usr/local/lib/libavformat.so.50 /usr/lib/libavformat.so.50
ln -s /usr/local/lib/libavcodec.so.51 /usr/lib/libavcodec.so.51
ln -s /usr/local/lib/libavutil.so.49 /usr/lib/libavutil.so.49
ln -s /usr/local/lib/libmp3lame.so.0 /usr/lib/libmp3lame.so.0
ln -s /usr/local/lib/libavformat.so.51 /usr/lib/libavformat.so.51





14. Now build FFmpeg-PHP:

wget http://downloads.sourceforge.net/ffmpeg-php/ffmpeg-php-0.6.0.tbz2
tar xvjpf ffmpeg-php-0.6.0.tbz2
cd ffmpeg-php-0.6.0
phpize
./configure --prefix=/usr
make
make install
cd /ffmpeg

※ 저는 이 과정은 생략하였습니다.
허나 실행은 잘되는군요!ㅋ




15. Now you need to copy the ffmpeg.so file that was created from it’s location (from the build) to /usr/local/lib/php/extensions/, it should look something like:

cp /usr/local/lib/php/extensions/no-debug-non-zts-????????????/ffmpeg.so /usr/local/lib/php/extensions/



16. Modify your php.ini. Try /etc/php.ini or /usr/lib/php.ini or /usr/local/Zend/etc/php.ini as they are common locations, you can do php -i | grep -i ini to find the proper location. Change the extension_dir value as seen below and add the extension as seen below:

extension_dir = “/usr/local/lib/php/extensions/”
extension=ffmpeg.so





17. Now save and restart apache and test php for ffmpeg on both apache via phpinfo() and from shell:


/etc/rc.d/init.d/httpd restart

php -r 'phpinfo();' | grep ffmpeg
profile

일요일은 짜빠게뤼~ 먹는날~^^

엮인글 :
http://adminplay.com/77048/b85/trackback
List of Articles
번호 제목 글쓴이 날짜sort 조회 수

net-snmp 설치 및 snmp 사용법

Linux 소켓 접속 개수 늘리기

아파치 HARD_SERVER_LIMIT

시스템 최적화 - 동시사용자 늘리기위한 커널 조정

hdparm - 하드디스크의 자세한 정보 보기

history 시간 정보 출력

sysctl 커널 파라미터

Setting promiscuous mode

syslogd : 콘솔에 남는 메세지 로그파일로 남기기

리눅스에서 윈도우 공유 폴더 마운트

rsyncd.conf설정

대용량 하드 디스크 파티셔닝 (GPT 파티션)

ethtool 사용법

백 그라운드, 포그라운드 전환

apm설치시 configure error

rpmfind (rpm패키지 검색사이트)

libc-client-2002e-8 패키지

리눅스 터미널에서 사용하는 단축 키

ssh, ftp 접근 딜레이 현상 발생시 조치방법

리눅스에서 하드웨어 스팩 보기 dmidecode

Copyright ADMINPLAY corp. All rights reserved.

abcXYZ, 세종대왕,1234

abcXYZ, 세종대왕,1234