【问题标题】:Change ffmpeg snapshot filenames using PHP使用 PHP 更改 ffmpeg 快照文件名
【发布时间】:2015-09-20 20:28:55
【问题描述】:

我正在使用ffmpeg从现有文件生成快照,命令行是:

ffmpeg -ss 0:00 -f image2 -r 0.2 -s 640*480 test_%d.jpg -i media.flv

执行上面的命令行后,进程开始,每5秒生成一次快照图片,名称从test_1.jpg开始(test_1.jpg,test_2.jpg,test_3.jpg等)。

但是现在我希望生成的名字从test_0.jpg开始,步长为5(即:test_0.jpg、test_5.jpg、test_10.jpg等)

谁能帮我怎么办? (我正在使用 PHP)。谢谢。

【问题讨论】:

标签: php ffmpeg filenames


【解决方案1】:

通过将最后一个数字保存在数据库中来缓存它,或者您使用本地文件将最后一个数字写入您的 exec 中,当您检索它时将其增加 5

//get your var from your database or from your cache file if it was empty leave it 0
    $mycachednum = 0;

    exec("ffmpeg -ss 0:00 -f image2 -r 0.2 -s 640*480 test_$mycachednum.jpg -i media.flv");

//save it 
 $mycachednum = $mycachednum + 5;

【讨论】:

  • 我试过了,但是没有用。由于 exec 不在循环中,而是在一个自动生成图片的语句中,因此“$mycachednum = $mycachednum + 5;”在执行过程中不会发生。参数 %d 使数字自动增加。我想知道是否有任何方法可以使用参数 %d 进行计算?只是让它改变。
猜你喜欢
  • 1970-01-01
  • 2021-01-13
  • 1970-01-01
  • 2012-10-06
  • 1970-01-01
  • 2023-03-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多