基于fpga的高標清可混播的多畫面分割器及分割方法
【技術領域】
[0001]本發(fā)明涉及一種廣播級多畫面分割器,特別涉及一種基于FPGA的高標清可混播的有輔助數(shù)據(jù)提取功能的多畫面分割器及分割方法。
【背景技術】
[0002]近年來廣播電視市場,高清視頻正在漸漸取代標清視頻,但是由于設備等各種原因的限制,高清和標清在以后很長的一段時間內會并存,目前國內外大多高標清混播的分割器是基于FPGA+DSP的方案,用DSP來對每路視頻進行縮放處理,然后再把視頻送入FPGA以便讓視頻達到分割畫面輸出的目的,但這樣多芯片的組合方式可能導致系統(tǒng)的可靠性降低,同時多芯片方案會增加PCB印刷線路板制板面積,從而導致產品體積大、便攜性差、設計成本高及靈活性不好等弊端。有些基于FPGA的方案,會對每路信號用FPGA提供的IP核來先對視頻進行縮放和去隔行,這樣會消耗大量的FPGA資源,為了保證運行速度不得不選用大容量的FPGA,這樣無疑增加了成本。同時對每一路視頻芯片縮放和去隔行必須用大量的高速外部存儲器,這樣同樣會增加PCB制版的難度和制版的面積,另外IP核的費用也較高,無疑增加了成本。
[0003]目前廣播電視領域通常使用SDI信號,我國廣電行業(yè)主要使用兩種SDI制式即:被行業(yè)內稱為576I50HZ的標清制式和稱為1080I50HZ的高清制式,傳輸SDI到FPGA通常是先通過均衡,再通過解串器把SDI信號轉換成多組差分信號,再把這些差分信號輸出到FPGA,這樣會導致使用FPGA的大量1接口,另外由于解串器的成本很高從而增加設計成本。正是由于解串器這些缺點,近年來很多低成本的FPGA內部集成了類似于解串器功能的模塊——高速串行接口,但是高速串行接口有個缺點:它的最低速率是640M/S,而標清視頻的速率只有270M/S,所以高速串行接口只能采用過采樣的方式來對標清進行采樣,即用1.485G/S或者2.97G/S的速率來對270M/S速率的標清進行采樣,但是通過高速串行接口恢復出來的時鐘和參考時鐘是同源時鐘,和本身的標清SDI信號的時鐘不是同源時鐘,這樣通常需要外部存儲器來緩存數(shù)據(jù),再通過重新建立外部時鐘來讀取數(shù)據(jù),這樣同樣會消耗更多的I/O口和FPGA資源。
【發(fā)明內容】
[0004]鑒于現(xiàn)有解決方案中存在的系統(tǒng)不穩(wěn)定及成本較高等問題,本發(fā)明提出一種基于FPGA的高標清可混播的多畫面分割器,該多畫面分割器實現(xiàn)起來方便、系統(tǒng)更穩(wěn)定、成本更低。
[0005]本發(fā)明所提供的基于FPGA的高標清可混播的多畫面分割器,其特征在于:包括多個高速串行接口接收模塊、多個輔助數(shù)據(jù)提取和顯示模塊、多個視頻縮放模塊,所述高速串行接口接收模塊、輔助數(shù)據(jù)提取和顯示模塊、視頻縮放模塊相互配合形成多組,分別處理多路SDI視頻信號;多個視頻縮放模塊分別與視頻拼接模塊連接;所述視頻拼接模塊分別與存儲模塊、HDMI發(fā)送芯片所需信號模塊以及高速串行接口發(fā)送模塊連接;
[0006]所述高速串行接口接收模塊用于接收外部輸入的SDI視頻信號,獲取NRZI數(shù)據(jù)并將其轉換成YUV422數(shù)據(jù)、數(shù)據(jù)時鐘、數(shù)據(jù)有效信號、高標清識別信號;
[0007]所述輔助數(shù)據(jù)提取和顯示模塊,用于提取視頻信號中的輔助數(shù)據(jù)并在視頻中顯示該輔助數(shù)據(jù);
[0008]所述視頻縮放模塊,用于對顯示有輔助數(shù)據(jù)的視頻進行縮放,采用雙三次插值算法對高標清分別處理,獲取視頻圖像的數(shù)據(jù)以及視頻圖像所在行的數(shù)據(jù),并發(fā)送給所述視頻拼接模塊;
[0009]所述視頻拼接模塊,用于把多路的視頻信號拼接成一路組合視頻信號;
[0010]所述存儲模塊用于緩存所述視頻拼接模塊生成的組合視頻信號;
[0011]所述HDMI發(fā)送芯片所需信號模塊,根據(jù)組合視頻信號生成符合后端HDMI芯片要求的視頻信號;
[0012]所述高速串行接口發(fā)送模塊,用于將組合視頻信號轉換成SDI信號輸出。
[0013]進一步地,所述輔助數(shù)據(jù)提取和顯示模塊包括依次連接的提取音頻數(shù)據(jù)模塊、生成音頻分貝值模塊、計算音柱顯示區(qū)域模塊、分貝值三色顯示模塊;依次連接的提取時間碼模塊、計算時間碼顯示區(qū)域模塊、生成字符ROM的讀地址模塊、顯示時間碼模塊;所述分貝值三色顯示模塊、顯示時間碼模塊分別連接α混疊模塊;
[0014]所述提取音頻數(shù)據(jù)模塊,用于提取嵌入在視頻信號中的音頻數(shù)據(jù);
[0015]所述生成音頻分貝值模塊,用于把得到的音頻數(shù)據(jù)轉化成分貝值;
[0016]所述計算音柱顯示區(qū)域模塊,用于確定音頻的顯示區(qū)域;
[0017]所述分貝值三色顯示模塊,用于根據(jù)分貝值的大小,在所述計算音柱三色顯示模塊確定的顯示區(qū)域內,把分貝值通過三色電平柱的形式顯示出來;
[0018]所述提取時間碼模塊,用于提取嵌入在視頻信號中的時間碼信息;
[0019]所述計算時間碼顯示區(qū)域模塊,用于確定時間碼的顯示區(qū)域;
[0020]所述生成字符ROM的讀地址模塊,根據(jù)所述計算時間碼顯示區(qū)域模塊確定的顯示區(qū)域,生成字符ROM的讀地址;
[0021]所述顯示時間碼模塊,根據(jù)所述生成字符ROM的讀地址模塊生成的讀地址讀取ROM中的數(shù)據(jù),生成時間碼圖像;
[0022]所述α混疊模塊,用于把音柱信號和時間碼圖像疊加到視頻信號上。
[0023]進一步地,所述視頻縮放模塊包括依次連接的4X4鄰域生成模塊、三次線性插值模塊、視頻數(shù)據(jù)位置編號調整模塊、視頻數(shù)據(jù)緩存模塊、視頻信號輸出模塊;
[0024]所述4X4鄰域生成模塊,用于生成4X4鄰域;
[0025]所述三次線性插值模塊,用于對4X4鄰域生成模塊生成的數(shù)據(jù)進行三次線性插值,并對視頻數(shù)據(jù)的位置信息進行重新編號;
[0026]所述視頻數(shù)據(jù)緩存模塊,用于緩存經過橫向壓縮的視頻數(shù)據(jù)圖像;
[0027]所述視頻信號輸出模塊,用于輸出視頻數(shù)據(jù)、橫縱坐標、數(shù)據(jù)有效信號。
[0028]進一步地,所述視頻拼接模塊包括多個視頻數(shù)據(jù)緩存模塊、寫入判斷輸入模塊、控制模塊、視頻同步發(fā)生器、幀判讀信號模塊、讀出模塊以及FVH嵌入模塊;
[0029]所述視頻數(shù)據(jù)緩存模塊,用于緩存當前行的數(shù)據(jù)和該行數(shù)據(jù)所對應的縱坐標的數(shù)值;
[0030]所述寫入判斷輸入模塊,用于讀取多個視頻數(shù)據(jù)緩存模塊緩存的視頻數(shù)據(jù),控制多個視頻數(shù)據(jù)緩存模塊的讀取的次序,并對高標清視頻分開處理;
[0031]所述控制模塊,用于生成所述存儲模塊的控制信號;
[0032]所述視頻同步發(fā)生器,用于根據(jù)外部時鐘生成行場同步信號;
[0033]所述幀判讀信號模塊,用于生成幀判讀信號,避免從所述存儲模塊讀同一幀而出現(xiàn)顯示的上下半幅圖像不屬于同一幀的情況;
[0034]所述讀出模塊,根據(jù)幀判讀信號及行場同步信號讀取緩存入所述存儲模塊的視頻數(shù)據(jù);
[0035]所述FVH嵌入模塊,用于將FVH信號嵌入從所述存儲模塊讀出的視頻數(shù)據(jù)中。
[0036]本發(fā)明還提供一種基于FPGA的高標清可混播的多畫面分割方法,其特征在于,包括以下步驟:
[0037](I)高速串行接口接收模塊接收外部輸入的SDI視頻信號,獲取NRZI數(shù)據(jù)并將其轉換成YUV422數(shù)據(jù)、數(shù)據(jù)時鐘、數(shù)據(jù)有效信號、高標清識別信號;
[0038](2)輔助數(shù)據(jù)提取和顯示模塊從SDI視頻信號中提取嵌在視頻消隱區(qū)中的輔助數(shù)據(jù)并以圖象的方式在視頻中顯示該輔助數(shù)據(jù);
[0039](3)視頻縮放模塊對顯示有輔助數(shù)據(jù)的視頻進行縮放,采用雙三次插值算法對高標清分別處理,獲取視頻圖像的數(shù)據(jù)以及視頻圖像所在行的數(shù)據(jù),并發(fā)送給所述視頻拼接模塊;
[0040](4)視頻拼接模塊將多路的視頻信號拼接成一路組合視頻信號;
[0041](5)HDMI發(fā)送芯片所需信號模塊,根據(jù)組合視頻信號生成符合后端HDMI芯片要求的視頻信號;同時,高速串行接口發(fā)送模塊將組合視頻信號轉換成SDI信號輸出。
[0042]進一步地,所述步驟(2)具體為:
[0043](21)由提取音頻數(shù)據(jù)模塊提取嵌入在視頻信號中的音頻數(shù)據(jù);由生成音頻分貝值模塊把得到的音頻數(shù)據(jù)轉化成分貝值;分貝值三色顯示模塊根據(jù)分貝值的大小,在計算音柱三色顯示模塊確定的顯示區(qū)域內,把分貝值通過三色電平柱的形式顯示出來;
[0044](22)由提取時間碼模塊提取嵌入在視頻信號中的時間碼信息;由生成字符ROM的讀地址模塊根據(jù)計算時間碼顯示區(qū)域模塊確定的顯示區(qū)域,生成字符ROM的讀地址;顯示時間碼模塊根據(jù)所述生成字符ROM的讀地址模塊生成的讀地址讀取ROM中的數(shù)據(jù),生成時間碼圖像;
[0045](23)通過α混疊模塊把音柱信號和時間碼圖像疊加到視頻信號上。
[0046]進一步地,所述步驟(3)具體為:
[0047]由4X4鄰域生成模塊生成4X4鄰域;再通過三次線性插值模塊,對4X4鄰域生成模塊生成的數(shù)據(jù)進行三次線性插值,并對視頻數(shù)據(jù)的位置信息進行重新編號;最后由視頻信號輸出模塊根據(jù)經過三次線性插值計算的視頻圖像輸出視頻數(shù)據(jù)、橫縱坐標、數(shù)據(jù)有效信號。
[0048]進一步地,所述步驟(4)具體為:
[0049]所述視頻數(shù)據(jù)緩存模塊,緩存當前行的數(shù)據(jù)和該行數(shù)據(jù)所對應的縱坐標的數(shù)值;
[0