2013-06-06 102 views
1

我需要使用DirectShow(C++)录制网络摄像头并将数据保存到文件。DirectShow摄像头录制

我真的不知道DirectShow是如何工作的,这是一个“舞台”(工作经验),但在学校我们没有研究它。

我认为最好的方式来实现,这可能是:

  1. 列表连接到计算机
  2. 视频设备选择正确的相机(将只有一个)
  3. 检索视频
  4. 将其保存到一个文件

现在有两个问题:

  1. 我在哪里可以找到一本好的参考书或我该如何开始?
  2. 保存的视频不应该太大,DirectShow提供了一种压缩方法吗?

我不会使用OpenCV,因为有时它不能正常工作(它没有找到相机)。 有没有可以提供帮助的高级包装?

编辑:该程序将不会有一个窗口,它将运行在由dll调用的背景中。

回答

2

我在哪里可以找到一本好的参考书或我该如何开始?

DirectShow introduction material

保存的视频应该不会太大,不会的DirectShow提供了一种方法来压缩呢?

是的,它提供了附加编解码器的能力,需要安装在系统中。这些通常是第三方编解码器(由于原因超出了简要答案的范围)。您可能想要记录到Windows Media文件中以不依赖于第三方编解码器。请访问MSDN:Choosing a Compression Filter