1

我得到了以下用于生成视频缩略图的命令:

escapeshellcmd("/usr/local/bin/ffmpeg -ss " . ceil($time) . " -i '" . $videoPath . "' -f image2 -vframes 1 -s 150x110 " . $tFilePath)

我想知道是否可以在自动高度而不是固定重量 x 高度中生成图像?

谢谢。

4

2 回答 2

5

你可以用 ffmpeg 做到这一点。而不是-s你可以使用scale视频过滤器:

-vf scale=150:-1

如果wh的值为 -1,则缩放过滤器将针对各自的输出大小使用保持输入图像纵横比的值。

于 2013-07-19T16:31:34.510 回答
0

我不知道是否可以通过 ffmpeg(但我不这么认为,因为我前一段时间使用的是 ffmpeg,不记得 api 中有类似的东西),但你的目标是再运行一个 ffpeg 命令来获取信息关于文件,然后你可以通过 php 调整你的高度和宽度:

$cmd = "ffmpeg -i /var/www/web1/bates.avi 2>&1";
if(preg_match('/Video: ((\w+), (\w+), (\w+))/s', `$cmd`, $video)) {
  $video = $video[1];
  print_r($video); //flv, yuv420p, 384x204
#or
  $video = $video[4];
  print_r($video); //384x204
}
于 2013-07-19T10:29:26.300 回答