0

我输入的视频在彩色和单色/灰色部分(仅包含亮度信息的帧)之间来回切换。ffmpeg 中是否有办法检测当前帧是彩色还是单色,是否可以使用此信息来更改过滤器的参数?

例如,我想应用 mpdecimate 过滤器,并且我希望它对彩色帧使用 50(每像素)的“hi”参数,对单色帧使用 20。

所以在伪代码中我想要类似的东西

-vf mpdecimate=hi=if(coloured,64*50,64*20)

但显然“有色”条件不是那样工作的。

这能以某种方式实现吗?

PS:关于单色帧的检测,我已经确定了两个具有相关功能的过滤器,但我无法在另一个过滤器中使用该信息:

  • "geq" 可以使用 cbsum(x,y) 和/或 crsum(x,y) 很好地了解帧颜色
  • “signalstats”可以使用属性“SATMAX”来了解帧的颜色级别

有没有办法在另一个过滤器中使用上述两个过滤器中任何一个的结果数量?

4

0 回答 0