CentOS6.4에 ffmpeg 및 ffmpeg-php 설치

개요



동영상 업로드 및 인코딩 기능을 만들려고 CentOS에 ffmpeg와 ffmpeg-php를 설치하는 곳에서 집어 들었으므로, 설치하기까지의 순서를 메모.
이번에 하려고 했던 것은, 유저가 투고한 동영상을 S3에 업 하기 전에, php측에서 한 번 h264의 encode를 실시하고 나서 S3에 업한다고 하는 것.
동영상은 h264/aac로 변환하고 싶었으므로 FAAC와 X264도 함께 설치했다.

사전 준비



다양한 패키지 설치



ffmpeg를 설치하기 전에 먼저 다음 패키지를 설치하십시오.sudo yum install nasm git subversion yum-plugin-priorities

RPMForge 리포지토리 추가


sudo rpm -ivh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.i686.rpm

리포지토리 설정 변경


sudo vi /etc/yum.repos.d/CentOS-Base.repo


업데이트


sudo yum -y update rpmforge-release

yum에서 기본적으로 사용할 수 없도록 설정 변경


sudo vi /etc/yum.repos.d/rpmforge.repo


FAAC 설치



이번에는 오디오 코덱을 AAC로 변환하고 싶었기 때문에 무료 AAC 인코더 인 FAAC를 설치합니다.
wget http://sourceforge.net/projects/faac/files/faac-src/faac-1.28/faac-1.28.tar.bz2/download?use_mirror=jaisttar xjf faac-1.28.tar.bz2cd faac-1.28sh ./bootstrap./configure --prefix=/usr/localmakemake하면 아래와 같은 에러가 나오므로,


mpeg4ip.h 편집sudo vi common/mp4v2/mpeg4ip.h
123행 주변,char *strcasestr(const char *haystack, const char *needle);의 설명을 찾아 이 라인을 삭제한다.

다시 make 실행sudo makesudo make installcd

X264 설치



H264로 변환하려면 X264 설치
X264를 설치하기 전에 yasm 설치 (X264 빌드에 필요)wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gztar xvfz yasm-1.2.0.tar.gzcd yasm-1.2.0./configure --prefix=/usr/localmakesudo make installcd
그런 다음 x264 설치git clone git://git.videolan.org/x264.git
cd x264
./configure --prefix=/usr/local --enable-sharedmakesudo make installcd

ffmpeg 설치


git clone git://source.ffmpeg.org/ffmpeg.git ffmpegcd ffmpeg./configure --prefix=/usr/local --enable-gpl --enable-version3 --enable-nonfree --enable-shared --enable-libfaac --enable-libx264 --enable-libxvidmakesudo make installcd

ffmpeg-php에 필요한 패키지 설치


sudo yum install rec2 php-devel ffmpeg-libpostproc

ffmpeg-php 설치



php에서 ffmpeg 기능의 일부를 사용할 수있는 ffmpeg-php 설치git clone https://github.com/tony2001/ffmpeg-php.gitcd ffmpeg-phpphpize./configure --prefix=/usr/local --enable-skip-gd-checkmakesudo make installcd

ffmpeg.so 모듈 내장



ffmpeg.ini가 없기 때문에 같은 폴더에있는 적절한 ini를 복사하고 편집합니다 (이번에는 gd.ini를 복사했습니다)cd "/etc/php.d"sudo cp gd.ini ffmpeg.iniffmpeg.ini 편집sudo vi /etc/ld.so.confgd가 된 부분을 ffmpeg로 대체; Enable ffmpeg extension module
extension=ffmpeg.so
내장 확인php -m 에서 ffmpeg가 추가되었는지 확인



라이브러리 경로 설정



추가한 라이브러리가 올바르게 로드되도록 경로 추가sudo vi /etc/ld.so.confld.so.conf의 내용을 다음과 같이 수정
include ld.so.conf.d/*.conf
/usr/local/lib

라이브러리 업데이트



ld.so.conf를 업데이트한 후 ld.so.cache를 업데이트해야 하므로 아래 명령을 입력합니다.sudo ldconfig이제 ld.so.conf 변경 사항이 ld.so.cache에도 적용됩니다.

Apache 재부팅


sudo service httpd restart

phpinfo에서 ffmpeg를 확인할 수 있으면 OK





무사히 ffmpeg가 인식되고 있으면 종료입니다.
수고하셨습니다.

참고 URL


  • ht tp : 木 ぃ 엔시몬. bぉgs포 t. fr/2013/08/호 w토컴핑gー FM 페gーx264ーMP3ー아아 c. html
  • ht tp // // 흠 m.ゔぉr에서. 로 / ㅇ fm ぺ- 에로 r ぃー오 ぇぇぇぇぇーーt129. HTML
  • htps : // 기주 b. 이 m /과 ny 2001 / fm ぺg php
  • h tp // w w. 우 벤기 네 예 r. 코 m / 전과 s_ fm ぺg /
  • h tp // w w. 우 벤기 네 예 r. 코 m/rpm 푹신/
  • h tp : / / fm ぺg php. 그렇게 r세후레. 네 t/두 c/아피/
  • 좋은 웹페이지 즐겨찾기