原創|使用教程|編輯:郝浩|2013-08-20 14:48:19.000|閱讀 678 次
概述:TVideoGrabber是一款支持包括C#、.NET、VB.NET、C++、Delphi、C++Builder和ActiveX平臺在內的視頻處理控件,不僅可以捕捉視頻,還可以作為多媒體播放器。本文將詳細說明在TVideoGrabber中視頻捕捉設備的使用相關問題。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
選擇一個視頻捕捉設備
首先設置 VideoSource = vs_VideoCaptureDevice來選擇一個視頻捕捉設備作為一個視頻源。
通過指定VideoDevice屬性來選擇當前的視頻捕捉設備,VideoDevice屬性是在VideoDevices屬性中的一個索引,而VideoDevices屬性包含了VideoDevicesCount項目。
也可以用編程的方式通過它的名字,主要是因為它的名字會出現在VideoDevices列表中,選擇視頻捕捉設備,比如:
VideoGrabber.VideoDevice = VideoGrabber.VideoDeviceIndex ("Microsoft DV Camera and VCR - Sony DV VCR Camcorder DV")
當前視頻捕捉設備的名字可以通過VideoDeviceName報告,當選擇了一個視頻捕捉設備,它設備相關的屬相將會從注冊表重新加載,同時OnVideoDeviceSelected事件也會發生。
注意:當組件處于非活動狀態時,通過調用 ResetVideoDeviceSettings,這個注冊表設置可以重置為其默認值。這個使用到的機會很少,但是如果當前設置顯示一個黑色的視頻時,就會非常的有用了。
確定幾個具有相同品牌和型號的視頻捕捉設備
當使用幾個具有相同品牌和型號的視頻捕捉設備時,但是這些在VideoDevices列表中無法區分時,就可以使用VideoDevicesId列表代替VideoDevices列表屬性。
比如:
VideoGrabber.VideoDevice = VideoGrabber.FindIndexInListByName (VideoGrabber.VideoDevicesId, "devicepnpavcjvcgr-dvl357egcamcorderdvb301b0000588800065e8773d-8f56-11d0-a3b9-00a0c9223196globalMicrosoft DV Camera and VCR", false, true);
連接/斷開視頻捕捉設備
當連接/斷開視頻捕捉設備時,OnDeviceArrivalOrRemoval事件就會發生。這個時間將會報告VideoDevices列表中的視頻捕獲設備的名稱和索引。
在視頻捕獲設備斷開后,IsVideoDeviceConnected就會返回一個true,知道設備被重新的連接上。
如果相關設備用于預覽或是記錄,當設備斷開連接的時候,OnDeviceLost事件就會發生,也就會停止預覽或是記錄。
當一個視頻捕獲設備已斷開連接,它不會從VideoDevices列表被刪除,以防止管理視頻捕捉設備的轉移索引的復雜性,并且這個視頻捕捉器的索引在當前移除設備的索引以上。
當tvideograbber運行時,遵循以下規則:
通過測試IsVideoDeviceConnected (DeviceIndex),你可以檢索任何視頻捕獲設備(不管是當前聯通的或是沒有聯通的)。
PID和VID識別的USB視頻捕捉設備
有PID anv VID 標識符的USB視頻捕捉設備包含在VideoDevicesId列表中,在這個列表和VideoDevices列表有一樣項目的數量。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都控件