【问题标题】:Laravel FFMPEG Error Encoding Failed using Laravel QueueLaravel FFMPEG 错误编码使用 Laravel 队列失败
【发布时间】: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


【解决方案1】:

解决了问题。

问题是我存储转换后的视频的目录。我授予了对目录的写入权限,它运行良好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-19
    • 2020-09-27
    • 1970-01-01
    • 2018-08-16
    • 1970-01-01
    • 1970-01-01
    • 2018-03-15
    相关资源
    最近更新 更多