我正在使用两个自定义推送过滤器将音频和视频(未压缩的 RGB)注入 DirectShow 图形。我正在制作一个视频捕获应用程序,所以我想在帧进入时对其进行编码并将它们存储在一个文件中。
到目前为止,我一直使用 ASF Writer 将输入编码为 WMV 文件,但渲染器似乎太慢而无法处理高分辨率输入(例如 1920x1200x32)。至少,FillBuffer()
似乎只能处理大约 6-15 FPS,这显然不够快。
我已经尝试增加 in 的cBuffers
计数DecideBufferSize()
,但这只会将问题推到后面,当然。
我有哪些加快流程的选择?通过 DirectShow 进行实时高分辨率编码的正确方法是什么?我最终想得到一个 WMV 视频,但也许这必须是一个后期处理步骤。