AVIVO HD與PUREVIDEO HD技術(shù)對比介紹(下)
可以看出,AMD上一代的高清視頻硬件解碼技術(shù)并不完美,到了HD 2000系列,Radeon HD 2600系列(RV630),Radeon HD 2400系列(RV610)圖形芯片當中集成專門的UVD硬件單元(通用視頻解碼器),完全負責硬件加速處理Bitstream Processing( 碼流處理)和Entropy Decode(熵解碼),由Shader著色單元來硬件加速Frequency Transform(頻率轉(zhuǎn)換)、Pixel Prediction(像素預測)和Deblocking(環(huán)內(nèi) 解塊濾波)過程,即Avivo HD。
NVIDIA早在GeForce 6時代就開始引入HD視頻解決方法-PureVideo,實現(xiàn)硬件加速,其實其原理就是通過驅(qū)動利用可編程GPU的空閑運算能力對編碼進行加速,實際上這并非完整的硬件解碼,有相當一大部分是GPU通過軟件來完成,但不論如何很大程度的分擔了CPU的壓力。 并且在畫質(zhì)上也有一定的改觀。
前代的PureVideo的硬件組成部分只有一個VP(視頻處理器,Video Processcor),并且這個VP的處理能力以及性能還是比較低下。到了G84,NVIDIA在GPU里不僅重新設(shè)計了一個功能更強強大的新的視頻處理器,并且增加了一個 熵解碼處理器引擎,NVIDIA稱為BSP ENGINE(Bitstream Processcor ENGINE)。新的視頻處理器(NEW VP或者是VP2)可以對MPEG-2,VC-1,H.264進行實時解碼,包含了最近比較流行的第三代視頻編碼。而Bitstream Processcor ENGINE則主要針對H264的CABAC/CAVLC這兩種 熵編碼進行解碼。
前面說過H.264標準采用的熵解碼有兩種:一種是基于內(nèi)容的自適應(yīng)變長編碼(CAVLC)與統(tǒng)一的變長編碼(CAVLC)結(jié)合;另一種是基于內(nèi)容的自適應(yīng)二進制算術(shù)編碼(CABAC),也就是 主要檔次。CAVLC與CABAC根據(jù)相臨塊的情況進行當前塊的編碼,以達到更好的編碼效率。CABAC比CAVLC壓縮效率高,但要復雜一些,對硬件要求會更高一些。 CABAC (CAVLC 也同樣)是一個不會損傷畫面的無損編碼,但是會降低編碼和解碼的速度。
初步看之下PUREVIDEO HD以用AVIVO HD都擁有了完整的硬件解碼功能,事實上則不然,兩家在對視頻編碼的支持上有一些出入。
首先就是兩家視頻加速技術(shù)對MPEG2的并非全硬件解碼,相當多的一部分交給了CPU去軟解壓,這一點上相信沒有多少人會有異議,畢竟MPEG2本身對硬件損耗就非常低,再通過部分硬件解碼,其CPU占用率已經(jīng)降得相當?shù)偷囊粋€地步,這在我們后面的測試中也得到證實。
而在對相當損費資源的H.264編碼時,兩家也采用了統(tǒng)一的態(tài)度,完全的硬件解碼,徹底解放CPU瓶頸,這使得H.264在兩家新顯卡上解碼不再是問題。
另外,對于VC-1,ATI/AMD和NVIDIA的態(tài)度就有所差異了。ATI/AMD認為,VC-1作為和H.264新一代HDTV標準編碼,同時又有比較高的CPU占用率,所以仍然采用與H.264一樣的全程VC-1解碼(這也就是為何2600xt集成如此多晶體管的一個原因);而NVIDIA則認為,VC-1盡管占用比較高,但進行部分解碼之后,低端CPU仍然能勝任解碼工作,并且隨著CPU主頻的提升,這一狀況會得到緩解。另外NVIDIA同時也認為,現(xiàn)在主流CPU即使軟解也才70%的CPU占用,再加上PUREVIDEO HD分擔一部分后則僅有40%左右的占用,在不進行其它大型任務(wù)的情況下,與0%CPU占用沒有任何區(qū)別。
這一點上是仁者見仁智者見智,按照筆者個人看法,所有硬解碼在未來都會給軟解碼所代替,而現(xiàn)在筆者即使是在解碼CABAC 40m碼率的片源時使用采用軟解碼,就為了保證畫質(zhì)以及可以隨心換解碼器;另外一方面,有總比沒有好,哪天筆者要是沒了3.6G的Conroe,使用一顆Athlon64 3000+時,帶有全程解碼VC-1以及H264的AVIVO HD顯然會更好一些。