ffmpeg设置自动高度

时间:2013-07-19 09:03:06

标签: php ffmpeg

我在生成视频缩略图时使用了以下命令:

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

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

感谢。

2 个答案:

答案 0 :(得分:2)

您可以使用ffmpeg执行此操作。您可以使用scale视频过滤器代替-s

-vf scale=150:-1

如果 w h 的值为-1,则对于相应的输出大小,比例过滤器将使用一个值来保持输入的纵横比图像。

答案 1 :(得分: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
}