ホームページ  >  記事  >  バックエンド開発  >  Linuxにffmpeg-php拡張機能をインストールする方法

Linuxにffmpeg-php拡張機能をインストールする方法

青灯夜游
青灯夜游オリジナル
2021-04-01 18:12:303145ブラウズ

インストール方法: 1. ffmpeg インストール パッケージをダウンロードし、tar コマンドを使用して解凍します; 2. make コマンドを使用して ffmpeg をコンパイルおよびインストールします; 3. 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 not found が報告された場合は、機能不全のビルド エラーに対して --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”

解決策

vi /etc/ld.so.conf

参加

/usr/local/ffmpeg/lib

次に実行

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: *** [ffmpeg_frame.lo] エラー 1 次に:

mv ffmpeg_frame.loT ffmpeg_frame.lo
その後、再度作成します。 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!

その後、再構成;make;make install

(3) Make 回の場合

make: *** [ffmpeg-php.lo] エラー 1

コンパイル時に ./configure --with-php-config=/usr/local/php/bin/php-config を追加する必要があります

それでも動作しない場合は、ffmpeg と ffmpeg- を置き換えてください。 php 異なるバージョンを試してください。バージョン間で互換性がない可能性があります。

推奨学習: 「

PHP ビデオ チュートリアル

以上がLinuxにffmpeg-php拡張機能をインストールする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。