2013-06-25 81 views
3

我一直未能找到關於此主題的任何信息。AS3 vs JPG vs PNG的CPU性能

那麼,就運行時性能而言哪個更好:JPG還是PNG?有什麼區別嗎?有沒有人做過測試?

一個方面是在將JPG或PNG加載到BitmapData時使用了多少CPU。我認爲在加載到BitmapData時都會轉換爲原始像素數據,因此,作爲壓縮格式的JPG會佔用更多的CPU週期。

另一方面是渲染。如果我的直覺是對的,那麼渲染成本應該沒有差別。

您認爲如何?

+2

您是否回答了儘可能多的方面?例如,我懷疑當blitting時將透明PNG的像素複製到位圖時,兩者之間的差異會更明顯。 – Marty

+0

是的,顯然alpha通道添加更多數據。它應該影響CPU的性能......但多少? – Pier

+0

基準測試很容易在這裏完成,但我不確定PNG和JPEG之間的關係是如何工作的;即,我不確定與具有Alpha通道的JPEG相同尺寸的PNG與沒有Alpha通道的PNG相比是否同樣不同。這可能會使JPEG和PNG的基準測試結果難以準確地相互關聯。 – Marty

回答

2

查看傑克遜鄧斯坦的優秀帖子。我做了相關的話題主要結論的副本:

http://jacksondunstan.com/articles/2117

JPEG是加載/解壓縮速度最快的格式。這是三倍以上一樣快,PNG

http://jacksondunstan.com/articles/2134

上週的一篇名爲PNG慢3倍比JPEG加載。但是,這僅適用於ARGB(全綵色)PNG。灰度PNG的速度提高了40%,並且編制索引的時間不到ARGB PNG的一半。

所以,如果你不打算使用alpha通道,最好使用JPG的CPU性能。

+0

非常好。但是渲染呢?解壓後,其中一個或另一個有什麼不同? – Pier

+2

解壓後都是BitmapData,因此渲染速度沒有任何區別,只是alpha像素需要更多資源,因爲flash必須計算所有下劃線像素以獲得最終結果。 – fsbmain