2011-08-31 13 views
2

我正在嘗試爲我的應用程序構建一個關鍵部分,我需要能夠僞造一個虛擬凸輪視頻流。我想作爲虛擬網絡攝像機僞裝的視頻流通過我的PC進行流式傳輸,在那裏我可以從我的網絡攝像頭或我的硬盤中設置視頻源。總結一下,我可以在WPF中設置爲MediaElement.SourceProperty or Image.Source是否有可能將視頻流僞造成在Skype,Lync等中可見的虛擬凸輪?

我見過Vivek's Vcam, a directshow filter here in tmhare.com這看起來好像和我要找的東西非常相關。但是我找不到用VS2010編譯它的方法,我也不知道如何處理它。我想我需要改變輸入引腳,但是如何?總之,我試圖構建一個需要像ManyCam的小版本一樣工作的部分代碼。我正在構建一個WPF應用程序,用於從64位PC流式傳輸源代碼。

我也希望得到一些示例代碼過濾器,因爲我還差點忘了我所知道C++因爲DirectShow過濾器需要在C++來編寫一切......

感謝一切!


編輯:

enter image description here

錯誤,我得到了;

1 IntelliSense: identifier "REFERENCE_TIME" is undefined c:\program files (x86)\microsoft sdks\windows\v7.0a\include\dvdmedia.h 307 5 // and 6 more 
6 IntelliSense: not a class or struct name c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.h 8 22 Filters 
7 IntelliSense: identifier "CUnknown" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.h 14 12 Filters 
8 IntelliSense: identifier "IFilterGraph" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.h 17 5 Filters 
9 IntelliSense: not a class or struct name c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.h 23 28 Filters 
10 IntelliSense: not a class or struct name c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.h 23 50 Filters 
11 IntelliSense: not a class or struct name c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.h 23 74 Filters 
12 IntelliSense: identifier "IBaseFilter" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.h 37 25 Filters 
13 IntelliSense: identifier "Quality" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.h 37 48 Filters 
14 IntelliSense: identifier "AM_MEDIA_TYPE" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.h 42 41 Filters // and 7 more 
17 IntelliSense: identifier "IMediaSample" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.h 60 24 Filters 
18 IntelliSense: identifier "IMemAllocator" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.h 61 30 Filters 
19 IntelliSense: identifier "ALLOCATOR_PROPERTIES" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.h 61 57 Filters 
20 IntelliSense: identifier "CMediaType" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.h 62 34 Filters 
21 IntelliSense: identifier "CMediaType" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.h 63 41 Filters 
22 IntelliSense: identifier "CMediaType" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.h 64 32 Filters 69 5 Filters 
24 IntelliSense: identifier "CCritSec" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.h 71 5 Filters 
25 IntelliSense: identifier "IReferenceClock" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.h 72 5 Filters 
26 IntelliSense: cannot open source file "streams.h" c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 4 1 Filters 
27 IntelliSense: identifier "CUnknown" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 13 1 Filters 
28 IntelliSense: identifier "ASSERT" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 15 5 Filters 
29 IntelliSense: identifier "CUnknown" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 16 5 Filters 
30 IntelliSense: identifier "punk" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 16 15 Filters 
31 IntelliSense: "CSource" is not a nonstatic data member or base class of class "CVCam" c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 21 5 Filters 
32 IntelliSense: identifier "NAME" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 21 13 Filters 
33 IntelliSense: expected a ')' c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 21 32 Filters 
34 IntelliSense: identifier "ASSERT" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 23 5 Filters 
35 IntelliSense: identifier "CAutoLock" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 24 5 Filters 
36 IntelliSense: identifier "m_cStateLock" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 24 26 Filters 
37 IntelliSense: identifier "m_paStreams" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 26 5 Filters 
38 IntelliSense: identifier "CSourceStream" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 26 20 Filters 
39 IntelliSense: expected an expression c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 26 36 Filters 
40 IntelliSense: expected a ';' c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 26 38 Filters 
41 IntelliSense: identifier "IAMStreamConfig" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 33 24 Filters 
42 IntelliSense: identifier "IKsPropertySet" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 33 60 Filters 
43 IntelliSense: identifier "m_paStreams" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 34 16 Filters 
44 IntelliSense: name followed by '::' must be a class or namespace name c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 36 16 Filters 
45 IntelliSense: identifier "IMediaSample" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 74 33 Filters 
46 IntelliSense: identifier "IBaseFilter" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 99 34 Filters 
47 IntelliSense: identifier "Quality" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 99 57 Filters 
48 IntelliSense: identifier "CMediaType" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 107 41 Filters // and 3 more 
51 IntelliSense: identifier "IMemAllocator" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 166 39 Filters 
52 IntelliSense: identifier "ALLOCATOR_PROPERTIES" is undefined c:\users\umutto\desktop\projects\src\directshowwizardinstaller\vcam\vcam\filters\filters.cpp 166 62 Filters 
+1

你收到了什麼編譯錯誤?編譯完成後,您需要註冊它(regsvr32),之後它將顯示爲系統上的捕獲設備。 – Ralf

+0

感謝您的回覆!我可以使用zip文件附帶的預編譯的ax文件來完成註冊部分,這裏沒有問題。但我有太多的錯誤,他們大多數都與缺少directshow庫文件有關(我已經安裝了Windows SDK,我可以在程序文件中看到它,但我不知道如何將它引用到VC++中的解決方案中),VS2010希望我在開啓後轉換解決方案,而不是給我一些警告。我用相關的警告和錯誤更新我的問題。抱歉缺乏信息。 – umutto

+1

如果你有斧頭,你不需要編譯它,除非你想改變源代碼,你可以註冊它並使用GraphEdit或GraphStudio測試捕獲源。順便說一句,intellisense錯誤不是編譯錯誤:一旦你正確地設置你的IDE以具有Windows SDK,DirectShow基類等的include,lib和bin路徑,它們將被解決。在VS2010中,這可以使用屬性管理器編輯屬性表。 – Ralf

回答

1

爲了使用directshow過濾器,您需要安裝Windows SDK並配置BaseClasses解決方案。 看:C:\Program Files\Microsoft SDKs\Windows\v7.0\Samples\multimedia\directshow\baseclasses

之後,您需要將BaseClasses頭文件和libs目錄添加到您的項目屬性。

現在您的項目將知道DirectShow類,您可以開始更改VCam源過濾器引腳。

相關問題