【发布时间】:2017-02-07 15:02:14
【问题描述】:
我在 Laravel 5 中使用 "php-ffmpeg/php-ffmpeg": "~0.5"。我正在使用这个库来压缩和转换录制的视频。我先解释一下场景。
当我从控制器执行以下代码时,它就像魅力一样工作。
$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\异常\运行时异常]
编码失败 [Alchemy\BinaryDriver\Exception\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''-编码器''1''-sc_threshold''40''-flags''+loop''-me_range''16''-subq''7''-i_qfactor''0.71''-qcomp''0.6''- qdiff''4''-trellis''1''-b:a''128k''-pass''1''-passlogfile''/tmp/ffmpeg-passes57ece7d794da4wdw13/pass-57ece7d794e2a''videos/converted/kaushik .mp4' ``
我可以使用以下方法在 MWV 和 WEBM 中转换视频
$video->save(new \FFMpeg\Format\Video\WMV(), 'export-wmv.wmv');
$video->save(new \FFMpeg\Format\Video\WebM(), 'export-webm.webm');
如果我使用
,只有 mp4 会失败$format=new \FFMpeg\Format\Video\X264('libmp3lame', 'libx264');
会是什么问题?
抱歉我在这个问题中的代码标记,我尝试了很多但失败了,我是新手!
【问题讨论】:
-
@diiN_ 感谢您的标记
-
与您的问题无关,但没有理由声明这么多 x264 选项:这就是编码预设的用途。
标签: php video laravel-5 ffmpeg