2013-06-06 100 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