原創(chuàng)|使用教程|編輯:郝浩|2013-08-30 15:39:24.000|閱讀 538 次
概述:一個或是幾個作為普通的視頻源使用的TVideoGrabber組件,可以進(jìn)行混合來作為一個TVideoGrabber組件使用,這些普通的組件可以是視頻捕捉設(shè)備或是視頻剪輯。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
一個或是幾個作為普通的視頻源使用的TVideoGrabber組件,可以進(jìn)行混合來作為一個TVideoGrabber組件使用,這些普通的組件可以是視頻捕捉設(shè)備或是視頻剪輯。
這個混合的組件獨立于源組件,當(dāng)?shù)谝唤M組件持續(xù)的發(fā)送給它視頻幀時,它可以停止、預(yù)覽、錄制、暫停等······
源組件可被顯示到混合器組件中:
——作為一個基本的“復(fù)制”:在混合模式中的第二個組成部分接收和顯示從第一部分組件來的視頻。
——在需要的時候,將幾個視頻源切換成一個單一的來源。
——最為一個鑲嵌模式,比如說在同一時間用2x2布局顯示4個攝像機。
——交替顯示,比如4攝像機一個接一個的顯示
——一個馬賽克/交替布局,比如16個攝像機用4個交替的2 x2攝像機的馬賽克布局顯示。
結(jié)合馬賽克/交替混合
結(jié)合馬賽克和交替布局,比如通過打組交替成4 X 4的視頻窗口顯示的4個攝像機來顯示16個攝像機。
Mixer_AddToMixer組件參數(shù):
——第1個參數(shù)是源組件的UniqueId
——第2個參數(shù)在那個時候不使用,只是將它設(shè)置為0
——第3個參數(shù)是源將會顯示在的鑲嵌線(對于一個只是交替使用設(shè)置為0)
——第4個參數(shù)是源將會顯示在的馬賽克列(對于一個只是交替使用設(shè)置為0)
——第5個參數(shù)是顯示組號(對于一個只是交替使用設(shè)置為0)
——第6個參數(shù)是顯示組持續(xù)的毫秒時間(對于一個只有馬賽克設(shè)置為0)
——第 7參數(shù)應(yīng)設(shè)置為TRUE
—— 第8參數(shù)應(yīng)設(shè)置為TRUE
基本混合(第二個組件從第一組件接收到視頻幀)
在這個模式下,你有第二組組件,可以將第一個組件作為一個視頻源使用。
比如第一個組件使用預(yù)覽,第二組件獨立的開始/停止/暫停/恢復(fù)錄音的第一個組件,并進(jìn)行連續(xù)的預(yù)覽。
VideoGrabber1.VideoSource = vs_VideoCaptureDevice VideoGrabber1.StartPreview() VideoGrabber2.VideoSource = vs_Mixer VideoGrabber2.Mixer_AddToMixer (VideoGrabber1.UniqueID, 0, 0, 0, 0, 0, true, true); VideoGrabber2.StartPreview()
VideoGrabber2將會作為視頻源接收通過VideoGrabber1顯示和發(fā)送的視頻。
選擇混合視頻尺寸
默認(rèn)情況下,混合組件將會使用以下視頻大?。?/p>
——在開啟混合組件之前,如果源已經(jīng)開始,這個混合組件就會使用源尺寸。
——如果源尚未開始,混合組件會開始于320 x240。
在StartRecording StartPreview之前,在混合組件上調(diào)用UseNearestVideoSize來選擇視頻尺寸。
VideoGrabberMixer.VideoSource = vs_Mixer VideoGrabberMixer.UseNearestVideoSize (640, 480, true) VideoGrabberMixer.StartPreview()
在需要的時候,將幾個源轉(zhuǎn)換為一個
類似于用多于一個視頻源的基本混合,可以通過調(diào)用Mixer_Activation來轉(zhuǎn)換源,比如:
1、開啟第1個捕捉設(shè)備的預(yù)覽:
VideoGrabber1.VideoSource = vs_VideoCaptureDevice VideoGrabber2.VideoDevice = 0 VideoGrabber1.StartPreview()2、開啟第2個捕捉設(shè)備的預(yù)覽:
VideoGrabber2.VideoSource = vs_VideoCaptureDevice VideoGrabber2.VideoDevice = 1 VideoGrabber2.StartPreview()3、開啟將會使得預(yù)覽或記錄在混合模式中的第3個組件
VideoGrabber3.VideoSource = vs_Mixer int MixerId1 = VideoGrabber3.Mixer_AddToMixer (VideoGrabber1.UniqueID, 0, 0, 0, 0, 0, true, true) int MixerId2 = VideoGrabber3.Mixer_AddToMixer (VideoGrabber2.UniqueID, 0, 0, 0, 0, 0, true, true) VideoGrabber3.Mixer_Activation (MixerId2, false) // let' start with MixerId1 activated only VideoGrabber3.StartPreview()4、然后在輸入、激活和停用以及其他之間進(jìn)行切換:
VideoGrabber3.Mixer_Activation (MixerId1, false) VideoGrabber3.Mixer_Activation (MixerId2, true) or VideoGrabber3.Mixer_Activation (MixerId2, false) VideoGrabber3.Mixer_Activation (MixerId1, true)
>>>TVideoGrabber 下載
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都控件