台灣最大程式設計社群網站
線上人數
1232
 
會員總數:240849
討論主題:186637
歡迎您免費加入會員
討論區列表 >> VB.NET >> 有關於WebCam的問題?
[ 變換順序 ]  
[我要回覆]
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
有關於WebCam的問題?
價值 : 50 QP  點閱數:7402 回應數:17

樓主

小鑫
初學者
111 18
5335 71
發送站內信

不好意思,想請問小鋪內的各位高手,小弟我現在正在作一個有關於WebCam的Project,目前,所碰到的問題是,當我想把兩台WebCam同時開啟時,會彈出一個"帶寬不足的"及"記憶体位置錯誤"視窗,要不然就是執行一段時間後,電腦就自己重新啟動。

還有一個也想請教各位高手,就是當我在要開啟第二支WebCam時,會彈出一個視訊來源的視窗來讓User來選視訊裝置,我想請問各位高手的是,要如何可以在不彈出這個視窗的情況下,我們可以先秀一張清單,來讓User自己來選自己所要用的視訊裝置,我找很多的要達到這樣功能的資料,不過他們都是用DirectShow這個來寫,我想了解是否可以用API來寫(因為,我本身是用API寫的),希望小鋪內的各位高手,能給小弟指點迷津,謝謝。

搜尋相關Tags的文章: [ WebCam ] , [ VB.NET ] ,
本篇文章發表於2007-07-26 14:55
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
回應

Power Hammer
捐贈 VP 給 強力鎯頭 檢舉此回應
http://www.blueshop.com.tw/board/show.asp?fumcde=FUM200501271723350KG&subcde=BRD20070724101312I4N#BRD20070724113109Y3D
參考看看囉
本篇文章回覆於2007-07-26 15:33
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

小鑫
檢舉此回應
感謝Power Hammer所提供的答案,不過,這個程式所顯示的結果(出現的結果訊息是:Microsoft WDM Image Capture(Win32))不是我所需要的結果,有可能是我題目敘說的不夠清楚,我現再敘說一次,假設,我的電腦中有兩個WebCam裝置,分別是Logitech牌及Microsoft牌,此時,我已經開了Microsoft牌的WebCam,此時,我要再開另一支WebCam時,會彈出一個視訊來源的視窗來讓User來選視訊裝置,因為,我還沒有開啟Logitech牌的WebCam,所以,我在選擇視訊的來源上會看到原本Microsoft牌的WebCam裝置及Logitech的QuickCam for Notebooks Deluxe這個視訊裝置。目前,我想要的方式是,在我要準備開啟WebCam時,我會先有一個清單列出,目前我的電腦有幾台WebCam裝置,像是以上面的例子來說,就是會列出Microsoft牌及Logitech牌的WebCam裝置,來讓User選擇所要使用的WebCam裝置。

不知以上這樣的敘說是否有比較清楚。
本篇文章回覆於2007-07-30 14:38
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

Power Hammer
捐贈 VP 給 強力鎯頭 檢舉此回應
我的機器除了Microsoft WDM Image Capture (Win32)之外
也會列出 BisonCam, USB2.0 Vfw (這是我Notebook內建的)
您的 M$ 跟 Logitech 不會被列出來嗎 ?
本篇文章回覆於2007-07-30 17:33
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

小鑫
檢舉此回應
嗯,我的只有列出Microsoft WDM Image Capture (Win32)而已,請問一下大大知道可能的原因嗎,謝謝。
本篇文章回覆於2007-07-30 17:53
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
回應

Power Hammer
捐贈 VP 給 強力鎯頭 檢舉此回應
裝置是停用中嗎 ?
不過理論上,停用也列的出才對
本篇文章回覆於2007-07-30 18:06
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
作者回應

小鑫
檢舉此回應
裝置沒有停用中,不過我每次都是只有抓到Microsoft WDM Image Capture (Win32)這個而己,會是作業系統的關系嗎,我用的是win2000專業版。
本篇文章回覆於2007-07-30 20:09
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
作者回應

小鑫
檢舉此回應
抓裝置那段,我是這樣寫的:

Private Sub LoadDeviceList()

Dim strName As String = Space(128)
Dim strVer As String = Space(128)
Dim bReturn As Boolean
Dim x As Integer = 0
Dim strDevice As String

Do

bReturn = capGetDriverDescriptionA(x, strName, 128, strVer, 128)

If bReturn Then

strDevice = Microsoft.VisualBasic.Left(strName, InStr(strName, vbNullChar) - 1) & " " & Microsoft.VisualBasic.Left(strVer, InStr(strVer, vbNullChar) - 1)

lstDevices.Items.Add(strDevice )

End If

x += 1

Loop Until bReturn = False


End Sub
本篇文章回覆於2007-07-30 20:54
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
回應

Power Hammer
捐贈 VP 給 強力鎯頭 檢舉此回應

參考看看囉


本篇文章回覆於2007-07-30 21:27
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
9樓
回應

Power Hammer
捐贈 VP 給 強力鎯頭 檢舉此回應
更正 #8
第17行
+1 要拿掉
本篇文章回覆於2007-07-30 21:30
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
10樓
作者回應

小鑫
檢舉此回應
Power Hammer 不好意思,我還是只有秀出Microsoft WDM Image Capture (Win32)這個而己,沒有秀出其他裝置出來,不知道是不是小弟有地方設定不對,造成只有秀出Microsoft WDM Image Capture (Win32)這個而己。
本篇文章回覆於2007-07-30 22:28
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
11樓
回應

Power Hammer
捐贈 VP 給 強力鎯頭 檢舉此回應
Sorry ! 若您開新專案
貼 #8 的 Code 上去
還是不行, 那...我也不知道耶..
本篇文章回覆於2007-07-30 22:37
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
12樓
回應

Power Hammer
捐贈 VP 給 強力鎯頭 檢舉此回應
您宣告的部份跟我的Code一樣嗎 ?
我是用 WinXP OS
本篇文章回覆於2007-07-30 22:38
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
13樓
作者回應

小鑫
檢舉此回應
嗯,我開新的專案來做,還是一樣的結果,這次,我的開發的作業系統環境是winxp。
本篇文章回覆於2007-07-30 23:23
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
14樓
作者回應

小鑫
檢舉此回應
請問一下各位高手,有人知道問題是出在那裡嗎,給小弟指點迷津,謝謝~~~~
本篇文章回覆於2007-07-31 21:23
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
15樓
最有價值解答

Power Hammer
捐贈 VP 給 強力鎯頭 檢舉此回應
覺得怪 , So 找了台 USB 的 CCD 裝上去
如您所說 , 列出來沒它 , 只列的出我原本 Notebook 內建的 Cam ,原因不詳 @@

底下是以前個人在 VB6 的作法 , 已轉成 .Net , 您參考看看

放個 PictureBox 跟 Button


Button1 會叫出 "視訊來源" 的設定 , 其中 [截取來源] 的 Tab 裡面就有選擇裝置
看降子 O 不 OK 囉 !

本篇文章回覆於2007-08-01 00:11
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
[ 變換順序 ]   

回覆
如要回應,請先登入.