我想安裝FFMPEG-PHP進行後端視頻轉換,並捕獲我網站上傳的視頻用戶的縮略圖。但是我有問題,我不確定它到底是什麼。FFMPEG PHP似乎並不工作
環境: Ubuntu服務器12.04 PHP5和Apache2的(沒有用LAMP包單獨安裝。)
要安裝的ffmpeg我跟着本教程中,http://ffmpeg.org/trac/ffmpeg/wiki/UbuntuCompilationGuide。
在命令行上工作: 當我試圖從命令行轉換,它的工作原理。
avconv -i test.mp4 test.flv
- 工程 ffmpeg -i test.mp4 test.flv
- 作品說,使用avconv
文件夾的權限已改爲R 777
phpinfo()函數:
- 的ffmpeg的PHP版本: 0.6.0-svn
- ffmpeg-php建立於:2012年2月25日17:59:17
- 的ffmpeg的PHP GD支持:啓用
- ffmpeg的libavcodec的版本:Lavc53.34.0
- 的ffmpeg了libavformat版本:Lavf53.20.0
- 的ffmpeg軟件縮放版本SwS2.1.0
我讀的地方試試以下代碼,
extension_loaded('ffmpeg') or die('Error in loading ffmpeg');
上述代碼在擴展加載成功時不應該給出任何輸出。而且我沒有顯示任何錯誤。
代碼在PHP不工作,
exec("ffmpeg -i test2.mp4 test2.flv", $command_output, $result);
if ($result !== 0) {
echo 'Command failed!<br>';
print_r($command_output);
die();
}
echo 'success!';
print_r($command_output);
它打印命令失敗,因爲空數組,數組()。
希望有人能幫助引導我。
如果你安裝了'ffmpeg-php',你爲什麼要用'exec()'?查看http://ffmpeg-php.sourceforge.net/doc/api/index.php瞭解如何使用它的更多信息。如果您仍想使用'exec()',請確保使用正確的文件位置。我猜測'test2.mp4'與您正在運行的PHP腳本不在同一個位置。 '$ result'的值是多少? – 2012-07-23 06:02:16
test2.mp4與我的腳本位於同一個文件夾中,因爲我只是爲了測試而創建它。 '$ movie = new ffmpeg_movie(test.mp4)','$ movie-> getDuration()'返回正確的值。但是,我不知道如何使用引用的url從.mp4轉換爲.flv。另外,我嘗試了這個教程,_http://youtubeclone.wordpress.com/2007/05/26/how-to-convertencode-files-to-flv-using-ffmpeg-php/_。但是,它不起作用。 '$ result'沒有返回任何東西。 – 2012-07-23 06:29:53
爲$結果提前解釋了你的qn。 $結果值是int(127)。 – 2012-07-24 05:58:44