專利名稱:通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器。本發(fā)明屬于圖像通信技術(shù)領(lǐng)域,具體
涉及一種能夠?qū)⒏鞣N視頻監(jiān)控聯(lián)網(wǎng)平臺(tái)的圖像進(jìn)行統(tǒng)一調(diào)度并轉(zhuǎn)碼的設(shè)備。
背景技術(shù):
據(jù)統(tǒng)計(jì)在2008年之前我國(guó)的視頻監(jiān)控應(yīng)用主要集中在政府部門和金融、公安、交通、電力等特殊部門及行業(yè)。其中,政府部門和金融行業(yè)分別占據(jù)了 20.9%和20.6%的市場(chǎng)份額。然而,隨著社會(huì)信息化的進(jìn)步,越來(lái)越多的行業(yè)和領(lǐng)域視頻監(jiān)控的需求大量增加,至今,視頻監(jiān)控開(kāi)始從銀行、交通等個(gè)別領(lǐng)域向多領(lǐng)域延伸,由傳統(tǒng)的安防監(jiān)控向管理監(jiān)控和生產(chǎn)經(jīng)營(yíng)監(jiān)控發(fā)展。 視頻監(jiān)控需求市場(chǎng)不斷擴(kuò)大,除了傳統(tǒng)行業(yè),企業(yè)和個(gè)人市場(chǎng)也正在興起,包括中
國(guó)經(jīng)濟(jì)最活躍的中小企業(yè)和個(gè)人用戶。視頻監(jiān)控的應(yīng)用前景已經(jīng)日益呈現(xiàn)出來(lái)。與此同時(shí),
用戶的要求也越來(lái)越高,其中最突出的就是要求實(shí)現(xiàn)對(duì)大量視頻數(shù)據(jù)實(shí)時(shí)、無(wú)地域、無(wú)阻礙
傳輸,從而達(dá)到資源共享,為各級(jí)管理人員和決策者提供方便、快捷、有效的服務(wù)。 而目前很大一部分視頻監(jiān)控系統(tǒng),往往僅局限在一個(gè)本地網(wǎng)內(nèi)的,即整個(gè)系統(tǒng)是
在一個(gè)市、一個(gè)縣或有限的一段距離之內(nèi)進(jìn)行監(jiān)控資源聯(lián)網(wǎng)。而隨著社會(huì)信息化的發(fā)展,
越來(lái)越多應(yīng)用視頻監(jiān)控的政府部門和行業(yè),需要全省或全國(guó)聯(lián)網(wǎng)辦公,進(jìn)而也要求視頻監(jiān)
控系統(tǒng)實(shí)現(xiàn)跨省跨區(qū)聯(lián)動(dòng),這就要求在現(xiàn)有基礎(chǔ)上對(duì)已部署的地方平臺(tái)進(jìn)行更大規(guī)模的聯(lián)
網(wǎng)。由于地方平臺(tái)的構(gòu)建存在區(qū)域性差異,在設(shè)備的選型和平臺(tái)的選型都是因地而異。為
了在大規(guī)模聯(lián)網(wǎng)中能夠充分利用各地方平臺(tái)的現(xiàn)有資源,保護(hù)既有投資,需要對(duì)地方設(shè)備
和平臺(tái)差異盡可能的做兼容處理。 由于視頻監(jiān)控設(shè)備和平臺(tái)的差異,要進(jìn)行視頻聯(lián)網(wǎng)就必須要能夠?qū)ΜF(xiàn)有的地方平臺(tái)進(jìn)行統(tǒng)一調(diào)度和查看
發(fā)明內(nèi)容
有鑒于此,本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種支持多種視頻監(jiān)控平臺(tái)統(tǒng)一調(diào)
度控制的通用視頻轉(zhuǎn)碼器,能從根本上解決異構(gòu)視頻監(jiān)控平臺(tái)的聯(lián)網(wǎng)問(wèn)題,降低大規(guī)模視
頻聯(lián)網(wǎng)的難度和減少重復(fù)建設(shè)的成本。 本發(fā)明的目的是通過(guò)以下技術(shù)方案來(lái)實(shí)現(xiàn)的 —種通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器,包括接口單元,用于通過(guò)網(wǎng)絡(luò)與既有視頻監(jiān)控平臺(tái)相連接;以及,分別通通過(guò)總線與所述接口單元連接的
系統(tǒng)控制模塊; 資源采集模塊,用于通過(guò)所述接口單元從既有視頻監(jiān)控平臺(tái)的客戶端內(nèi)存頁(yè)面中讀取監(jiān)控資源節(jié)點(diǎn)數(shù)據(jù); 資源選擇模塊;用于在所述系統(tǒng)控制模塊的控制指令下,切換與該通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器連接的既有視頻監(jiān)控平臺(tái)的客戶端;
視頻采集模塊,用于既有視頻監(jiān)控平臺(tái)的客戶端顯示視頻緩存中截取視頻數(shù)據(jù);
和, DSP編碼模塊,用于將所述視頻采集模塊采集到的RGB或YUV視頻數(shù)據(jù)進(jìn)行H. 264 編碼,然后同步輸出模擬視頻信號(hào)和H. 264格式數(shù)字視頻碼流。 優(yōu)選的,所述系統(tǒng)控制模塊采用模擬外掛技術(shù),以控制所述資源選擇模塊動(dòng)作。
上述技術(shù)方案中,通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器從的現(xiàn)實(shí)實(shí)現(xiàn)可以采用如下結(jié)構(gòu),物 理層次上劃分為硬件(物理)和軟件(邏輯)兩部分,硬件部分包括CPU、 DSP、存儲(chǔ)等,軟 件部分包括資源采集、圖像采集、資源管理、系統(tǒng)控制等。
其中, 與現(xiàn)有技術(shù)相比本發(fā)明的優(yōu)點(diǎn)在于,能從根本上解決異構(gòu)視頻監(jiān)控平臺(tái)的聯(lián)網(wǎng)問(wèn) 題,降低大規(guī)模視頻聯(lián)網(wǎng)的難度和減少重復(fù)建設(shè)的成本。
圖1是本發(fā)明通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器一種實(shí)施例的結(jié)構(gòu)示意圖; 圖2是本發(fā)明通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器一種實(shí)施例的通用轉(zhuǎn)碼器轉(zhuǎn)碼邏輯圖; 圖3是本發(fā)明通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器一種實(shí)施例的物理結(jié)構(gòu)圖; 圖4是本發(fā)明通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器一種實(shí)施例跨進(jìn)程內(nèi)存訪問(wèn)的示意圖; 圖5是本發(fā)明通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器一種實(shí)施例跨進(jìn)程資源讀取流程圖; 圖6是本發(fā)明通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器一種實(shí)施例跨進(jìn)程資源節(jié)點(diǎn)定位流程圖; 圖7是本發(fā)明通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器一種實(shí)施例進(jìn)行H. 264編碼的流程圖。
具體實(shí)施例方式
下面結(jié)合附圖和較佳的實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明。 如圖1和圖2所示, 一種通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器,包括接口單元,用于通過(guò)網(wǎng)絡(luò) 與既有視頻監(jiān)控平臺(tái)相連接;以及,分別通通過(guò)總線與所述接口單元連接的系統(tǒng)控制模塊; 資源采集模塊,用于通過(guò)所述接口單元從既有視頻監(jiān)控平臺(tái)的客戶端內(nèi)存頁(yè)面中讀取監(jiān)控 資源節(jié)點(diǎn)數(shù)據(jù);資源選擇模塊;用于在所述系統(tǒng)控制模塊的控制指令下,切換與該通用視 頻監(jiān)控平臺(tái)轉(zhuǎn)碼器連接的既有視頻監(jiān)控平臺(tái)的客戶端;視頻采集模塊,用于既有視頻監(jiān)控 平臺(tái)的客戶端顯示視頻緩存中截取視頻數(shù)據(jù);和,DSP編碼模塊,用于將所述視頻采集模塊 采集到的RGB或YUV視頻數(shù)據(jù)進(jìn)行H. 264編碼,然后同步輸出模擬視頻信號(hào)和H. 264格式 數(shù)字視頻碼流。 資源節(jié)點(diǎn),即包括既有視頻監(jiān)控平臺(tái)的客戶端,的獲取因?yàn)榇嬖诳邕M(jìn)程資源訪問(wèn) 問(wèn)題,需要用到進(jìn)程代碼注入技術(shù)。此處我們采用直接代碼注入方式,是最復(fù)雜,但是也最 有效的方法。我們知道,在Windows9x系統(tǒng)下,從80000000h到BFFFFFFFh是1G字節(jié)對(duì)所 有進(jìn)程可見(jiàn)的進(jìn)程共享空間、進(jìn)程共享DLL空間和內(nèi)存映射文件空間,這里可以作為進(jìn)程 通信傳遞數(shù)據(jù)使用。因此,我們可以通過(guò)調(diào)用VirtualAlloc()在該區(qū)域分配一塊所有進(jìn)程 可見(jiàn)的空間,或者是調(diào)用CreateFileM即ping()與M即View0fFileEx()在該區(qū)域建立一塊 所有進(jìn)程可見(jiàn)的內(nèi)存文件映射共享空間,然后將目標(biāo)數(shù)據(jù)利用WriteProcessMemory()寫 入,實(shí)現(xiàn)跨進(jìn)程資源讀取的目的。對(duì)于Windows2000以后的系統(tǒng)下,80000000h-FFFFFFFFh為2G系統(tǒng)內(nèi)核空間,在用戶態(tài)Ring3下不可訪問(wèn),要訪問(wèn)這個(gè)區(qū)域必須進(jìn)入到核心態(tài) Ring0,因此需要通過(guò)調(diào)用VirtualAllocEx()在宿主進(jìn)程分配一塊該進(jìn)程的私有空間,調(diào) 用WriteProcessMemory ()將目標(biāo)數(shù)據(jù)指針寫入該地址空間,再通過(guò)Windows消息機(jī)制將宿 主進(jìn)程節(jié)點(diǎn)數(shù)據(jù)寫入該地址,最后通過(guò)ReadProcessMemory()從目標(biāo)數(shù)據(jù)指針讀取宿主進(jìn) 程節(jié)點(diǎn)數(shù)據(jù)。如圖4跨進(jìn)程內(nèi)存訪問(wèn)所示。本發(fā)明中的實(shí)現(xiàn)首先在目標(biāo)進(jìn)程中申請(qǐng)內(nèi)存,將 資源節(jié)點(diǎn)的文字復(fù)制到這塊內(nèi)存,然后再把這塊內(nèi)存的數(shù)據(jù)復(fù)制到本進(jìn)程的一塊內(nèi)存中, 將資源節(jié)點(diǎn)收集提供給管理模塊,如圖5跨進(jìn)程資源讀取流程;定位則通過(guò)向目標(biāo)進(jìn)程發(fā) 送定位消息后,讀取資源在目標(biāo)進(jìn)程窗口中的位置坐標(biāo)實(shí)現(xiàn),如圖6跨進(jìn)程資源節(jié)點(diǎn)定位 流程。 如圖7所示,圖像數(shù)據(jù)的獲取通過(guò)鉤子技術(shù)攔截DirectShow繪圖表面數(shù)據(jù),通過(guò) 系統(tǒng)控制模塊控制DSP編碼芯片對(duì)YUV數(shù)據(jù)進(jìn)行H. 264編碼,并提供網(wǎng)絡(luò)傳輸。
其中,DSP編碼芯片采用TI公司的數(shù)字媒體處理器Davinci TMS320DM6446DSP編 碼芯片。H. 264編碼器結(jié)構(gòu)輸入的圖像以宏塊為單位進(jìn)入編碼器中,根據(jù)圖像變化的快慢 選擇幀內(nèi)或幀間預(yù)測(cè)編碼。如果選擇幀內(nèi)預(yù)測(cè)編碼,首先判斷當(dāng)前待編碼塊中是否包含很 多的細(xì)節(jié),再?zèng)Q定是否要把幀進(jìn)行再分割。接著以重建幀PF' n中的塊為參考,結(jié)合當(dāng)前 塊周圍塊的預(yù)測(cè)模式,選擇當(dāng)前塊的最佳預(yù)測(cè)模式。最后由重建幀P F' n中相應(yīng)塊和當(dāng)前 塊選定的預(yù)測(cè)模式得到當(dāng)前塊的預(yù)測(cè)值。按照上述方法,對(duì)圖像中的每一宏塊作出幀內(nèi)預(yù) 測(cè),進(jìn)而得到一幀圖像的預(yù)測(cè)值P。如果選擇幀間預(yù)測(cè)編碼,當(dāng)前輸入幀F(xiàn)n和前一幀(參考 幀)Fn-1被送到運(yùn)動(dòng)估計(jì)器(ME),通過(guò)塊搜索,匹配可以得到當(dāng)前幀中的各宏塊相對(duì)于參 考幀中對(duì)應(yīng)宏塊的偏移量,也就是常說(shuō)的運(yùn)動(dòng)矢量。接著,參考幀F(xiàn)n-l和剛得到的運(yùn)動(dòng)矢 量MV被送到運(yùn)動(dòng)補(bǔ)償器(MC),通過(guò)計(jì)算得到幀間預(yù)測(cè)值P ;當(dāng)前幀F(xiàn)n和幀預(yù)測(cè)值P相減,得 到殘差Dn,經(jīng)過(guò)變換,量化后產(chǎn)生一組量化后的變換系數(shù)X,再經(jīng)過(guò)熵編碼,與解碼所需的 一些邊信息(如預(yù)測(cè)模式量化參數(shù),運(yùn)動(dòng)矢量等) 一起組成一個(gè)壓縮后的碼流,經(jīng)NAL(網(wǎng) 絡(luò)自適應(yīng)層)供傳輸和存儲(chǔ)。H編碼器編碼流程對(duì)輸入的一幀圖像首先進(jìn)行單元?jiǎng)澐忠?宏塊為基本單元進(jìn)行劃分,再由若干宏塊在組合成Slice,由Slice再組合成Slice Group, 這樣每個(gè)宏塊所屬的Slice和Slice Group也就確定了 。再判斷輸入的一幀圖像是I-Frame 還是P-Frame。在以上工作完成后,也就可以對(duì)每個(gè)宏塊進(jìn)行編碼了 。在對(duì)每個(gè)宏塊都編碼 完成后,還需要對(duì)重構(gòu)圖像進(jìn)行1/4象素精度插值處理、參考幀緩沖區(qū)插入處理等工作。至 此,編碼一幀的工作才算完成。
上述實(shí)施例的具體應(yīng)用方式包括
1.啟動(dòng)視頻監(jiān)控平臺(tái)視頻區(qū)繪圖數(shù)據(jù)截取及編碼服務(wù)
2.啟動(dòng)視頻監(jiān)控平臺(tái) 3.啟動(dòng)視頻監(jiān)控平臺(tái)資源讀取及控制服務(wù),如圖6、7所示
4.等待資源選擇控制動(dòng)作 以上內(nèi)容是結(jié)合具體的優(yōu)選實(shí)施方式對(duì)本發(fā)明所作的進(jìn)一步詳細(xì)說(shuō)明,不能認(rèn)定 本發(fā)明的具體實(shí)施只局限于這些說(shuō)明。對(duì)于本發(fā)明所屬技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在 不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干簡(jiǎn)單推演或替換,都應(yīng)當(dāng)視為屬于本發(fā)明的 保護(hù)范圍。
權(quán)利要求
一種通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器,其特征在于,包括接口單元,用于通過(guò)網(wǎng)絡(luò)與既有視頻監(jiān)控平臺(tái)相連接;以及,分別通通過(guò)總線與所述接口單元連接的系統(tǒng)控制模塊;資源采集模塊,用于通過(guò)所述接口單元從既有視頻監(jiān)控平臺(tái)的客戶端內(nèi)存頁(yè)面中讀取監(jiān)控資源節(jié)點(diǎn)數(shù)據(jù);資源選擇模塊;用于在所述系統(tǒng)控制模塊的控制指令下,切換與該通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器連接的既有視頻監(jiān)控平臺(tái)的客戶端;視頻采集模塊,用于既有視頻監(jiān)控平臺(tái)的客戶端顯示視頻緩存中截取視頻數(shù)據(jù);和,DSP編碼模塊,用于將所述視頻采集模塊采集到的RGB或YUV視頻數(shù)據(jù)進(jìn)行H.264編碼,然后同步輸出模擬視頻信號(hào)和H.264格式數(shù)字視頻碼流。
2. 如權(quán)利要求1所述的通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器,其特征在于,所述系統(tǒng)控制模塊采用模擬外掛技術(shù),以控制所述資源選擇模塊動(dòng)作。
全文摘要
本發(fā)明提供一種通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器,包括接口單元,以及,分別通通過(guò)總線與所述接口單元連接的系統(tǒng)控制模塊;資源采集模塊,用于通過(guò)所述接口單元從既有視頻監(jiān)控平臺(tái)的客戶端內(nèi)存頁(yè)面中讀取監(jiān)控資源節(jié)點(diǎn)數(shù)據(jù);資源選擇模塊;用于在所述系統(tǒng)控制模塊的控制指令下,切換與該通用視頻監(jiān)控平臺(tái)轉(zhuǎn)碼器連接的既有視頻監(jiān)控平臺(tái)的客戶端;視頻采集模塊,用于既有視頻監(jiān)控平臺(tái)的客戶端顯示視頻緩存中截取視頻數(shù)據(jù);和,DSP編碼模塊,用于將所述視頻采集模塊采集到的RGB或YUV視頻數(shù)據(jù)進(jìn)行H.264編碼,然后同步輸出模擬視頻信號(hào)和H.264格式數(shù)字視頻碼流。
文檔編號(hào)H04N7/26GK101729865SQ20091011044
公開(kāi)日2010年6月9日 申請(qǐng)日期2009年10月30日 優(yōu)先權(quán)日2009年10月30日
發(fā)明者程剛, 陳啟偉 申請(qǐng)人:深圳市迪威視訊股份有限公司