【摘要】 在線包裝系統是為中央電視臺四、九套直播和準直播的新聞類專題節目服務的。在線節目包裝是指在演播室就可以完成從字幕、動畫、欄目轉場、節目片花等所有的節目包裝。即在演播室直播中一次性完成包裝制作,不需要再到后期機房進行包裝或者后期制作的過程,設計和制作的模板數據要實時的渲染成圖像播出,這對于播控計算機的渲染能力要求很高。本文簡單地介紹了DVG渲染機的實際應用。
【關鍵詞】 DVG渲染 分時鏈連 反走樣鏈連 圖像分割鏈連 場景分割
傲威的DVG(Digital Visualisation Graphics)數字視算圖形技術作為實時渲染單元,廣泛應用于虛擬演播室、體育分析產品、虛擬廣告等廣播電視行業。在DVG的渲染引擎軟件的引導下,把客戶所用的應用軟件完全整合應用在DVG的硬件平臺上。作為一個可升級的渲染平臺,DVG可以配置多數量的圖形渲染單元,為實況直播創作豐富、逼真、高質量的三維圖形。DVG的核心是DVG板卡,他是一塊高質量的可編程PCI視頻板,能夠和商用圖形處理板連接。基于Nvidia和ATI圖形加速卡可以確保DVG通過簡單更換顯示卡就可以提高一級顯示標準。DVG最為重要的能力在于它具有可量化的任意擴充圖形管道,能夠聯合起來工作,這樣既能增強圖形的繪制和處理能力,還能優化圖像質量。任何三維的復雜層次都能利用傲威的DVG系統實時生成,最后獲得效果逼真的圖像。多臺DVG可以捆綁在一起工作,每臺機器的就是在裝有GFX的PC機上插一塊DVG板卡。DVG板組成鏈連并被同步鎖定。
DVG板卡有四種鏈連的方式:
分時鏈連
這種鏈連能夠將渲染任務分時處理。如果在一個鏈接中設有四個渲染單元,最后輸出頻率達到60Hz。每一個渲染單元有為一幅新的圖像產生四幀圖像的能力。圖1描述了在一個時間軸上發生的情況。其中一個“|”代表一個幀間分隔。數字代表圖形內容序列。一個“+”代表這個單元在下一幀開始的時候,該單元開始傳輸已經產生的圖像。
渲染單元0 |--0--+|--4---|--4---|--4---|--4--+|--8---|--8---|--8---|--8--+|...
渲染單元1 |--1---|--1--+|--5---|--5---|--5---|--5--+|--9---|--9---|--9---|...
渲染單元2 |--2---|--2---|--2--+|--6---|--6---|--6---|--6--+|--10--|--10--|...
渲染單元3 |--3---|--3---|--3---|--3--+|--7---|--7---|--7---|--7--+|--7---|...
最后產生視頻流: 0 1 2 3 4 5 6 7 8 ...
圖1
不同的渲染單元的繪制場景的狀態是不一樣的。因此,最后的輸出需要通過同步鎖定輸出視頻流。這種聯接方式是可以線性調節渲染性能,但它會帶來一定的數據到圖像的時間延遲,而這個延遲時間與渲染單元的數量成比例增加。
這是因為,如果你在一個節點渲染條件下,輸出的視頻流是60Hz。而現在要把輸出5Hz的視頻流提高到60Hz的顯示,說明相對的渲染延時幀為60/5=12。如果用4個節點渲染單元的話,把輸出5Hz視頻流提高到20Hz,其自然的延時為60/20=3幀;60Hz的輸出又是5Hz輸出的3倍關系;考慮到用4單元渲染分時鏈連法就會有3幀的延時。這樣總的延時為:3×3+3=12。其結果和一個節點渲染條件下輸出5Hz的視頻流情況相同。所以,當你想提高輸出幀頻,就可以使用分時鏈連法。當你需要渲染復雜的內容,而又要求實時輸出的情況時,采用分時鏈連法就會增加數據到圖像的延時。
反走樣鏈連
是將同一圖像分配在多臺圖形節點上分別進行渲染,讓每個圖形節點渲染圖像位置相差一個子像素,最后由多個圖像合成形成一幅圖像。例如若需繪制500×400的反走樣圖像,則可先繪制1000×800的圖像,然后用2×2采樣模板進行加權平均得到每個圖形節點進行4個反走樣樣本。四個圖形節點的圖像合成,就是進行16反走樣樣本。并調配在一個RGBA(紅、綠、藍和透明度)紋理空間內,經過對采樣點的加權平均得到一幅圖像。這一設計有效地增加了紋理采樣的速度,特別適用于陰影等效果的映射圖取樣。此外由于采樣后的數據是4D向量編碼, 使執行取樣的指令工作更加高效。
通常得到反走樣效果單靠商用的圖形卡還不能滿足高端的應用。為了獲得好的圖像質量,可以做多信道場景繪制,即每一個信道占用一個正確選擇的圖像空間中的子像素集合。在實時性要求高的應用時,利用DVG板融合兩個信道的圖像,或者應用DGV捆綁技術,將圖形卡從繁重的累加器的計算中解脫出來。這種多信道繪制的技術能夠擴展為利用每一個渲染單元繪制一副完整的場景。但是當渲染與其它的渲染單元不同的子像素集合時,至多只有四個渲染單元聯接起來。
兩個聯接為鏈的渲染單元能夠產生4樣本的反走樣效果,而速度和一個單獨的圖形處理單元的運行時間一樣(因為每個單元只處理一個信道數據)。同樣2個繪制單元如果利用內部兩信道繪制的話能夠產生8樣本的反走樣效果。
圖像分割鏈連
這種聯接方式將輸出圖像空間劃分為子區域,可以垂直分割,也可水平分割,或聯合分割。每個圖形節點實時渲染其中的一部分,多部分構成一個完整圖像。和反走樣聯接方式一樣,所有的渲染單元在同一個時間繪制場景的狀態都是一樣的。這種模式加快了渲染速度,因為每個節點渲染使用幀緩存空間較小,使紋理內存相應增加,相對提高了整個系統的圖形性能。這種模式適合高分辨率圖像輸出的應用但同時會增加1幀的延時。
這種聯接方式的特點是設備的性能不能隨著渲染單元數量的增加線性增加。這是因為所有的幾何圖形都是被所有渲染單元同時處理的。在每一個多邊形處理上都有一定的工作量,即使該多邊形在特定的渲染單元的矩形中不可見,它也需要變換,計算光照以及分割等工作。因此,在實際聯接中需要取決于繪制場景的實際情況。要考慮到幾何模型的復雜度以及像素填充的復雜度的關系。如果瓶頸是像素填充復雜度的話,圖像分隔聯接方式能夠增加渲染性能。當屏幕切分數量非常大以至繪制區域很小的時候,幾何模型的復雜度就成了主要瓶頸,而不是像素填充復雜度了。也就是說圖像分割聯連比較適合于高分辨率的格式或高深度分辨力的場景,以及二維的圖像后處理(比如扭曲矯正)的情況。
場景分割
是利用Z緩存技術。即在為物體進行著色時執行“隱藏面消除”工作的一項技術,所以隱藏物件背后的部分就不會被顯示出來。在3D環境中每個像素都會利用一組數據信息來定義像素在顯示時的縱深度(即Z軸座標值)。Z緩存所用的位數越高,則代表該顯示卡所提供的物件縱深感也越精確。目前OARD的加速卡可以支持32位的Z緩存。Z緩存的作用是在進行渲染處理前檢測出在最終成像畫面上被隱藏的無效像素點,并且將其排除在渲染隊列之外。由于Z緩存技術是和多邊型協同工作的,所以對處理移動物體和重疊物體并不是很有效。再有就是它工作在像素級,這一技術需要越來越大的顯示緩存容量。由于它的復雜性和更好的對現實世界仿真的特性,使得Z緩存技術成為3D圖形開發的流行工具。
實際應用
按照渲染的復雜度將上面的方式混合使用來提高設備效率得到適合要求的圖像質量,如,反走樣+分時鏈連:把6個渲染單元分成3對,每對做反走樣鏈接,3對之間進