2011-11-07 213 views
6

我正在創建Windows視頻捕獲應用程序,並使用DirectShow進行捕獲。隨着每一幀的進入,我想把它作爲一個原始的RGB位圖抓到一個緩衝區中,此時我的代碼將執行我需要的任何處理。DirectShow - 獲取視頻幀

我一直在尋找類似的東西我想要做的樣品,和我到處看看網上,人們建議您使用的IMediaDet和/或ISampleGrabber接口做一幀一幀捕獲。不幸的是,兩者都被棄用,甚至沒有在最新版本的Windows SDK中。

什麼是在DirectShow中進行逐幀捕獲的最佳(現代)方法?如果沒有,我是否應該使用一個不同的庫,以便逐幀捕獲?

+0

[ISampleGrabber的可能重複過時? ](http://stackoverflow.com/questions/6124629/isamplegrabber-deprecated) –

回答

5

Sample Grabber幾年前就被棄用了,這是DirectShow開發實際停止後的幾年。也就是說,使用Sample Grabber作爲您建議的方法閱讀,它將很適合您。

你還需要的僅僅是複製定義,詮釋你的源代碼,詳情請參閱:

+0

我不知道DirectShow開發合作完全停下來。是否有一個我應該使用的新的,不同的庫? –

+1

在過去的8年裏,'DirectShow'中幾乎沒有新的東西。 「媒體基金會」旨在成爲繼任者,但到目前爲止,即使在最新的Windows版本中,它也沒有達到「DirectShow」的威力,甚至沒有談到以前版本的兼容性。也就是說,'DirectShow'仍然是多媒體API的完美選擇。 –