• 2

為什麼HTC總是停留在65000色

HTC手機一脫拉庫
但幾乎都是65000色的螢幕
雖然說解析度才是重點
但是顏色豐富度還是有差阿(去和3GS比較就看的出來)
難道WM不能支援更高的顏色數嗎???
應該不是吧....我記得SAMSUNG就有1670萬色的...
2009-11-12 19:16 發佈
文章關鍵字 HTC 65000
chimonkey wrote:
HTC手機一脫拉庫但...(恕刪)




os limited.....
My SE X1 rom-> http://forum.xda-developers.com/forumdisplay.php?f=471
jackleung wrote:
bull shit,...(恕刪)

Wednesday, September 07, 2005 4:15 PM
整整四年多前的文章???
...Modern LCD screens, however, are capable of showing four times that many (262144).....
有沒有人總結下該文章講什麼,太長太複雜。
WindowsCE可以支援16bit(65536色)或32bit(1677萬色)
但是32bit color繪圖速度會慢一倍.......所以通常手機不會做到32bit color.
而且目前手機螢幕頂多支援到18bit(26萬色).
跑全彩32bit也只能顯示到18bit.
為了這一點點差異讓繪圖速度慢一倍不太划算.

通常手機做會超過16bit的情形是....解析度太低,
例如你用一樣的晶片但是只做320x240, 而不是更高解析度.
這時硬體效能多到有剩, 就可以讓它跑32bit也不太影響效能.
那篇有段說到 "Windows CE支援24-bit color (1600萬色),如果OEM真的想用這
個格式去支援18-bit color (26萬色 每一點浪費6bit),也是可以的。"

目前找到的兩個「據說是」WM支援26萬色螢幕顯示的例子:

Toshiba TG01 <- 256K色,但後來找到的規格好像還是65K色,不知是否為筆誤
Acer F1(neo touch) <- user manual 上面寫支援262K色,但有人寫65K effective...

很巧的是,它們用的都是Snapdragon 平台。(Samsung Omnia II 似乎是65K,
雖然那塊AMOLED號稱可以到1600萬色,若沒去用它也是枉然)

jackleung wrote:
bull shit,...(恕刪)


這的確是 OS 限制。老兄你引用的文章中提到 Windows CE supports both forms of 24 bit color (24 and 32 bits). 這不代表 Windows Mobile support。 Windows CE 跟 Windows Mobile 是不一樣的作業系統。

在 Windows Mobile,透過 API 寫到 frame buffer 的顏色格式一定是 RGB565,所以就算螢幕支援 24 bit,你還是只能看到 16 bit 的顏色數。
errr..... Windows Mobile是建立在Win CE的架構上~~~所以兩者可以說是一樣的東西!!!

以目前的CPU架構來說, 都是8bit data friendly! 所以在處理8bit,16bit,32bit 的資料是很夠力的!(當然最好是16/32bit的架構)

如果要顯示262144色,需要的是18bit 的data. 因為不在8bit 標準CPU設計處理資料的範圍內,所以並不是很有效率!(18bit的顏色格式是 RBG666)

一個pixel(映像點)是16bit格式,以現在的CPU多半為處理32bit的設計,一次可以寫到兩個pixel! 如果硬是要他寫成18bit的格式~~第一個點可以寫完整(16bits)~~~但第二個pixel以後的pixel會將前一個pixel的部分資料寫入並寫入部分下一個pixel的部分資料!以此類推~~要一直寫到第16個pixel才會又是完整的data!! 因為這個緣故~~~18bit RBG666並非原生顯示且基本上沒有任合作業系統支援! 目前市面上如果有看到顯示262144色畫素的銀幕,基本上是設計成支援24bit, 但是在處理顯示資料時會把24bit資料裡的6個bits刪掉!! (16bits+8bits-6bits = 18bits)

另一個因素就是frame buffer....! 如果要顯示24bit顏色,和16bits相比,需要50%~100%更多的fram buffer空間! 且相同的~~也需要50%~100%更多的時間來將資料寫入這些buffer! 如果要以同樣的頻率來更新銀幕顯示~~~看影像檔和玩遊戲一定會讓系統處裡更吃重!

或許當snapdragon (1G) 更普及的話~~~也許會有更多廠商開發支援的手機!!
手機晶片Data bus都是一次存取只能寫入16或32bit.
snapdragon也是32bit bus. 早期的PPC晶片則是16bit bus.
而18bit和24bit硬體都不直接支援.
通常要24bit color, 顯示晶片硬體會直接做成每Pixel 32bit (多出的8bit無法使用)
因為這樣 硬體比較有效率
例如windows的Nvidia驅動的選項就只有16或32可以選.

32bit bus每cycle只能寫入1個32bit pixel.....卻可以寫入2個16bit.
超過16bit以後, 繪圖速度一定會掉到1/2.
  • 2
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?