【问题标题】:Reporting duplicated frames with FFmpeg使用 FFmpeg 报告重复的帧
【发布时间】:2018-12-18 18:54:59
【问题描述】:

我正在寻找一种方法来报告(不仅仅是检测和删除)FFmpeg 检测到的重复视频帧 - 类似于您可以打印出 blackdetect、cropdetect、silencedetect 等的方法。

例如:

ffmpeg -i input.mp4 -vf blackdetect -an -f null - 2>&1 | grep blackdetect > output.txt

输出类似:

[blackdetect @ 0x7f8032f03680] black_start:5.00501 black_end:7.00701 black_duration:2.002

但据我所知,没有“dupedetect”过滤器,所以我正在寻找任何想法/解决方法来了解帧重复的位置。

【问题讨论】:

标签: ffmpeg ffprobe


【解决方案1】:

在命令行中尝试-vp mpdecimate

ffmpeg -i input.mp4 -vf mpdecimate -loglevel debug -an -f null - 2>&1 | grep 'drop_count:\d' > output.txt

输出示例行:

[Parsed_mpdecimate_0 @ 0x7fbbfa210380] lo:0<2653 lo:0<1326 lo:0<1326 drop pts:101101 pts_time:4.21254 drop_count:1

【讨论】:

  • 谢谢 - 虽然 decimate 和 fieldmatch 视频过滤器似乎没有打印出它检测到重复的位置,只是在输出视频中删除它们。
  • 尝试设置-loglevel debug并删除grep
  • 非常感谢 - 我忘记了调试级别。这是输出的内容:pastebin.com/Rr12Sn1Y 在我使用的测试中,第三帧在整个过程中随机重复,您可以看到过滤器在调试中丢帧的位置。我认为这会奏效!
  • @Calculon 注意这是模糊匹配;如果您希望精确匹配,则需要相应地设置高过滤器和低过滤器选项。
  • 是的,即使是标准对于我的目的来说已经很有效了,但我可能会对其进行调整。我收到了需要报告的带有随机欺骗帧的混合文件,这肯定会找到它们。
猜你喜欢
  • 1970-01-01
  • 2016-09-02
  • 2011-09-29
  • 2014-04-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多