如何为linux新手安装ffmpeg-PHP



我正试图将我在服务器文件夹中的.avi视频文件转换为'。flv'格式使用ffmpeg-PHP。我尝试"安装"ffmpeg-PHP是为了提取"ffmpeg-PHP -0.6.0"的内容。Tbz2"的存档文件放到一个单独的文件夹中。我使用的视频转换脚本引用了从"ffmpeg-php-0.6.0.tbz2"中提取的文件的目录位置

这是转换脚本:

<?php
// Set our source file
$srcFile = "/videos/clip.avi";
$destFile = "/videos/clip.flv";
$ffmpegPath = "/install"; //where I extracted "ffmpeg-php-0.6.0.tbz2"
// Create our FFMPEG-PHP class
$ffmpegObj = new ffmpeg_movie($srcFile);
// Save our needed variables
$srcWidth = makeMultipleTwo($ffmpegObj->getFrameWidth());
$srcHeight = makeMultipleTwo($ffmpegObj->getFrameHeight());
$srcFPS = $ffmpegObj->getFrameRate();
$srcAB = intval($ffmpegObj->getAudioBitRate()/1000);
$srcAR = $ffmpegObj->getAudioSampleRate();
function makeMultipleTwo ($value)
{
    $sType = gettype($value/2);
    if($sType == "integer")
    {
    return $value;
    } else {
    return ($value-1);
    }
}
// Call our convert using exec()
exec($ffmpegPath . " -i " . $srcFile . " -ar " . $srcAR . " -ab " . $srcAB . " -f flv -s " . $srcWidth . "x" . $srcHeight . " " . $destFile);
?>

运行转换脚本后,我得到输出,"致命错误:类'ffmpeg_movie'未在[转换脚本位置]中找到"

我已经阅读了ffmpeg-PHP页面上的说明,但它对我来说没有意义。我如何执行这些linux代码行来安装ffmpeg-PHP?

tar -xjf ffmpeg-php-X.x.x.tbz2
cd ffmpeg-php-X.x.x/
phpize
./configure && make
sudo make install

我想我使用的是Inmotion的共享主机服务,安装了linux。

如果您使用共享主机,则需要具有shell访问权限才能构建php扩展。由于主机是共享的,您将无法修改php配置(php.ini)来自动加载ffmpeg扩展。

如果您有shell访问权限和编译脚本的能力(在共享主机上并不总是常见的),您需要构建扩展名并将。so文件放在主目录的某个地方,并使用dl()函数在脚本中按需加载库。

一些主机可能会禁用dl(),或者禁用编译脚本的功能。如果你没有shell访问权限,那么你就不走运了,只有主机可以为你安装这个。

尝试使用本教程:

http://mysql-apache-php.com/ffmpeg-install.htm

最新更新