OVERCODE

YUM 으로 FFMPEG 설치하기 & FFMPEG-PHP 설치하기 (Centos 6.5) 본문

리눅스

YUM 으로 FFMPEG 설치하기 & FFMPEG-PHP 설치하기 (Centos 6.5)

오버코드 2016. 11. 18. 14:21

FFMPEG 와 FFMPEG-PHP 를 설치하는데 애를 먹었었다가.. 드디어 해결했다!!


(FFMPEG 는 동영상 변환등 많은 기능이 있지만 나 같은 경우는 PHP 에서 동영상을 업로드 할 때 썸네일을 추출및 기타 정보를 가져오기 위해서 설치하였다)



https://gist.github.com/mustafaturan/7053900


위의 이미지 처럼 직접 하나씩 FFMPEG 와 FFMPEG 연관 라이브러리들을 설치해서 FFMPEG 설치는 성공하였었지만..

꽤 귀찮은 작업이었으며 설치경로 같은것 때문에 ffmpeg-php 가 제대로 동작하지 않는것 같아서 모두 삭제하였다.

굳이 저렇게 설치할 필요없이 yum 으로 설치 할 수 있었다.


예전 글들에 있는 dag repo파일로는 설치 할 수 없었으나 새로운 repo 발견!


Centos 6.5 를 사용하고 있는 나랑 같은 환경이라면 그대로 따라하면 성공할듯하다.


(모든 명령어는 root 사용자로 전환후에)


1. php-gd 가 설치되어있지 않다면 설치


# yum install php-devel php-gd



2. 새로운 repo 추가하기 (yum install ffmpeg 를 하기 위함)

http://ask.xmodulo.com/enable-nux-dextop-repository-centos-rhel.html 참고

http://thoaimedia.com/how-to-install-ffmpeg-ffmpeg-php-on-centos-67-cpanel-server/ 참고

# rpm -Uvh http://li.nux.ro/download/nux/dextop/el6/x86_64/nux-dextop-release-0-2.el6.nux.noarch.rpm
# yum repolist


repolist 를 보면 nux-dextop 이 추가되어있는것을 볼 수 있다.



3. yum 으로 ffmpeg 설치


# yum install ffmpeg ffmpeg-devel


종속된 패키지들도 모두 알아서 설치해준다.



4. ffmpeg-php 설치 전 에러방지


에러방지를 하지 않으면 ./configure 시 아래와 같이 에러가 발생할것이다.

ffmpeg headers not found 에러.

이것 때문에 많이 애먹었었다.


ffmpeg-php 가 헤더를 찾을수 있게 ffmpeg 설치후에 생긴 /usr/include/ffmpeg/* 를 /usr/include/ 로  복사 해버린다!

(configure 및 make 에러방지가 어느정도됨)

# cp -r /usr/include/ffmpeg/* /usr/include/



5. ffmpeg-php 다운로드 & 설치


(공식 홈페이지에서 다운받으면 또 make 에서 에러남. php 버전등등 ffmpeg-php 가 너무 옛날에 나온거라서 그런듯)

wget http://sourceforge.net/projects/ffmpeg-php/files/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2


아래와 같은 방법으로 설치하면 된다.

(위의 경로 복사와 여기 새로운 FFMPEG-PHP 로 정말 수많은 에러가 잡혔다!)


# cd /usr/local/src
# git clone https://github.com/tony2001/ffmpeg-php.git
# cd ffmpeg-php
# phpize
# ./configure --enable-skip-gd-check
# make
# make install

 - phpinfo() 화면 중 ffmpeg 부분 -

./configure --enable-skip-gd-check 옵션은 ffmpeg-php gd support 가 disabled 로 나오는 문제를 해결해준다!



6. php 설정 추가

# echo -e "extension=ffmpeg.so\n" > /etc/php.d/ffmpeg.ini

(php에서 ffmpeg를 로드할 수 있도록 /etc/php.d/ffmpeg.ini 파일을 생성한다)



7. php 및 web server 재시작


# /etc/init.d/php-fpm restart
# /etc/init.d/nginx restart



Comments