>  기사  >  백엔드 개발  >  Linux에 ffmpeg-php 확장을 설치하는 방법

Linux에 ffmpeg-php 확장을 설치하는 방법

青灯夜游
青灯夜游원래의
2021-04-01 18:12:303130검색

설치 방법: 1. ffmpeg 설치 패키지를 다운로드하고 tar 명령을 사용하여 압축을 풉니다. 2. make 명령을 사용하여 ffmpeg를 컴파일하고 설치합니다. 3. ffmpeg-php 설치 패키지를 다운로드하고 tar 명령을 사용하여 다음을 수행합니다. 4. make 명령을 사용하여 컴파일합니다. ffmpeg-php를 설치하기만 하면 됩니다.

Linux에 ffmpeg-php 확장을 설치하는 방법

이 튜토리얼의 운영 환경: Red Hat Enterprise Linux 6.1 시스템, PHP7.1, Dell G3 컴퓨터.

1. ffmpeg

설치 (1) 설치 패키지 받기

wget -c wget http://down1.chinaunix.net/distfiles/ffmpeg-0.4.9-p20051120.tar.bz2

(2) 압축 풀기

tar -xvf ffmpeg-0.4.9-p20051120.tar.bz2

(3) 컴파일 및 설치

./configure --prefix=/usr/local/ffmpeg --enable-shared
make
make install

(4 ) 테스트

직접 입력: ffmpeg

ffmpeg version CVS, build 3277056, Copyright (c) 2000-2004 Fabrice Bellard
configuration: --prefix=/usr/local/ffmpeg --enable-shared
built on Oct 16 2013 17:05:16, gcc: 4.4.7 20120313 (Red Hat 4.4.7-3)
usage: ffmpeg [[infile options] -i infile]... {[outfile options] outfile}...
Hyper fast Audio and Video encoder
Main options:
-L show license
-h show help
................................省略

컴파일에서 다음 오류가 보고되면

yasm을 찾을 수 없습니다. 손상된 빌드 오류에 대해 --disable-yasm을 사용하세요. 먼저 yasm을 컴파일하고 설치해야 합니다

yasm 다운로드 주소: http ://yasm.tortall .net/Download.html

소스코드 패키지를 다운로드하고 압축을 푼 후 컴파일하고 설치

./configure
make
make install

테스트 중 다음 오류가 발생하면

ffmpeg: error while loading shared libraries: libavdevice.so.52: cannot open shared object file: No such file or directory”

Solution

vi /etc/ld.so.conf

Join

/usr/local/ffmpeg/lib

그럼 execute

ldconfig

2. ffmpeg- php

설치 (1) 설치 패키지

wget http://jaist.dl.sourceforge.net/project/ffmpeg-php/ffmpeg-php/0.5.3.1/ffmpeg-php-0.5.3.1.tbz2

다운로드 (2)

tar -xvf ffmpeg-php-0.5.3.1.tbz2

압축 해제 (3)

cd ffmpeg-php-0.5.3.1
./configure --with-php-config=/usr/local/php/bin/php-config --with-ffmpeg=/usr/local/ffmpeg
make
make install
컴파일 및 설치

( 4)

php 파일에 php.ini를 구성하고 다음 내용을 추가합니다

extension=ffmpeg.so

apache 또는 php-fpm을 다시 시작한 후 php

/usr/local/php/bin/php -r 'phpinfo();' | grep ffmpeg
ffmpeg
ffmpeg support (ffmpeg-php) => enabled
ffmpeg-php version => 0.5.3.1
ffmpeg-php gd support => enabled
ffmpeg.allow_persistent => 0 => 0
ffmpeg.show_warnings => 0 => 0
............................省略

3으로 테스트합니다. 발생한 오류는 다음과 같이 해결됩니다

(1) make 도중 오류 메시지가 발견되는 경우: make: ** * [ffmpeg_frame.lo] 오류 1:

mv ffmpeg_frame.loT ffmpeg_frame.lo

그런 다음 re-make make install

(2) ffmepg-php 호출 시 오류 메시지가 나타나면 모듈은 다음과 같습니다:

php: symbol lookup error: /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/ffmpeg.so: undefined symbol: register_ffmpeg_frame_class

그런 다음 ffmpeg_frame.c를 수정하고 3의 PIX_FMT_RGBA32를 PIX_FMT_RGB32로 변경합니다.

vi ffmpeg_frame.c
:%s/PIX_FMT_RGBA32/PIX_FMT_RGB32
:wq!

Then reconfigure; make make install

(3) make times

make: *** [ffmpeg-php.lo] 오류 1

-php를 컴파일할 때 ./configure --with를 추가해야 합니다. -config=/usr/local/php/bin/php-config

그래도 안되면 ffmpeg와 ffmpeg-php 버전을 바꿔서 시도해 보세요. 버전 간 호환성 문제일 수도 있습니다.

추천 학습: "PHP 비디오 튜토리얼"

위 내용은 Linux에 ffmpeg-php 확장을 설치하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.