硬件加速播放的工作原理

硬件加速播放的工作原理

ID:35490755

大?。?8.82 KB

頁(yè)數(shù):3頁(yè)

時(shí)間:2019-03-25

硬件加速播放的工作原理_第1頁(yè)
硬件加速播放的工作原理_第2頁(yè)
硬件加速播放的工作原理_第3頁(yè)
資源描述:

《硬件加速播放的工作原理》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)。

1、硬件加速播放的工作原理DXVA是視頻硬件加速的統(tǒng)稱,不僅僅是視頻數(shù)據(jù)解碼(包扌舌H261,MPEG1,MPEG2,H263,MPEG4),還有Alphablending,Pictureresampling等。但對(duì)于播放時(shí)CPU利用率影響最大的,則是視頻解碼,尤其是IIDTV的解碼。對(duì)于低端系統(tǒng)來說,讓GPU來負(fù)責(zé)硬件解碼是不二Z選。但使用硬件解碼,在整個(gè)功能上也受到很多限制,尤其是解壓以后的視頻數(shù)據(jù)的后期處理(如deinterlace,銳化,去馬賽克).因此對(duì)于追求畫質(zhì)的燒友,寧可放棄硬件解碼,當(dāng)然代價(jià)是需要升級(jí)整個(gè)系統(tǒng)。稍后再談。硬件

2、解碼生效的時(shí)候,系統(tǒng)是怎么運(yùn)轉(zhuǎn)的呢?現(xiàn)在我們有兩個(gè)處理器,CPU和GPU。他們通過PCI/AGP/PCIE總線交換數(shù)據(jù)。loCPU從文件系統(tǒng)里讀岀原始數(shù)據(jù)(DirectSHOW的源濾鏡),分離出壓縮的視頻數(shù)據(jù)(分離器)。放在系統(tǒng)內(nèi)存中。GPU發(fā)呆2OCPU把壓縮視頻數(shù)據(jù)交給GPU,這時(shí)總線上開始忙了,壓縮數(shù)據(jù)從系統(tǒng)內(nèi)存拷貝到顯卡上的顯存里。3.CPU要求GPU開始硬件解碼,現(xiàn)在CPU進(jìn)入發(fā)呆期,GPU開始忙。當(dāng)然CPU會(huì)定期查詢一下GPU忙的怎么樣了。4oGPU開始用自C的電路解碼視頻數(shù)據(jù)(已經(jīng)在顯存里了),解壓后的數(shù)據(jù)還是放在顯存里面

3、。CPU繼續(xù)發(fā)呆。5.視頻數(shù)據(jù)剛解碼完成以后還不能立刻拿去顯示,因?yàn)檫€需要后期處理,如deinterlace,3:2pulldown,等等。GPU再用自己的后期處理電路來進(jìn)行處理。CPU還是發(fā)呆6o后期處理以后的未壓縮數(shù)據(jù)拿去顯示到屏幕上,GPU再開始忙視頻的縮放,亮度,ganmia等事情。CPU述是閑7.GPU終于忙完了,下面的視頻數(shù)據(jù)在哪里?通知CPU,GPU先歇會(huì)。CPU又開始忙了,回到第1步。上面可以看到,皺件解碼生效的時(shí)候,CPU真的可以很閑,但是為了讓它生效,有些條件必須滿足。最關(guān)鍵的原因是,與CPu->系統(tǒng)內(nèi)存和GPU—〉

4、顯卡顯存比起來,PCI、AGP、PCIE總線是龜速。PCI是133MB/S,AGP8X是2?1GB/S,PCIE16X是4GB/S,而CPU-系統(tǒng)內(nèi)存,GPU—顯存則快若干倍。有興趣的可以把不同時(shí)代的內(nèi)存總線和AGP/PCTE總線速度進(jìn)行一下對(duì)比。因?yàn)镃PU和GPU互連的總線很慢,因此,視頻數(shù)據(jù)(無論是解壓前還是解壓后)一旦交給GPU,GPU就要負(fù)責(zé)把它處理完,直到最終顯示。如果在前面1—5步里有哪一步GPU不能做或你不讓它做,視頻硬件解碼就不生效,CPU要負(fù)責(zé)。當(dāng)然,你可能會(huì)問,也許CPU很慢,說不定在龜速總線上傳輸數(shù)據(jù),GPU分擔(dān)一

5、部分工作,還是比全部CPU做要快呢?也許如此,但在Directshow架構(gòu)里,代表視頻數(shù)據(jù)處理各環(huán)節(jié)的濾鏡(分離器,解碼器,后期處理,渲染器)需要協(xié)商岀一個(gè)大家都接受的視頻數(shù)據(jù)存儲(chǔ)方式,如果某個(gè)濾鏡說我只能在系統(tǒng)內(nèi)存里玩,大家都得要在內(nèi)存里玩,GPU和顯存只好放棄。了解了這樣的步驟,我們看什么時(shí)候碩件解碼會(huì)失敗。1.GPU自己沒辦法獨(dú)立搞定解碼,比如太老的顯卡,顯存太少,或者象GF2MX,GF4TI這種太監(jiān)(MC和IDCT只支持一個(gè))。注:這里有錯(cuò)誤?。?!2.GPU的視頻后期處理太差勁,你要找其他軟件來做,這個(gè)對(duì)于發(fā)燒友是很常見的情況,

6、比如放DVD加ffdshow銳化倍線。ffdshow只能在系統(tǒng)內(nèi)存里工作,它沒辦法把手仲到顯卡顯存上,那么硬件解碼只好讓位給軟件解碼。3o非常常見的一個(gè)情況,就是用vobsub加字幕。vobsub濾鏡是加在解碼器之后,渲染器之前的。它怎么把字幕放到圖像上去?原始圖像進(jìn)來,它修改原始圖像,把字幕的圖案畫上去,再送給后面的渲染器(或者別的后期處理濾鏡)。vobsub同樣只能在系統(tǒng)內(nèi)存里工作,ok,解碼也要軟件了。vobsub不能用,那字幕要怎么加?所幸渲染器捉供了混合模式,就是把幾種視頻數(shù)據(jù)揉在一起,這些數(shù)據(jù)可以是在系統(tǒng)內(nèi)存中(軟件解碼或軟

7、件生成),也可以是在顯卡顯存屮(硬件解碼)。最大的好處是各種視頻數(shù)據(jù)可以獨(dú)立生成,不會(huì)互相牽制??梢杂布鈮旱挠糜布鈮?,可以軟件生存的用軟件生存。(類似電路里串聯(lián)和并聯(lián)的關(guān)系)、哪些軟件呢?比如MPC,KMP,BSPlaycr,他們自帶字幕引擎。jfljZoomPlayer借助于vobsub生成字幕。只能用軟解壓。MediaPlayerClassic(MPC),不要把它和暴風(fēng)影音等套件混起來。MPC是一個(gè)播放器內(nèi)帶了一些濾鏡和字幕工具,全部是Gabest這個(gè)牛人開發(fā)的Opensource軟件,暴風(fēng)里除了MPC以外還有一堆其他公司的濾鏡

8、,包括vobsub,理論上可能冇版權(quán)問題ovobsub雖然也是gabest開發(fā)的,但它顯示字幕的工作方式和MPC里的不同。vobsub在視頻數(shù)據(jù)交給渲染器之前插入字幕,MPC把視頻數(shù)據(jù)和字幕分開,一起交給渲

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。