2016-09-29 6 views
0

私は"php-ffmpeg/php-ffmpeg": "~0.5"をLaravel 5で使用しています。このライブラリを使用して、録画したビデオを圧縮したり変換したりしています。最初にシナリオを説明します。Laravel FFMPEGエラーLaravel Queueを使用したエンコーディングに失敗しました

コントローラから次のコードを実行すると、チャームのように機能します。

$ffmpeg = FFMpeg::create(); 
$video = $ffmpeg->open(public_path()."/videos/harsh.webm"); 
$video 
    ->filters() 
    ->resize(new \FFMpeg\Coordinate\Dimension(640, 480)) 
    ->synchronize(); 
$video 
    ->frame(\FFMpeg\Coordinate\TimeCode::fromSeconds(10)) 
    ->save(public_path().'/videos/converted/kaushik.jpg'); 
$format=new \FFMpeg\Format\Video\X264('libmp3lame', 'libx264'); 
$format-> setKiloBitrate(300); 
$video->save($format,public_path().'videos/converted/kaushik.mp4');`` 

しかし、私は、キューのジョブでこのコードを入れたときに、エラー

[FFMPEG \例外の\のRuntimeException]
エンコードが失敗した[錬金術\ BinaryDriver \例外の\ ExecutionFailureException]
次で失敗します ffmpegコマンド '/ usr/bin/ffmpeg' '-y' '-i' '/opt/lampp/htdocs/candidate/public/videos/harsh.webm' '-async' '1' '-metadataを実行できませんでした。 :s:v:0 '' start_time = 0 '' -s '' 640x480 '' -vcodec '' libx264 '' -acodec '' libmp3lame '' -b:v '' 1000k '' -refs '' 6 '' -coder '' 1 '-sc_threshold' '40' '-flags' '+ lo '-qd' '' -qd '' '-trellis' '1' '-b:a' '-q' '' '128K' '-pass' '1' '-passlogfile' 'を/ tmp/ffmpegの-passes57ece7d794da4wdw13 /パス57ece7d794e2aを' '動画/変換/ kaushik.mp4を' ``

私はビデオを変換することができています

$video->save(new \FFMpeg\Format\Video\WMV(), 'export-wmv.wmv'); 
$video->save(new \FFMpeg\Format\Video\WebM(), 'export-webm.webm'); 

私は問題だろう何

$format=new \FFMpeg\Format\Video\X264('libmp3lame', 'libx264'); 

を使用している場合のみ、MP4が失敗し、次の使用MWVとWEBM?

申し訳ありませんが、この質問のコードマークアップでは、私はたくさんの努力をしましたが、失敗しました。

+0

@diiN_マークアップありがとう –

+0

問題はありませんが、それほど多くのx264オプションを宣言する理由はありません。これがエンコードプリセットです。 – LordNeckbeard

答えて

0

問題を解決しました。

問題は、私が変換されたビデオを保存していたディレクトリでした。私はディレクトリへの書き込みアクセスを与え、それは非常にうまく動作します。

関連する問題