【问题标题】:Video stream analysis on the fly - advise?动态视频流分析 - 建议?
【发布时间】:2016-07-29 13:46:10
【问题描述】:

我计划开发一个简单的解决方案,使我能够即时执行非常基本的视频流分析。我以前从未做过类似的事情,因此这是一个非常笼统和开放的问题。主要重点是检查流是否正常运行,例如 - 冻结帧、黑屏以及音频是否存在。同步超出范围。我阅读了 OpenCV 和 Xuggler 等开放库,但它们似乎比我的需要更复杂。 FFmpeg 能够检测黑屏,但不能即时检测。

还有其他我可以研究的开放库吗?你能给我什么建议吗?我正在考虑使用 Java 或 Python。或者两者兼而有之。解决方案的效率超出了范围,我现在只关注冻结帧和黑屏检测。

欢迎任何建议!

最好的问候, 彼得

【问题讨论】:

  • 使用 OpenCV,您可以在几行代码中毫无问题地检测冻结帧和黑屏,但对于音频部分,您需要一些不同的东西。 OpenCV 在 python 和 java 中可用。
  • “FFmpeg 无法即时检测黑屏”是什么意思?

标签: opencv video ffmpeg video-streaming xuggler


【解决方案1】:

可以使用ffmpeg 即时分析直播。例如:

ffmpeg -i <input> -filter:v blackdetect=d=9 -filter:a silencedetect=d=9 -t 10 -f null /dev/null

检查 10 秒中的 9 秒是黑色还是静音。重复。

在最新版本的 FFmpeg 中,您可以使用 freezedetect 过滤器来检测不改变的帧。

如果您需要不同的指标,您可以在不同时间截取两张屏幕截图并与imagemagick 进行比较:

compare -metric <metric> <in1> <in2> <diff>

【讨论】:

  • 使用 freezedetect 过滤器检测重复帧
猜你喜欢
  • 2010-11-06
  • 2012-12-26
  • 2020-07-25
  • 2014-02-06
  • 1970-01-01
  • 2012-01-13
  • 2018-11-13
  • 1970-01-01
  • 2013-09-25
相关资源
最近更新 更多