一種顯示圖形用戶界面的方法及裝置的制造方法
【技術領域】
[0001]本發明涉及顯示技術領域,特別是涉及一種顯示圖形用戶界面的方法及裝置。
【背景技術】
[0002]圖形用戶界面(Graphical User Interface,⑶I)是指采用圖形方式顯示的用戶界面。其中,圖形用戶界面的產生給用戶帶來更好的視覺享受。
[0003]如何將圖形用戶界面顯示在屏幕上,現有技術的做法是:首先創建多個窗口,然后由圖形處理器在多個窗口中繪制圖片,接著使用圖形處理器的合成功能在硬件緩沖器中將繪制有圖片的多個窗口進行合成以形成圖形用戶界面,最后通過屏幕顯示(On ScreenDisplay, OSD)將圖形用戶界面顯示在屏幕上。
[0004]在現有技術中,不管繪制圖片還是合成圖片,均需要利用圖形處理器的圖形處理資源。同時,隨著科學技術的不斷發展,圖片的分辨率逐步提高。分辨率的提高將要消耗更多的圖形處理器的圖形處理資源,給圖形處理器帶來嚴重的處理負荷,其具體表現為:隨著圖片的分辨率的提高,圖形處理器對圖片的處理效率下降,從而導致屏幕上輸出的圖形用戶界面的幀率急速下降,人眼看到的顯示屏上的畫面將會出現不連貫、不流暢的現象。
[0005]舉例來說,當圖片的分辨率為4K2K超高清(3840 X 2160)時,也即待處理的圖片總像素數量達到800萬以上,測試得到屏幕上輸出的圖形用戶界面的幀率為12fps(每秒的幀數)。而由于人類眼睛的特殊生理結構,如果所看畫面之幀率高于24fps的時候,就會認為是連貫的。此時,由于圖形用戶界面的幀率遠遠小于24fps,人眼看到的是斷斷續續顯示的圖形用戶界面,從而大大降低了用戶的視覺體驗。
【發明內容】
[0006]有鑒于此,本發明提供以下技術方案。
[0007]根據本發明一實施例,本發明提供一種顯示圖形用戶界面的方法,其中該圖形用戶界面是基于多個窗口而產生,該方法包括:
[0008]由第一圖形處理器在多個窗口中分別繪制用于形成圖形用戶界面的圖片;以及
[0009]根據預設規則,選擇第一圖形處理器或第二圖形處理器合成繪制有圖片的多個窗口至硬件緩沖器中,以形成圖形用戶界面;
[0010]其中第一圖形處理器與第二圖形處理器不同。
[0011]根據本發明另一實施例,本發明提供一種顯示圖形用戶界面的裝置,該裝置包括:
[0012]第一圖形處理器,在多個窗口中分別繪制用于形成圖形用戶界面的圖片;
[0013]第二圖形處理器;以及
[0014]硬件緩沖器,耦接于第一圖形處理器與第二圖形處理器;
[0015]窗口管理模塊,根據預設規則,選擇第一圖形處理器或第二圖形處理器合成繪制有圖片的多個窗口至硬件緩沖器中;
[0016]其中第一圖形處理器與第二圖形處理器不同。
[0017]根據本發明再一實施例,本發明提供一種顯示圖形用戶界面的方法,其中該圖形用戶界面是基于多個窗口而產生,該方法包括:
[0018]由第一圖形處理器在多個窗口中分別繪制用于形成圖形用戶界面的圖片,其中,多個窗口中的至少一個存儲于硬件緩沖器;
[0019]由第一圖形處理器或第二圖形處理器將存儲于硬件緩沖器中的繪制有圖片的窗口與剩余的窗口進行合成,以形成圖形用戶界面;
[0020]其中第一圖形處理器與第二圖形處理器不同。
[0021]根據本發明再一實施例,本發明提供一種顯示圖形用戶界面的裝置,該裝置包括:
[0022]第一圖形處理器,在多個窗口中分別繪制用于形成所述圖形用戶界面的圖片;
[0023]硬件緩沖器,與第一圖形處理器耦接;
[0024]其中,多個窗口中的至少一個存儲于硬件緩沖器;第一圖形處理器將存儲于硬件緩沖器中繪制有圖片的窗口與剩余的窗口進行合成,以形成圖形用戶界面。
[0025]根據本發明再一實施例,本發明提供一種顯示圖形用戶界面的裝置,該裝置包括:
[0026]第一圖形處理器,在多個窗口中分別繪制用于形成圖形用戶界面的圖片;
[0027]第二圖形處理器;
[0028]硬件緩沖器,與第一圖形處理器以及第二圖形處理器耦接;
[0029]其中,多個窗口中的至少一個存儲于硬件緩沖器;第二圖形處理器將存儲于硬件緩沖器中繪制有圖片的窗口與剩余的窗口進行合成,以形成圖形用戶界面;
[0030]其中第一圖形處理器與第二圖形處理器不同。
[0031]根據本發明再一實施例,本發明提供一種顯示圖形用戶界面的方法,其中該圖形用戶界面是基于多個窗口而產生,該方法包括:
[0032]由第一圖形處理器在多個窗口中分別繪制用于形成圖形用戶界面的圖片;以及
[0033]根據預設規則,選擇第一圖形處理器、第二圖形處理器和第三圖形處理器中的至少一個合成繪制有圖片的多個窗口至硬件緩沖器中,以形成圖形用戶界面;
[0034]其中第一圖形處理器、第二圖形處理器以及第三圖形處理器彼此不同。
[0035]根據本發明再一實施例,本發明提供一種顯示圖形用戶界面的裝置,該裝置包括:
[0036]第一圖形處理器,在多個窗口中分別繪制用于形成圖形用戶界面的圖片;
[0037]第二圖形處理器;
[0038]第三圖形處理器,以及
[0039]硬件緩沖器,耦接于第一圖形處理器為、第二圖形處理器和第三圖形處理器;
[0040]窗口管理模塊,根據預設規則,選擇第一圖形處理器、第二圖形處理器和第三圖形處理器中的至少一個合成繪制有圖片的多個窗口至硬件緩沖器中;
[0041]其中第一圖形處理器、第二圖形處理器與第三圖形處理器彼此不同。
[0042]本發明的有益效果是:區別于現有技術的情況,本發明的顯示圖形用戶界面的方法及裝置可減輕第一圖形處理器的工作負荷,從而提高了圖片處理的效率,進而使得圖形用戶界面的顯示幀率得到提高,使人眼在屏幕上能看到連貫、流暢的畫面。
【附圖說明】
[0043]圖1是本發明第一實施例的顯示圖形用戶界面的裝置的結構示意圖;
[0044]圖2是本發明第二實施例的顯示圖形用戶界面的裝置的結構示意圖;
[0045]圖3是本發明第三實施例的顯示圖形用戶界面的裝置的結構示意圖;
[0046]圖4是本發明第四實施例的顯示圖形用戶界面的裝置的結構示意圖;
[0047]圖5是本發明第一實施例的顯示圖形用戶界面的方法的流程圖;
[0048]圖6是本發明第二實施例的顯示圖形用戶界面的方法的流程圖;
[0049]圖7是本發明第三實施例的顯示圖形用戶界面的方法的流程圖;
[0050]圖8是本發明第四實施例的顯示圖形用戶界面的方法的流程圖;
[0051]圖9是本發明第五實施例的顯示圖形用戶界面的方法的流程圖;
[0052]圖10是本發明第六實施例的顯示圖形用戶界面的方法的流程圖;
[0053]圖11是本發明第七實施例的顯示圖形用戶界面的方法的流程圖。
【具體實施方式】
[0054]在說明書及權利要求書當中使用了某些詞匯來指稱特定的組件。所屬領域中的技術人員應可理解,制造商可能會用不同的名詞來稱呼同樣的組件。本說明書及權利要求書并不以名稱的差異來作為區分組件的方式,而是以組件在功能上的差異來作為區分的基準。在通篇說明書及權利要求書當中所提及的「耦接」一詞在此包含任何直接及/或間接的電氣耦接手段。因此,若文中描述第一裝置耦接于第二裝置,則代表第一裝置可直接電氣耦接于第二裝置,或透過其它裝置或耦接手段間接地電氣耦接至第二裝置。下面結合附圖和實施例對本發明進行詳細說明。
[0055]圖1是本發明第一實施例的顯示圖形用戶界面的裝置的結構示意圖。如圖1所示,顯示圖形用戶界面的裝置100包括第一圖形處理器11、第二圖形處理器12、硬件緩沖器13和窗口管理模塊14。另外,圖1所示的顯示圖形用戶界面的裝置以虛線表示多個窗口 10。其中,硬件緩沖器13耦接于第一圖形處理器11和第二圖形處理器12。
[0056]第一圖形處理器11在多個窗口 10中分別繪制用于形成圖形用戶界面的圖片,其中多個窗口由應用程序創建,每個窗口為虛擬窗口,其對應由虛擬地址訪問的一段虛擬內存空間。具體來說,多個窗口由應用程序基于需要而調用窗口管理器的相對應接口而產生,圖形用戶界面一般由多層圖片疊加形成,其中,圖形用戶界面中圖片的層數與多個窗口的數量相對應。由第一圖形處理器在多個窗口中分別繪制用于形成圖形用戶界面的圖片具體為:由第一圖形處理器將圖形用戶界面中各層圖片的各個像素點的值寫入對應窗口的虛擬內存空間。接著窗口管理模塊14耦接于第一圖形處理器11以及第二圖形處理器12,并且窗口管理模塊14管理多個窗口 10,以根據預設規則,選擇第一圖形處理器11或第二圖形處理器12合成繪制有圖片的多個窗口 10至硬件緩沖器13,其中硬件緩沖器13為物理地址連續的物理存儲器,其可通過地址和數據總線對其存儲的內容直接進行讀寫,以形成供顯示的圖形用戶界面。
[0057]具體來說,如果將多個窗口分別記為第一窗口、第二窗口……、第η窗口,由第一圖形處理器或第二圖形處理器將第一窗口對應的虛擬內存空間中保存的圖片的各個像素點的值拷貝至硬件緩沖器的物理內存空間,將第二窗口對應的虛擬內存空間中保存的圖片的各個像素點的值與已保存在硬件緩沖器中的第一窗口的各個像素點的值進行合成,并將合成的結果繼續保存在硬件緩沖器中,將第三窗口對應的虛擬內存空間中保存的圖片的各個像素點的值與已保存在硬件緩沖器中第一窗口和第二窗口合成后的各個像素點的值再次進行合成,并將合成的結果繼續保存在硬件緩沖器中……依此類推,直至完成對第η窗口的合成操作,從而形成保存在硬件緩沖器中的圖形用戶界面,進一步通過OSD顯示在屏幕上。
[0058]其中,預設規則可預先設定,可根據第一圖形處理器與第二圖形處理器的狀態或者根據多個窗口的屬性來設置。舉例來說,可以為以下四種:
[0059]第一種:選擇第二圖形處理器12合成繪制有圖片的多個窗口 10。
[0060]第二種:窗口管理模塊14判斷第一圖形處理器11的使用率是否超過預定閾值;若判斷出第一圖形處理器11的使用率超過預定閾值,選擇第二圖形處理器12合成繪制有圖片的多個窗口 10。
[0061]第三種:窗口管理模塊14分別獲取繪制有圖片的多個窗口 10的窗口尺寸,并根據窗口尺寸選擇第一圖形處理器11或第二圖形處理器12合成繪制有圖片的多個窗口 10。
[0062]第四種:窗口管理模塊14分別獲取繪制有圖片的多個窗口 10的層次屬性,其中層次屬性用于指示窗口 10的層次關系,并根據層次屬性選擇第一圖形處理器11或第二圖形處理器12合成繪制有圖片的多個窗口 10。
[0063]當選擇第一種預設規則時,圖形用戶界面顯示的具體過程為:第一圖形處理器11在多個窗口 10中分別繪制用于形成圖形用戶界面的圖片,接著第二圖形處理器12合成繪制有圖片的多個窗口 10至硬件緩沖器13中,從而形成圖形用戶界面。其中,第一圖形處理器為三維圖形處理單元(以下簡稱為3D GPU),第二圖形處理器為二維圖形處理單元(以下簡稱為2D GFX)。
[0064]當選擇第二種預設規則時,圖形用戶界面顯示的具體過程為:第一圖形處理器11在多個窗口