0

バックエンド ビデオ変換用に FFMPEG-PHP をインストールし、自分の Web サイト アップロードのビデオ ユーザーのサムネイルをキャプチャしようとしています。しかし、私は問題を抱えており、それが正確に何であるかわかりません。

環境: Ubuntu Server 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 swscaler バージョン 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);

Command failed with as empty array, Array ( ) を出力します。

誰かがこれで私を導くのを手伝ってくれることを願っています.

4

1 に答える 1

1

APIを指摘してくれてありがとうDavid。FFMPEG-PHP はずっと動いていました。これで、ビデオのイメージを作成できます。誰かが同様の問題を抱えている場合は、以下のようにコードしてください。

ソース: http://itwigle.com/twig/Capturing_video_thumbnails_with_PHP

<?php
if (! extension_loaded (ffmpeg)) exit ('ffmpeg was not loaded ');
$movie_file = "test2.mp4";

// Instantiates the class ffmpeg_movie so we can get the information you want the video  
$movie = new ffmpeg_movie($movie_file);  

//Need to create a GD image ffmpeg-php to work on it  
$image = imagecreatetruecolor($width, $height); 

//Create an instance of the frame with the class ffmpeg_frame  
$frame = new ffmpeg_frame($Image);  

//Choose the frame you want to save as jpeg  
echo $thumbnailOf = $movie->getFrameRate() * 5;  

//Receives the frame  
$frameImg = $movie->GetFrame($thumbnailOf);

// Resizes the frame to 200, 100
//$frameImg-> resize(200, 100);  

//Convert to a GD image  
$image = $frameImg->toGDImage(); 

//Save to disk.  
imagejpeg($image, $movie_file.'.jpg', 100); 
?>

しかし、ビデオをmp4からflvに変換する際にまだ問題があります。誰かが変換のために私を助けてくれることを願っています.

于 2012-07-24T05:08:30.927 に答える