0
我有4個獨立的視頻設備連接到它們各自的視頻渲染器,我想在4個獨立的窗口/面板中顯示視頻渲染器。在directshow.net中獲取多個視頻渲染器在c#
隨着
IVideoWindow GetSecondRenderer()
{
IEnumFilters enumFilters;
ArrayList filtersArray = new ArrayList();
IFilterGraph filterGraph = (IFilterGraph)m_FilterGraph;
filterGraph.EnumFilters(out enumFilters);
IBaseFilter[] filters = new IBaseFilter[1];
IntPtr fetched = new IntPtr();
while (enumFilters.Next(1, filters,fetched) == 0)
{
IVideoWindow ivw = filters[0] as IVideoWindow;
if (ivw != null)
{
IntPtr outPtr = new IntPtr();
ivw.get_Owner(out outPtr);
if (outPtr == IntPtr.Zero)
return ivw;
}
}
return null;
}
,然後使用videoWindow2 = GetSecondRenderer();代碼我設法得到2個視頻來顯示,但由於我還是很新的,我似乎無法枚舉其他2個視頻渲染器。有人可以幫助展示如何修改這個能夠獲得其他2? 謝謝。
使它成爲每個相機的不同方法,因爲這更容易,但是當我想要做更有趣的事情時,這樣做會很好。謝謝 – 2011-03-16 12:05:19