【发布时间】:2013-09-24 23:38:24
【问题描述】:
因此,此命令适用于在视频中生成 5 秒的缩略图,大小为 300x300:
$cmd = '/usr/local/bin/ffmpeg -i '.$this->getUploadRootDir().'/'.$fname.' -ss 00:00:05 -f image2 -vframes 1 -s 300x300 '.$this->getUploadRootDir().'/thumb_'.$output;
但是,我想保持纵横比,所以我将代码更改为:
$cmd = "/usr/local/bin/ffmpeg -i ".$this->getUploadRootDir()."/".$fname." -ss 00:00:5 -f image2 scale='min(300\, iw):-1' ".$this->getUploadRootDir()."/thumb_".$output;
上面的代码正确地调整了图像的大小,但是它是视频中第一帧的大小。我需要缩略图为 5 秒。任何帮助将不胜感激。
【问题讨论】:
-
你没有忘记
-filter:v之前的scale吗? -
@slhck 是的,您应该将其发布为答案。