我发现了很多如何使用空复用器防止将实际输出写入磁盘,从而节省磁盘空间和执行写入操作所需的所有时间/工作。我对一些略有不同的事情感兴趣:我想对一组不同的过滤器链的性能进行基准测试/比较独立的编码器。换句话说,我想尝试找到一个空编码器,而不是空复用器:其中来自过滤器链的帧输出被转储到任何地方,而不是转储到编码器中。
如果我的参考链是:
input -> filter1 -> filter2 -> filterN -> encoder -> muxer
我能找到的所有示例都向我展示了如何做到这一点:
input -> filter1 -> filter2 -> filterN -> encoder -> NULL
但我真正想做的是这:
input -> filter1 -> filter2 -> filterN -> NULL
答案1
这将是
ffmpeg -i input `bench@pre=start,filter1,filter2,filter3,bench@post=stop` -f null -
首先台式过滤器启动时钟。第二个测量停止时间并打印每帧的时间,以及累计平均值和最大/最小时间。