Windows媒体基础使用原始图像对视频进行编码

时间:2012-10-16 15:25:00

标签: c++ directshow rgb screen-capture ms-media-foundation

我正在开展一个项目,要求我录制网络摄像头,麦克风和屏幕。我有网络摄像头录制,audio is a work in progress,我偶然发现了CMonitor wrapper(我做了一些小修改),以便在指定的监视器上抓取桌面的RGB图像(如果有多个监视器)。

如何将原始RGB帧推入windows media foundation以编码为视频文件?我目前的视频编码使用的是this msdn sample的略微修改版本,如果它比编写新的类处理程序更容易修改。

或者,或许有某种媒体基础路径来记录我不知道的屏幕(这是可能的,我不是一个win32程序员那么棒)?

2 个答案:

答案 0 :(得分:1)

在Windows SDK示例中找到PushSource,这样做。

答案 1 :(得分:0)

检查Desktop Duplication API是否有捕获桌面。 Media Foundation提供两种编码解决方案,MF Sink Writer用于简单编码,Media Session用于更灵活地控制媒体管道。首先阅读此overview page