一種數位電視的窗口處理方法和裝置的製作方法
2023-10-06 08:19:49 1
專利名稱:一種數位電視的窗口處理方法和裝置的製作方法
技術領域:
本發明屬於數位電視技術領域,尤其涉及一種數位電視的窗口處理方法和裝置。
背景技術:
隨著數位電視技術的不斷發展普及,用戶對數位電視功能的要求也越來越高。以數位電視的顯示界面為例,隨著機頂盒硬體水平的提升,使得在機頂盒上顯示一些複雜的界面成為可能。一些應用在高端手機上的滑動效果、縮放效果、彈出效果、半透效果等在機頂盒上已逐漸開始使用,更快更好的滿足用戶對界面的需求是機頂盒廠商面臨的問題,也對機頂盒現有的軟體提出了挑戰。現有技術中,機頂盒常用的圖形窗口系統,繪製和輸出一般都是軟體實現的,速度比較慢,要實現一些特效比較吃力。圖IA為常見的機頂盒顯示界面,是由圖IB和圖IC混合而成,圖IB是背景,圖IC 是前景,這樣做的好處是背景可以隨意的替換,前景也可以相對獨立的設計。但是如果按常規的軟體混合算法,由於光標的任一次移動,都要重新混合,速度會很慢,顯示效果也比較差。現有的各種硬體平臺基本都有圖形加速功能,因此,如何結合現有的硬體平臺來提高窗口的處理效率,成為數位電視技術領域研究的方向之一。
發明內容
本發明的目的在於提供一種數位電視的窗口處理方法和裝置,旨在結合現有的硬體平臺來提高窗口的處理效率。本發明是這樣實現的,一種數位電視的窗口處理方法,所述方法包括以下步驟針對每一窗口創建一與所述窗口同等大小的邏輯顯示層;利用基於所述邏輯顯示層的底層繪圖函數在所述邏輯顯示層上繪製所述窗口 ;利用基於所述邏輯顯示層的底層二維加速函數對具有不同窗口的至少兩個邏輯顯示層進行疊加混合處理。其中,在所述繪製所述窗口的步驟中,控制所有針對所述窗口的繪製操作在所述邏輯顯示層的可顯示區域內進行。其中,所述方法還包括以下步驟對所述窗口進行重新繪製;根據重新繪製的所述窗口設置無效區矩形;對與所述無效區矩形相交的所述窗口重新進行疊加混合處理。其中,所述窗口的層次小於四層。本發明是這樣實現的,一種數位電視的窗口處理裝置,所述裝置包括邏輯顯示層創建模塊,用於針對每一窗口創建一與所述窗口同等大小的邏輯顯示層;
窗口繪圖模塊,用於利用基於所述邏輯顯示層的底層繪圖函數在所述邏輯顯示層上繪製所述窗口; 處理模塊,用於利用基於所述邏輯顯示層的底層二維加速函數對具有不同窗口的至少兩個邏輯顯示層進行疊加混合處理。其中,所述裝置還包括操作控制模塊,用於控制所有針對所述窗口的繪製操作在所述邏輯顯示層的可顯示區域內進行。其中,所述裝置還包括無效區矩形設置模塊,其中,所述窗口繪圖模塊,還用於對所述窗口進行重新繪製;所述無效區矩形設置模塊,用於根據所述窗口繪圖模塊重新繪製的所述窗口設置無效區矩形;所述處理模塊,還用於對與所述無效區矩形相交的所述窗口重新進行疊加混合處理。其中,所述窗口的層次小於四層。本發明中,在針對每一窗口創建一與所述窗口同等大小的邏輯顯示層,利用基於邏輯顯示層的底層繪圖函數在邏輯顯示層上繪製窗口,並利用基於邏輯顯示層的底層二維加速函數對具有不同窗口的至少兩個邏輯顯示層進行疊加混合處理。通過上述方式,能夠有效地結合現有的硬體平臺,提高了窗口的處理效率,利於數位電視的推廣普及。
圖IA-C是現有技術中的機頂盒顯示界面的圖層結構圖;圖2是本發明提供的數位電視的窗口處理方法的流程圖;圖3是本發明提供的數位電視的窗口結構示意圖;圖4是本發明提供的數位電視的窗口處理裝置的結構圖。
具體實施例方式為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,並不用於限定本發明。圖2示出了本發明提供的數位電視的窗口處理方法的流程。在步驟S201中,針對每一窗口創建一與所述窗口同等大小的邏輯顯示層。在具體實施過程中,為所述窗口創建一與所述窗口同等大小的邏輯顯示層後,將所述邏輯顯示層的句柄保存在所述窗口結構中。本發明中,在為窗口創建一個同等大小的邏輯顯示層surface,並以所述邏輯顯示層作為窗口的繪製區域,同時限制所有的繪製操作不要在邏輯顯示層的可顯示區域之外, 即控制所有針對所述窗口的繪製操作在所述邏輯顯示層的可顯示區域內進行。在步驟S202中,利用基於所述邏輯顯示層的底層繪圖函數在所述邏輯顯示層上繪製所述窗口。在具體實施過程中,將基於內存的圖形設備接口繪圖函數修改為基於邏輯顯示層的底層繪圖函數。在所有窗口的混合處設置對應邏輯顯示層的二維加速函數。在步驟S203中,在進行窗口混合處理時,利用基於所述邏輯顯示層的底層二維加速函數對具有不同窗口的至少兩個邏輯顯示層進行疊加混合處理。其中,對所述窗口進行重新繪製時,根據重新繪製的所述窗口設置無效區矩形,對與所述無效區矩形相交的所述窗口重新進行疊加混合處理。在具體實施過程中,所述窗口的層次小於四層。本發明中,修改圖形設備接口(Graphics Device Interface,GDI)繪圖函數時,將現有技術中基於內存的GDI繪圖函數修改為基於邏輯顯示層surface的底層繪圖函數,而且,將所有窗口混合的地方改為surface的二維加速函數,譬如blit/blend函數,通過硬體的blit/blend函數會大大提高繪製的效率。本發明中,在進行窗口的疊加混合輸出處理時,窗口在輸出時,是按窗口的在ζ軸的排序從上向下疊加,其結果作為最後的輸出。在窗口樹層次上,無論哪個窗口的內容發生變化,都會引起從上層窗口到下層窗口的依次疊加混合。而且,本發明在重繪任一個窗口時,都有一個無效區矩形,這樣在輸出時,可以只疊加混合跟這個區域相交的窗口。譬如,請參閱圖3,其中,窗口 1處於最底層,窗口 2位於窗口 1和窗口 3之間,窗口 3為窗口 2的控制項。當窗口 3重繪時,需要先混合窗口 2,再混合窗口 1,混合的結果才是最後的輸出;當窗口 2重繪時,需要先混合窗口 2跟窗口 3的相交部分,將結果與窗口 1混合後, 才可以作為輸出;當窗口 1重繪時,需要先混合窗口 1與窗口 3的相交部分,再混合與窗口 2的相交部分,結果作為輸出。由於窗口的混合操作採用硬體blit/blend函數,因此效率很高。而且在大多數情況下,窗口不會超過四層,一般是一層或兩層,所以窗口的混合次數不會很多,有效地保證了效率。本發明中,在窗口中採用硬體圖形加速函數來提高窗口的繪製和輸出效率,極大地改善了窗口的顯示效果,可以很容易的實現滑動效果、彈出效果以及半透效果等。圖4示出了本發明提供的數位電視的窗口處理裝置的結構。其中,邏輯顯示層創建模塊41針對每一窗口創建一與所述窗口同等大小的邏輯顯不層。其中,所述邏輯顯示層創建模塊41還將所述邏輯顯示層的句柄保存在所述窗口結構中。操作控制模塊42控制所有針對所述窗口圖層的繪製操作在所述邏輯顯示層的可顯示區域內進行。窗口繪圖模塊43利用基於所述邏輯顯示層的底層繪圖函數在所述邏輯顯示層上繪製所述窗口。處理模塊44利用基於所述邏輯顯示層的底層二維加速函數對具有不同窗口的至少兩個邏輯顯示層進行疊加混合處理。其中,所述裝置還包括無效區矩形設置模塊45。
其中,所述窗口繪圖模塊43對所述窗口進行重新繪製;無效區矩形設置模塊45根據所述窗口繪圖模塊重新繪製的所述窗口設置無效區矩形;處理模塊44對與所述無效區矩形相交的所述窗口重新進行疊加混合處理。在具體實施過程中,所述窗口的層次小於四層。本發明中,在針對每一窗口創建一與所述窗口同等大小的邏輯顯示層,利用基於邏輯顯示層的底層繪圖函數在邏輯顯示層上繪製窗口,並利用基於邏輯顯示層的底層二維加速函數對具有不同窗口的至少兩個邏輯顯示層進行疊加混合處理。通過上述方式,能夠有效地結合現有的硬體平臺,提高了窗口圖層的處理效率,利於數位電視的推廣普及。以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發明的保護範圍之內。
權利要求
1.一種數位電視的窗口處理方法,其特徵在於,所述方法包括以下步驟 針對每一窗口創建一與所述窗口同等大小的邏輯顯示層;利用基於所述邏輯顯示層的底層繪圖函數在所述邏輯顯示層上繪製所述窗口; 利用基於所述邏輯顯示層的底層二維加速函數對具有不同窗口的至少兩個邏輯顯示層進行疊加混合處理。
2.如權利要求1所述的數位電視的窗口處理方法,其特徵在於,在所述繪製所述窗口的步驟中,控制所有針對所述窗口的繪製操作在所述邏輯顯示層的可顯示區域內進行。
3.如權利要求1所述的數位電視的窗口處理方法,其特徵在於,所述方法還包括以下步驟對所述窗口進行重新繪製;根據重新繪製的所述窗口設置無效區矩形;對與所述無效區矩形相交的所述窗口重新進行疊加混合處理。
4.如權利要求1所述的數位電視的窗口處理方法,其特徵在於,所述窗口的層次小於四層。
5.一種數位電視的窗口處理裝置,其特徵在於,所述裝置包括邏輯顯示層創建模塊,用於針對每一窗口創建一與所述窗口同等大小的邏輯顯示層; 窗口繪圖模塊,用於利用基於所述邏輯顯示層的底層繪圖函數在所述邏輯顯示層上繪製所述窗口;處理模塊,用於利用基於所述邏輯顯示層的底層二維加速函數對具有不同窗口的至少兩個邏輯顯示層進行疊加混合處理。
6.如權利要求5所述的數位電視的窗口處理裝置,其特徵在於,所述裝置還包括 操作控制模塊,用於控制所有針對所述窗口的繪製操作在所述邏輯顯示層的可顯示區域內進行。
7.如權利要求5所述的數位電視的窗口處理裝置,其特徵在於,所述裝置還包括無效區矩形設置模塊,其中,所述窗口繪圖模塊,還用於對所述窗口進行重新繪製;所述無效區矩形設置模塊,用於根據所述窗口繪圖模塊重新繪製的所述窗口設置無效區矩形;所述處理模塊,還用於對與所述無效區矩形相交的所述窗口重新進行疊加混合處理。
8.如權利要求5所述的數位電視的窗口處理裝置,其特徵在於,所述窗口的層次小於四層。
全文摘要
本發明公開了一種數位電視的窗口處理方法和裝置,所述方法包括以下步驟針對每一窗口創建一與所述窗口同等大小的邏輯顯示層;利用基於所述邏輯顯示層的底層繪圖函數在所述邏輯顯示層上繪製所述窗口;利用基於所述邏輯顯示層的底層二維加速函數對具有不同窗口的至少兩個邏輯顯示層進行疊加混合處理。本發明能夠有效地結合現有的硬體平臺,提高了窗口的處理效率,利於數位電視的推廣普及。
文檔編號H04N21/472GK102231858SQ201110149768
公開日2011年11月2日 申請日期2011年6月3日 優先權日2011年6月3日
發明者傅雪松 申請人:深圳創維數位技術股份有限公司