2010-01-03 65 views
2

我做了一個簡單的圖形寫入MKV文件。但我不想使用文件編寫器。我想使用SampleGabber並使用簡單的程序來獲取流。問題是,我從什麼,但Matroska的複用器獲取數據!(我該怎麼辦?如何在DirectShow中使用SampleGrabber和Matroska Muxer?

VirtualCamera - x264 - Matroska Muxer - SampleGraber - Null Renderer http://superior0.narod.ru/CO/MkvAndSampleGrabber.jpg

所以我的問題是如何在DirectShow中有Matroska的複用器使用SampleGrabber?

+0

順便說一句:我使用VirtualCamera從這裏http://www.soundmorning.com/download.php – Rella 2010-01-03 17:59:14

回答

3

嘗試實現你自己的自定義渲染器而不是SampleGrabber。

+0

你可以分享一些資源如何做這樣的事嗎? – Rella 2010-01-28 11:55:14

+1

基本上你創建自己的類派生自CBaseVideoRenderer。然後你必須實現你自己的:DoR將在每個新樣本過濾器接收時調用的enderSample方法。 要將渲染器添加到圖表: CMyVideoRenderer * pRenderer =新CMyVideoRenderer(NULL,&hr); 但是CComPtr pBaseTarget = pRenderer; m_pGB-> AddFilter(pBaseTarget,L 「MYRENDERER」)); – AndreiM 2010-02-01 10:51:19