專利名稱:視頻數(shù)據(jù)的緩存系統(tǒng)及緩存方法
技術(shù)領(lǐng)域:
本發(fā)明涉及視頻監(jiān)控的技術(shù)領(lǐng)域,具體說是一種保證每次讀取到的幀數(shù)據(jù)都來自一個完整幀,從而避免視頻縮放、拼接操作中出現(xiàn)橫紋的視頻數(shù)據(jù)的緩存系統(tǒng)及緩存方法。
背景技術(shù):
視頻縮放和視頻拼接是視頻處理中的重要應(yīng)用,視頻處理操作的對象往往是一幀的數(shù)據(jù),而一幀視頻數(shù)據(jù),尤其是高清視頻,數(shù)據(jù)量很大,而信號的輸入方式往往是串行,因 為這個限制,視頻處理器必須要等到一幀視頻數(shù)據(jù)的最后一位都獲取成功的時候,才能執(zhí)行處理操作。而每一幀視頻信號除了包含有效視頻信號之外,還包含有同步信號和消隱信號,視頻處理操作針對的往往只是有效視頻信號,需要分離無關(guān)的信號。目前一般的處理方式是在視頻處理器和同步消隱信號分離模塊之間建立一個視頻數(shù)據(jù)緩存器,用來暫存一幀視頻數(shù)據(jù)。圖I是現(xiàn)有技術(shù)中視頻數(shù)據(jù)緩存系統(tǒng)的結(jié)構(gòu)示意圖。如圖I所示,現(xiàn)有技術(shù)中的視頻數(shù)據(jù)的緩存系統(tǒng),包括同步消隱信號分離模塊、視頻處理器和視頻數(shù)據(jù)緩存器,視頻數(shù)據(jù)緩存器連接設(shè)置在同步消隱信號分離模塊和視頻處理器之間,視頻信號輸入Signal_in由同步消隱信號分離模塊引入到系統(tǒng)內(nèi),有效幀數(shù)據(jù)輸入Data_in和有效輸入視頻數(shù)據(jù)的時鐘Clk_vd_in分別由同步消隱信號分離模塊傳輸至視頻數(shù)據(jù)緩存器中,視頻數(shù)據(jù)緩存器接收由視頻處理器發(fā)送的有效輸出視頻數(shù)據(jù)的時鐘Clk_Vd_out,同時向視頻處理器發(fā)送有效幀數(shù)據(jù)輸出Data_out,在視頻數(shù)據(jù)緩存器中設(shè)置一個視頻緩存區(qū)Buf,經(jīng)視頻處理器處理后的數(shù)據(jù)作為輸出視頻信號Signal_out向外輸出。但這樣有一個問題,就是在實際中,輸入信號的時鐘和輸出信號的時鐘必然存在誤差,這樣從視頻數(shù)據(jù)緩存器里讀數(shù)據(jù)和向視頻數(shù)據(jù)緩存器里寫數(shù)據(jù)的速率就會有差異,當時間積累到一定階段,兩者的差距就會達到大于一幀的數(shù)據(jù)量,這時候監(jiān)視器上就會出現(xiàn)橫紋,而這種差異將一直存在,所以橫紋就會周期性出現(xiàn),對顯示效果影響很大。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是提供一種保證每次讀取到的幀數(shù)據(jù)都來自一個完整幀,從而避免視頻縮放、拼接操作中出現(xiàn)橫紋的視頻數(shù)據(jù)的緩存系統(tǒng)及緩存方法。本發(fā)明為解決公知技術(shù)中存在的技術(shù)問題所采取的技術(shù)方案是
本發(fā)明的視頻數(shù)據(jù)的緩存系統(tǒng),包括同步消隱信號分離模塊、視頻處理器和視頻數(shù)據(jù)緩存器,視頻數(shù)據(jù)緩存器連接設(shè)置在同步消隱信號分離模塊和視頻處理器之間,視頻信號輸入Signal_in由同步消隱信號分離模塊引入到系統(tǒng)內(nèi),有效幀數(shù)據(jù)輸入Data_in和有效輸入視頻數(shù)據(jù)的時鐘Clk_vd_in分別由同步消隱信號分離模塊傳輸至視頻數(shù)據(jù)緩存器中,視頻數(shù)據(jù)緩存器接收由視頻處理器發(fā)送的有效輸出視頻數(shù)據(jù)的時鐘Clk_Vd_out,同時向視頻處理器發(fā)送有效幀數(shù)據(jù)輸出Data_out,經(jīng)視頻處理器處理后的數(shù)據(jù)作為輸出視頻信號Signal_out向外輸出,上述視頻數(shù)據(jù)的緩存系統(tǒng)中設(shè)置幀輸入輸出單元,同步消隱信號分離模塊和視頻處理器分別與幀輸入輸出單元相連接,并分別向幀輸入輸出單元發(fā)送輸入數(shù)據(jù)請求信號Ap_in和輸出數(shù)據(jù)請求信號Ap_out ;視頻數(shù)據(jù)緩存器中設(shè)置三個視頻緩存區(qū)Buf_UBuf_2, Buf_3,幀輸入輸出單元與視頻數(shù)據(jù)緩存器相連接,并向視頻數(shù)據(jù)緩存器分別發(fā)送輸入緩存區(qū)序號選擇信號P_frm_wr、輸出緩存區(qū)序號選擇信號P_frm_rd和控制信號的時鐘 Clk_ctrl_in。。本發(fā)明的視頻數(shù)據(jù)的緩存方法中,當視頻信號輸入Signal_in引入到系統(tǒng)時,系統(tǒng)接收到幀同步信號,同步消隱信號分離模塊通過向幀輸入輸出單元發(fā)送輸入請求Ap_in ;幀輸入輸出單元通過發(fā)送輸入緩存區(qū)序號選擇信號P_frm_Wr來選擇視頻數(shù)據(jù)緩存器內(nèi)的目標視頻緩存區(qū)的序號,將有效幀數(shù)據(jù)輸入Data_in的視頻數(shù)據(jù)按序號位存入目標視頻緩存區(qū),當一個視頻緩存區(qū)存滿后,在下一幀視頻數(shù)據(jù)到來時,輸入緩存區(qū)序號選擇信號P_frm_Wr會指向另一個視頻緩存區(qū);視頻處理器向視頻緩存器獲取一整幀數(shù)據(jù)之前,向幀輸入輸出單元發(fā)送輸出請求Ap_out;幀輸入輸出單元通過輸出緩存區(qū)序號選擇信號P_ frm_rd選擇目標視頻緩存區(qū)的序號,并將該目標視頻緩存區(qū)內(nèi)的數(shù)據(jù)作為有效幀數(shù)據(jù)輸出Data_out輸出到視頻處理器,視頻處理器將處理后的數(shù)據(jù)作為輸出視頻信號Signal_out向外輸出,當一個視頻緩存區(qū)內(nèi)的數(shù)據(jù)輸出完畢后,下一次收到輸出請求Ap_out的時候,輸出緩存區(qū)序號選擇信號P_frm_rd會指向另一個視頻緩存區(qū)。本發(fā)明還可以采用以下技術(shù)方案
當系統(tǒng)啟動的時,輸出緩存區(qū)序號選擇信號P_frm_rd指向視頻緩存區(qū)Buf_3,然后依次按照Buf_3、Buf_l、Buf_2、Buf_3、Buf_l…的順序讀取數(shù)據(jù);而輸入緩存區(qū)序號選擇信號P_frm_wr在啟動時指向視頻緩存區(qū)Buf_l,之后依次按照Buf_l、Buf_2、Buf_3、Buf_l、Buf_2…的順序?qū)懭霐?shù)據(jù)。每次輸入緩存區(qū)序號選擇信將要指向下一目標視頻緩存區(qū)時,判斷此時的輸出緩存區(qū)序號選擇信號P_frm_wr是否也指向同一個視頻緩存區(qū),如果指向相同則不改當前指向的視頻緩存區(qū)序號,即再次讀取當前視頻緩存區(qū)的數(shù)值;同樣,輸出緩存區(qū)序號選擇信號P_frm_wr將要向下一目標視頻緩存區(qū)寫入數(shù)據(jù)時,判斷此時的輸入緩存區(qū)序號選擇信號P_frm_rd是否也指向同一個視頻緩存區(qū),如果P_frm_rd也指向同一個視頻緩存區(qū),則不改變P_frm_wr當前指向的視頻緩存區(qū)序號,即用當前幀數(shù)據(jù)覆蓋當前的視頻緩存區(qū)的數(shù)值。本發(fā)明具有的優(yōu)點和積極效果是
本發(fā)明的視頻數(shù)據(jù)的緩存系統(tǒng)及緩存方法中,包括幀輸入輸出控制單元和一個具有三個視頻緩存區(qū)Buf_l、Buf_2、Buf_3的視頻數(shù)據(jù)緩存器,所述幀輸入輸出控制單元通過讀寫控制信號選擇存儲輸入數(shù)據(jù)的視頻緩存區(qū)和輸出數(shù)據(jù)的視頻緩存區(qū)的序號,在運行過程中保證輸入數(shù)據(jù)的視頻緩存區(qū)和輸出數(shù)據(jù)的視頻緩存區(qū)的序號互不相同,從而保證每次讀取到的幀數(shù)據(jù)都來自一個完整幀,相對于只有一個視頻緩存區(qū)的視頻數(shù)據(jù)緩存器,避免了因時鐘速率存在差異而造成讀取到的數(shù)據(jù)來自不同的兩幀的現(xiàn)象,從而避免在視頻縮放、拼接操作中出現(xiàn)周期性的橫紋。
圖I是現(xiàn)有技術(shù)中視頻數(shù)據(jù)緩存系統(tǒng)的結(jié)構(gòu)示意 圖2是本發(fā)明的視頻數(shù)據(jù)緩存系統(tǒng)的結(jié)構(gòu)示意圖。
具體實施方式
以下參照附圖及實施例對本發(fā)明進行詳細的說明。圖2是本發(fā)明的視頻數(shù)據(jù)緩存系統(tǒng)的結(jié)構(gòu)示意圖。如圖2所示,本發(fā)明的視頻數(shù)據(jù)的緩存系統(tǒng),包括同步消隱信號分離模塊、視頻處理器和視頻數(shù)據(jù)緩存器,視頻數(shù)據(jù)緩存器連接設(shè)置在同步消隱信號分離模塊和視頻處理器之間,視頻信號輸入Signal_in由同步消隱信號分離模塊引入到系統(tǒng)內(nèi),有效幀數(shù)據(jù)輸A Data_in和有效輸入視頻數(shù)據(jù)的時鐘Clk_vd_in分別由同步消隱信號分離模塊傳輸至視頻數(shù)據(jù)緩存器中,視頻數(shù)據(jù)緩存器接收由視頻處理器發(fā)送的有效輸出視頻數(shù)據(jù)的時鐘Clk_vd_out,同時向視頻處理器發(fā)送有效幀數(shù)據(jù)輸出Data_out,經(jīng)視頻處理器處理后的數(shù)據(jù)作為輸出視頻信號Signal_out向外輸出,上述視頻數(shù)據(jù)的緩存系統(tǒng)中設(shè)置幀輸入輸出單元,同步消隱信號分離模塊和視頻處理器分別與幀輸入輸出單元相連接,并分別向幀輸入輸出單元發(fā)送輸入數(shù)據(jù)請求信號Ap_in和輸出數(shù)據(jù)請求信號Ap_out ;視頻數(shù)據(jù)緩存器中設(shè)置三個視頻緩存區(qū)Buf_l、Buf_2、Buf_3,幀輸入輸出單元與視頻數(shù)據(jù)緩存器相連接,并向視頻數(shù)據(jù)緩存器分別發(fā)送輸入緩存區(qū)序號選擇信號P_frm_wr、輸出緩存區(qū)序號選擇信號P_frm_rd和控制信號的時鐘Clk_ctrl_in。本發(fā)明的視頻數(shù)據(jù)的緩存方法中,當視頻信號輸入Signal_in引入到系統(tǒng)時,系統(tǒng)接收到幀同步信號,同步消隱信號分離模塊通過向幀輸入輸出單元發(fā)送輸入請求Ap_in ;幀輸入輸出單元通過發(fā)送輸入緩存區(qū)序號選擇信號P_frm_Wr來選擇視頻數(shù)據(jù)緩存器內(nèi)的目標視頻緩存區(qū)的序號,將有效幀數(shù)據(jù)輸入Data_in的視頻數(shù)據(jù)按序號位存入目標視頻緩存區(qū),當一個視頻緩存區(qū)存滿后,在下一幀視頻數(shù)據(jù)到來時,輸入緩存區(qū)序號選擇信號P_frm_Wr會指向另一個視頻緩存區(qū);視頻處理器向視頻緩存器獲取一整幀數(shù)據(jù)之前,向幀輸入輸出單元發(fā)送輸出請求Ap_out ;幀輸入輸出單元通過輸出緩存區(qū)序號選擇信號P_frm_rd選擇目標視頻緩存區(qū)的序號,并將該目標視頻緩存區(qū)內(nèi)的數(shù)據(jù)作為有效幀數(shù)據(jù)輸出Data_out輸出到視頻處理器,視頻處理器將處理后的數(shù)據(jù)作為輸出視頻信號Signal_out向外輸出,當一個視頻緩存區(qū)內(nèi)的數(shù)據(jù)輸出完畢后,下一次收到輸出請求Ap_out的時候,輸出緩存區(qū)序號選擇信號P_frm_rd會指向另一個視頻緩存區(qū)。當系統(tǒng)啟動的時,輸出緩存區(qū)序號選擇信號P_frm_rd指向視頻緩存區(qū)Buf_3,然后依次按照Buf_3、Buf_l、Buf_2、Buf_3、Buf_l…的順序讀取數(shù)據(jù);而輸入緩存區(qū)序號選擇信號P_frm_wr在啟動時指向視頻緩存區(qū)Buf_l,之后依次按照Buf_l、Buf_2、Buf_3、Buf_l、Buf_2…的順序?qū)懭霐?shù)據(jù)。每次輸入緩存區(qū)序號選擇信將要指向下一目標視頻緩存區(qū)時,判斷此時的輸出緩存區(qū)序號選擇信號P_frm_wr是否也指向同一個視頻緩存區(qū),如果指向相同則不改當前指向的視頻緩存區(qū)序號,即再次讀取當前視頻緩存區(qū)的數(shù)值;同樣,輸出緩存區(qū)序號選擇信號P_frm_wr將要向下一目標視頻緩存區(qū)寫入數(shù)據(jù)時,判斷此時的輸入緩存區(qū)序號選擇信號P_frm_rd是否也指向同一個視頻緩存區(qū),如果P_frm_rd也指向同一個視頻緩存區(qū),則不改變P_frm_wr當前指向的視頻緩存區(qū)序號,即用當前幀數(shù)據(jù)覆蓋當前的視頻緩存區(qū)的數(shù)值。本發(fā)明的視頻數(shù)據(jù)的緩存系統(tǒng)及緩存方法中,包括幀輸入輸出控制單元和一個具有三個視頻緩存區(qū)Buf_l、Buf_2、Buf_3的視頻數(shù)據(jù)緩存器,所述幀輸入輸出控制單元通過讀寫控制信號選擇存儲輸入數(shù)據(jù)的視頻緩存區(qū)和輸出數(shù)據(jù)的視頻緩存區(qū)的序號,在運行過程中保證輸入數(shù)據(jù)的視頻緩存區(qū)和輸出數(shù)據(jù)的視頻緩存區(qū)的序號互不相同,從而保證每次讀取到的幀數(shù)據(jù)都來自一個完整幀,相對于只有一個視頻緩存區(qū)的視頻數(shù)據(jù)緩存器,避免了因時鐘速率存在差異而造成讀取到的數(shù)據(jù)來自不同的兩幀的現(xiàn)象,從而避免在視頻縮放、拼接操作中出現(xiàn)周期性的橫紋。以上所述,僅是本發(fā)明的較佳實施例而已,并非對本發(fā)明作任何形式上的限制,雖然本發(fā)明已以較佳實施例公開如上,然而,并非用以限定本發(fā)明,任何熟悉本專業(yè)的技術(shù)人員,在不脫離本發(fā)明技術(shù)方案范圍內(nèi),當然會利用揭示的技術(shù)內(nèi)容作出些許更動或修 飾,成為等同變化的等效實施例,但凡是未脫離本發(fā)明技術(shù)方案的內(nèi)容,依據(jù)本發(fā)明的技術(shù)實質(zhì)對以上實施例所作的任何簡單修改、等同變化與修飾,均屬于本發(fā)明技術(shù)方案的范圍內(nèi)。
權(quán)利要求
1.一種視頻數(shù)據(jù)的緩存系統(tǒng),包括同步消隱信號分離模塊、視頻處理器和視頻數(shù)據(jù)緩存器,視頻數(shù)據(jù)緩存器連接設(shè)置在同步消隱信號分離模塊和視頻處理器之間,視頻信號輸入Signal_in由同步消隱信號分離模塊引入到系統(tǒng)內(nèi),有效幀數(shù)據(jù)輸入Data_in和有效輸入視頻數(shù)據(jù)的時鐘Clk_vd_in分別由同步消隱信號分離模塊傳輸至視頻數(shù)據(jù)緩存器中,視頻數(shù)據(jù)緩存器接收由視頻處理器發(fā)送的有效輸出視頻數(shù)據(jù)的時鐘Clk_Vd_out,同時向視頻處理器發(fā)送有效幀數(shù)據(jù)輸出Data_out,經(jīng)視頻處理器處理后的數(shù)據(jù)作為輸出視頻信號Signal_out向外輸出,其特征在于上述視頻數(shù)據(jù)的緩存系統(tǒng)中設(shè)置幀輸入輸出單元,同步消隱信號分離模塊和視頻處理器分別與幀輸入輸出單元相連接,并分別向幀輸入輸出單元發(fā)送輸入數(shù)據(jù)請求信號Ap_in和輸出數(shù)據(jù)請求信號Ap_out ;視頻數(shù)據(jù)緩存器中設(shè)置三個視頻緩存區(qū)Buf_l、Buf_2、Buf_3,幀輸入輸出單元與視頻數(shù)據(jù)緩存器相連接,并向視頻數(shù)據(jù)緩存器分別發(fā)送輸入緩存區(qū)序號選擇信號P_frm_wr、輸出緩存區(qū)序號選擇信號P_frm_rd和控制信號的時鐘Clk_ctrl_in。
2.一種基于權(quán)利要求I所述緩存系統(tǒng)的視頻數(shù)據(jù)的緩存方法,其特征在于當視頻信號輸入Signal_in引入到系統(tǒng)時,系統(tǒng)接收到幀同步信號,同步消隱信號分離模塊通過向幀輸入輸出單元發(fā)送輸入請求Ap_in;幀輸入輸出單元通過發(fā)送輸入緩存區(qū)序號選擇信號P_frm_wr來選擇視頻數(shù)據(jù)緩存器內(nèi)的目標視頻緩存區(qū)的序號,將有效幀數(shù)據(jù)輸入Data_in的視頻數(shù)據(jù)按序號位存入目標視頻緩存區(qū),當一個視頻緩存區(qū)存滿后,在下一幀視頻數(shù)據(jù)到來時,輸入緩存區(qū)序號選擇信號P_frm_wr會指向另一個視頻緩存區(qū);視頻處理器向視頻緩存器獲取一整幀數(shù)據(jù)之前,向幀輸入輸出單元發(fā)送輸出請求Ap_out ;幀輸入輸出單元通過輸出緩存區(qū)序號選擇信號P_frm_rd選擇目標視頻緩存區(qū)的序號,并將該目標視頻緩存區(qū)內(nèi)的數(shù)據(jù)作為有效幀數(shù)據(jù)輸出Data_out輸出到視頻處理器,視頻處理器將處理后的數(shù)據(jù)作為輸出視頻信號Signal_out向外輸出,當一個視頻緩存區(qū)內(nèi)的數(shù)據(jù)輸出完畢后,下一次收到輸出請求Ap_out的時候,輸出緩存區(qū)序號選擇信號P_frm_rd會指向另一個視頻緩存區(qū)。
3.根據(jù)權(quán)利要求2所述的視頻數(shù)據(jù)的緩存方法,其特征在于當系統(tǒng)啟動的時,輸出緩存區(qū)序號選擇信號P_frm_rd指向視頻緩存區(qū)Buf_3,然后依次按照Buf_3、Buf_l、Buf_2、Buf_3、Buf_l…的順序讀取數(shù)據(jù);而輸入緩存區(qū)序號選擇信號P_frm_wr在啟動時指向視頻緩存區(qū)Buf_l,之后依次按照Buf_l、Buf_2、Buf_3、Buf_l、Buf_2…的順序?qū)懭霐?shù)據(jù)。
4.根據(jù)權(quán)利要求3所述的視頻數(shù)據(jù)的緩存方法,其特征在于每次輸入緩存區(qū)序號選擇信將要指向下一目標視頻緩存區(qū)時,判斷此時的輸出緩存區(qū)序號選擇信號P_frm_wr是否也指向同一個視頻緩存區(qū),如果指向相同則不改變P_frm_rd當前指向的視頻緩存區(qū)序號,即再次讀取當前視頻緩存區(qū)的數(shù)值;同樣,輸出緩存區(qū)序號選擇信號P_frm_Wr將要向下一目標視頻緩存區(qū)寫入數(shù)據(jù)時,判斷此時的輸入緩存區(qū)序號選擇信號P_frm_rd是否也指向同一個視頻緩存區(qū),如果P_frm_rd也指向同一個視頻緩存區(qū),則不改變P_frm_wr當前指向的視頻緩存區(qū)序號,即用當前幀數(shù)據(jù)覆蓋當前的視頻緩存區(qū)的數(shù)值。
全文摘要
一種視頻數(shù)據(jù)的緩存系統(tǒng)和緩存方法中,視頻數(shù)據(jù)緩存器連接設(shè)置在同步消隱信號分離模塊和視頻處理器之間,同步消隱信號分離模塊和視頻處理器分別與幀輸入輸出單元相連接,視頻數(shù)據(jù)緩存器中設(shè)置三個視頻緩存區(qū),幀輸入輸出單元與視頻數(shù)據(jù)緩存器相連接,并向視頻數(shù)據(jù)緩存器分別發(fā)送輸入緩存區(qū)序號選擇信號、輸出緩存區(qū)序號選擇信號和控制信號的時鐘。幀輸入輸出控制單元通過讀寫控制信號選擇存儲輸入數(shù)據(jù)的視頻緩存區(qū)和輸出數(shù)據(jù)的視頻緩存區(qū)的序號,在運行過程中保證輸入數(shù)據(jù)的視頻緩存區(qū)和輸出數(shù)據(jù)的視頻緩存區(qū)的序號互不相同,從而保證每次讀取到的幀數(shù)據(jù)都來自一個完整幀,避免在視頻縮放、拼接操作中出現(xiàn)周期性的橫紋。
文檔編號H04N5/14GK102625110SQ20121008977
公開日2012年8月1日 申請日期2012年3月30日 優(yōu)先權(quán)日2012年3月30日
發(fā)明者吳文旭, 戴林, 牟奎霖 申請人:天津天地偉業(yè)物聯(lián)網(wǎng)技術(shù)有限公司