戰(zhàn),解決視頻卡頓和格式不支持)
經(jīng)常有人抱著電腦來問我“為什么我在網(wǎng)上下載的電影雙擊之后彈個(gè)框說不支持或者干脆只有聲音沒有畫面為什么同一個(gè)視頻在別人電腦上流暢播放到我這兒就卡成幻燈片”我一般先反問一句“你用的什么播放器”十有八九答案是系統(tǒng)自帶播放器或者某個(gè)“萬能播放器”的舊版本。其實(shí)這里面的坑很簡單播放器只是外殼真正干活的是背后的解碼器。而完美解碼這類解碼包就是專門把這些坑填平的東西。這篇就來聊聊怎么用完美解碼這類工具把格式兼容和卡頓問題一次解決讓新手不用折騰也能直接看片。我自己用了很多年解碼包從早期的K-Lite到后來的完美解碼期間也替親戚朋友處理過無數(shù)次“視頻打不開”“高清卡頓”的問題。實(shí)話實(shí)說大部分情況根本不用換電腦、不用轉(zhuǎn)格式、不用重裝系統(tǒng)裝對(duì)解碼器、調(diào)對(duì)設(shè)置問題就消停了。這篇文章不整虛的直接講清楚播放器、解碼器、格式之間的真實(shí)關(guān)系再把完美解碼的安裝配置和排障步驟一步步拆開講保證小學(xué)生也能照做。1. 為什么要用完美解碼播放器卡頓和格式不支持的真正根源先說一個(gè)很多人不知道的事實(shí)你電腦上那個(gè)能“雙擊播放”的視頻播放器本質(zhì)上只是一個(gè)殼。它負(fù)責(zé)給你一個(gè)界面、一個(gè)進(jìn)度條、一個(gè)音量鍵但真正把視頻里的壓縮數(shù)據(jù)還原成畫面的是它調(diào)用的解碼器。系統(tǒng)自帶的播放器也好很多體積很小的“綠色播放器”也好為了控制體積或者版權(quán)原因只內(nèi)置了極少數(shù)幾種解碼器所以遇到冷門格式就抓瞎。1.1 從雙擊視頻到畫面出現(xiàn)這中間發(fā)生了什么我習(xí)慣把播放流程分成三步來理解。第一步叫解封裝。你下載的視頻通常是一個(gè)容器文件比如MKV、AVI、MP4、TS這就像一個(gè)快遞盒里面裝了好幾樣?xùn)|西視頻流、音頻流、字幕流、章節(jié)信息。播放器要先通過分離器Source Filter也叫解析器把這個(gè)盒子拆開把里面的視頻軌道、音軌、字幕軌分別拎出來。第二步叫解碼。拎出來的視頻軌道其實(shí)還是壓縮過的一堆數(shù)據(jù)。如果是H.264編碼的就需要H.264解碼器算半天把它還原成一幀一幀的畫面如果是H.265/HEVC、VP9、AV1這些更新的編碼需要的解碼器也不一樣。音頻同理DTS、AC-3、AAC、FLAC都要對(duì)應(yīng)的音頻解碼器。這就像翻譯官每種語言都得有對(duì)應(yīng)的翻譯沒有翻譯就是雞同鴨講。第三步是渲染輸出。解碼出來的原始畫面要交給渲染器畫到屏幕上。渲染器也有講究普通的EVR和功能更豐富的madVR畫質(zhì)有區(qū)別同時(shí)也直接影響播放時(shí)的CPU和GPU占用。你仔細(xì)品一下就明白了一個(gè)播放器如果只內(nèi)置了MP4和H.264的支持那你拿它播MKV封裝的H.265視頻它就只會(huì)給你兩個(gè)結(jié)果——要么提示“格式不支持”要么畫面直接卡死。所以很多“格式不支持”根本不是文件損壞而是播放器缺少對(duì)應(yīng)的解碼器。1.2 完美解碼和普通播放器的本質(zhì)區(qū)別完美解碼并不是一個(gè)純粹的“播放器軟件”它是一個(gè)解碼包加播放器集合體。安裝完之后它會(huì)往系統(tǒng)里注冊(cè)一大堆組件包括LAV Filters、ffdshow等主流解碼器同時(shí)給你裝配好幾個(gè)播放器外殼比如PotPlayer、MPC-HC等。這意味著你不需要自己去一個(gè)個(gè)裝解碼器也不用到處找“綠色版”播放器裝一次就把視頻播放這條鏈路全打通了。普通播放器就像一個(gè)只賣三五種菜的小飯館完美解碼則像一個(gè)大菜市場(chǎng)你常吃的不常吃的菜、各種稀罕調(diào)料都能找到。遇到格式問題你在菜市場(chǎng)里總能找到對(duì)應(yīng)的食材而在小飯館就只能干瞪眼。對(duì)于新手來說完美解碼最大的價(jià)值是“一步到位”。你不需要了解LAV是什么、madVR是什么、為什么要用D3D11硬解裝完默認(rèn)配置已經(jīng)能處理絕大多數(shù)視頻。等以后看的東西多了、要求高了再照著這篇文章去微調(diào)也不遲。2. 核心原理拆解解碼器為什么能決定卡不卡、能不能播知道了解碼器很重要那它到底是怎么影響播放體驗(yàn)的這一節(jié)我把硬解、軟解、渲染器這幾個(gè)詞講清楚。理解了這些你調(diào)起設(shè)置來就有譜了而不是到處瞎點(diǎn)。2.1 硬解和軟解你的電腦到底在用什么干活軟解叫軟件解碼就是完全靠CPU來算硬解叫硬件解碼是交給顯卡里面的專用解碼單元來處理。打個(gè)比方軟解是讓一個(gè)什么都能干但精力有限的雜工處理所有工作硬解就是專門雇了一個(gè)只負(fù)責(zé)“解視頻”的專職專家又快又省力。現(xiàn)在主流的筆記本CPU播放1080P的H.264視頻軟解問題不大但一旦遇到4K分辨率的H.265或AV1視頻軟解就會(huì)讓CPU占用率飆到80%甚至100%于是你就看到了“畫面一頓一頓、聲音正常但畫面跟不上”的狀況。硬解就不一樣了你的顯卡里通常有專門處理H.264、HEVC、VP9、AV1的解碼電路開啟之后播放4K視頻時(shí)CPU占用可能只有10%左右畫面絲滑。完美解碼在安裝時(shí)會(huì)檢測(cè)你的顯卡支持哪些硬解模式然后在播放器的設(shè)置里自動(dòng)配置好DXVA2或D3D11硬解選項(xiàng)。很多人在其他地方下載的“精簡版”播放器為什么播4K卡往往就是制作時(shí)把硬解組件砍掉了或者默認(rèn)設(shè)置里沒有開啟硬解。2.2 新編碼和老編碼的兼容性陷阱“格式不支持”還有一個(gè)隱蔽原因視頻文件的擴(kuò)展名看著是常見的MP4但里面的編碼是新的AV1或者H.265 10bit。這種情況就好比快遞盒子上寫著“易碎品”但打開才發(fā)現(xiàn)里面是個(gè)你從沒見過的新型裝置不會(huì)用。老解碼器遇到新編碼自然會(huì)罷工。反過來也很有意思。老電影、老劇集經(jīng)常是RMVB、WMV這樣的老格式里面還是老舊的RV40、WMV3編碼。有些極簡播放器只支持新格式反而播不了這種老古董。完美解碼自帶的多解碼方案里既兼容新編碼也兼容老編碼所以你在設(shè)置里能看到幾種預(yù)設(shè)比如“全功能”“視頻編碼優(yōu)先”“兼容優(yōu)先”等把老格式也照顧到了。這也就是為什么遇到格式問題我的建議永遠(yuǎn)是先補(bǔ)解碼器而不是急著用格式工廠轉(zhuǎn)碼。轉(zhuǎn)碼是需要重編碼的一部兩小時(shí)的電影轉(zhuǎn)一次可能耗時(shí)二十分鐘到一小時(shí)而且畫質(zhì)會(huì)有不可逆的損失。補(bǔ)解碼器方案基本是零損耗播放體驗(yàn)也沒變化。2.3 渲染器對(duì)畫質(zhì)和流暢度的影響再說渲染器因?yàn)楹芏嗳瞬シ趴D的根本原因是渲染器設(shè)置不對(duì)。視頻經(jīng)過解碼器變成原始畫面數(shù)據(jù)后需要有一個(gè)“放映員”把這些數(shù)據(jù)投射到屏幕上這個(gè)環(huán)節(jié)就是渲染器。常見的渲染器有EVR、EVR-CP、madVR、內(nèi)置DXVA渲染器等。EVR省資源適合老電腦和日常使用madVR畫質(zhì)調(diào)校上限高但極其消耗顯卡資源需要好顯卡才跑得動(dòng)。如果你在網(wǎng)上下載的某個(gè)播放器配置里默認(rèn)選了madVR而你的電腦又沒有獨(dú)立顯卡那播放時(shí)99%會(huì)卡。完美解碼的播放方案里默認(rèn)不太會(huì)給普通用戶開madVR通常優(yōu)先用兼容性好、資源占用低的渲染器。這正好避免了新手一上來就被“畫質(zhì)玄學(xué)”坑住。我的建議是普通電腦老老實(shí)實(shí)用默認(rèn)渲染器只有顯卡性能很強(qiáng)的玩家再去折騰madVR。3. 新手零踩坑實(shí)操安裝、配置與卡頓優(yōu)化理清了原理下面進(jìn)入實(shí)操。這套流程我給別人裝機(jī)裝過上百次按步驟走基本不會(huì)出問題。3.1 下載與安裝認(rèn)準(zhǔn)官方渠道注意組件勾選先說下載完美解碼是個(gè)人開發(fā)者作品建議去它的官網(wǎng)下載。下載時(shí)留意文件名和安裝過程不要去那種下載站點(diǎn)“高速下載”那些按鈕很容易帶全家桶。這是我反復(fù)強(qiáng)調(diào)的一點(diǎn)軟件本身的坑不多下載渠道的坑倒是不少。安裝時(shí)推薦選“標(biāo)準(zhǔn)安裝”或“完整安裝”把播放器外殼和解碼組件都裝上。安裝完成后系統(tǒng)里會(huì)有多種播放器外殼。我一般推薦新手用完美解碼自帶的PotPlayer作為日常播放器因?yàn)樗慕缑婧唵巍⒖旖萱I豐富、掛字幕方便如果追求極簡干凈用MPC-HC也很好幾乎沒有多余功能閉著眼睛用。組件勾選時(shí)注意別把“LAV Filters”取消。這是整個(gè)解碼方案的骨架分離器、視頻解碼、音頻解碼很多都靠它。有的版本還提供了ffdshow作為備選新手不用深究默認(rèn)安裝即可。安裝完成后重啟一次再播放主要是讓系統(tǒng)級(jí)的解碼器注冊(cè)生效避免個(gè)別組件加載異常。3.2 第一次打開把播放方案設(shè)置對(duì)打開完美解碼自帶的播放器后先別急著點(diǎn)視頻。第一個(gè)建議是找到“選項(xiàng)”里的“解碼方案”或“濾鏡/解碼器管理”頁這里通常有預(yù)設(shè)方案比如“兼容模式”“DXVA硬解模式”“高性能模式”等。如果是近幾年的電腦帶核顯或獨(dú)顯建議選“DXVA硬解”相關(guān)方案這樣播放4K、H.265這類高碼率視頻時(shí)會(huì)自動(dòng)走顯卡硬解。如果是很老的電腦顯卡不支持硬解那就選“兼容模式”讓CPU來干活。選好之后確認(rèn)保存播放器會(huì)要求重啟照做就行。這里解釋一下為什么完美解碼能在一個(gè)設(shè)置頁里幫你搞定它的解碼方案里內(nèi)置好幾套“濾鏡配置模板”每套模板對(duì)應(yīng)不同的硬件條件和觀看偏好。你不需要懂每個(gè)濾鏡的具體參數(shù)只需要告訴它“我是新電腦”或“我是老電腦”就行。對(duì)新手來說這比自己去下一個(gè)國際版播放器然后看英文菜單折騰半天要友好得多。3.3 針對(duì)卡頓的六個(gè)關(guān)鍵設(shè)置我逐個(gè)說清楚有時(shí)候默認(rèn)配置已經(jīng)不錯(cuò)但還是卡。這時(shí)手動(dòng)調(diào)這六個(gè)地方命中率極高。第一個(gè)是硬件加速。在PotPlayer的設(shè)置里路徑大致是“設(shè)置 - 濾鏡/解碼器 - 硬件加速”把“使用硬件加速解碼”選為“DXVA2”或“D3D11VA”。具體選哪個(gè)看你的顯卡新舊N卡和A卡通常都能用Intel核芯顯卡選“DXVA2”比較穩(wěn)。打開以后播4K視頻CPU占用率會(huì)明顯降下來。第二個(gè)是優(yōu)先使用內(nèi)置解碼器。在“濾鏡/解碼器 - 內(nèi)置解碼器”里勾選“使用內(nèi)置視頻解碼器”和“使用內(nèi)置音頻解碼器”。內(nèi)置解碼器是PotPlayer自帶的LAV解碼器兼容性已經(jīng)很成熟。如果外部解碼器配置混亂導(dǎo)致沖突切回內(nèi)置往往能救急。第三個(gè)是渲染器調(diào)整。路徑在“視頻 - 視頻渲染器”選擇“內(nèi)置Video Renderer”或者“EVR增強(qiáng)視頻渲染器”。不要選madVR除非你的顯卡很能打。這里對(duì)應(yīng)前面講的原理避免渲染器拖后腿。第四個(gè)是關(guān)閉不必要的后處理。很多播放器默認(rèn)會(huì)開一堆畫質(zhì)增強(qiáng)選項(xiàng)比如去噪、銳化、降噪、倍幀。這些功能對(duì)老片源有一定效果但在新電腦上也可能白白吃掉性能。流暢度優(yōu)先的話全部關(guān)掉。我日常播放都是全關(guān)的因?yàn)楫嬞|(zhì)主要由片源本身決定后處理帶來的改變很有限。第五個(gè)字幕渲染方式。看視頻如果加載了ASS特效字幕字幕渲染也會(huì)吃CPU。在“字幕 - 字幕渲染器”里選“內(nèi)置字幕渲染器推薦”并打開“硬件加速”字幕繪制。碰到特別復(fù)雜的特效字幕還可以把“動(dòng)態(tài)特效”選項(xiàng)關(guān)掉雖然少了些花哨效果但播放流暢度立刻回升。第六個(gè)是網(wǎng)絡(luò)流媒體的緩沖與解碼。如果你用播放器直接看網(wǎng)絡(luò)串流或局域網(wǎng)NAS上的視頻卡頓可能跟解碼無關(guān)而是緩沖設(shè)置太小。在設(shè)置里找“緩沖/緩沖控制”把網(wǎng)絡(luò)緩沖調(diào)大一些比如從默認(rèn)的幾秒調(diào)到幾十秒。注意這個(gè)選項(xiàng)不是每個(gè)播放器都有但完美解碼自帶的播放器通常都可以調(diào)。這六個(gè)設(shè)置我按優(yōu)先級(jí)排了個(gè)序如果一上來不知道怎么弄就先做第一項(xiàng)和第三項(xiàng)一般是收益最大的。4. 高頻問題速查格式與播放異常自救手冊(cè)理論和實(shí)操都講完了平時(shí)遇到最多的那批問題我直接整理成速查表大家對(duì)照著處理。很多問題看著嚇人其實(shí)就是一個(gè)設(shè)置的事。現(xiàn)象根本原因解決辦法提示“格式不支持”或文件打不開缺少對(duì)應(yīng)分離器或解碼器安裝完整版完美解碼確認(rèn)LAV Filters已啟用選擇“全功能”預(yù)設(shè)MKV文件只有聲音沒有畫面視頻解碼器不識(shí)別常見HEVC 10bit開啟硬件加速優(yōu)先使用內(nèi)置視頻解碼器MP4文件有畫面但沒有聲音音頻解碼器不支持常見DTS/AC-3音軌在音頻解碼器設(shè)置里啟用LAV Audio Decoder勾選DTS、AC-3播放4K視頻卡成幻燈片未開啟硬解或渲染器太重設(shè)置里開啟DXVA2/D3D11VA硬解渲染器改為內(nèi)置或EVR老電影RMVB提示無法播放老編碼不在默認(rèn)支持范圍解碼方案切換為“兼容優(yōu)先”啟用ffdshow備選解碼器字幕顯示亂碼外掛字幕文件編碼不對(duì)字幕文件用記事本另存為UTF-8編碼或在播放器里強(qiáng)制字幕編碼為簡體中文播放網(wǎng)絡(luò)串流頻繁緩沖緩沖大小過小或解碼器沖突調(diào)大網(wǎng)絡(luò)緩沖關(guān)閉內(nèi)置濾鏡里的特殊選項(xiàng)畫面發(fā)灰、顏色不對(duì)HDR視頻在普通顯示器上渲染錯(cuò)誤渲染器設(shè)置為內(nèi)置DXVA播放器開啟HDR轉(zhuǎn)SDR映射這張表我維護(hù)了好幾年大部分問題都能在這里找到答案。下面挑幾個(gè)特別典型的展開說說排查思路。4.1 有畫面沒聲音、有聲音沒畫面的真正排查思路很多新手遇到“有畫面沒聲音”第一反應(yīng)是重裝播放器。我的經(jīng)驗(yàn)是先按一下鍵盤上的方向鍵快進(jìn)幾秒如果聲音在快進(jìn)后出現(xiàn)了那就是音軌同步問題重啟播放器或者換渲染器就能解決如果始終沒聲音那多半是音頻解碼問題。檢查方法很簡單右鍵點(diǎn)擊視頻窗口找到“音頻”或“音頻流”菜單看看有沒有正常識(shí)別出音軌。如果顯示了音軌但還是沒聲音進(jìn)“設(shè)置 - 濾鏡/解碼器 - 內(nèi)置音頻解碼器”把輸出通道設(shè)為“未解碼的源碼輸出”試一次看是不是常規(guī)音量輸出被某個(gè)濾鏡截?cái)嗔恕7催^來有聲音沒畫面通常是視頻解碼環(huán)節(jié)出了問題。老顯卡播不了新編碼的新視頻很常見。此時(shí)除了開硬解還可以切換播放器外殼試試比如PotPlayer不行就換MPC-HC因?yàn)閮烧邇?nèi)置的解碼器調(diào)用順序不同經(jīng)常能救回來一個(gè)。4.2 字幕相關(guān)的坑踩一次就記得字幕看起來是小事情實(shí)際上水很深。常見的坑有三個(gè)一是字幕文件是GBK編碼但播放器默認(rèn)按UTF-8讀取于是滿屏亂碼。解決辦法很粗暴用記事本打開字幕文件另存為的時(shí)候把編碼改成UTF-8再掛上去就好了。二是有特效字幕文件本身沒問題但電腦配置太低播放時(shí)一遇到動(dòng)態(tài)特效就卡頓。這種情況去字幕設(shè)置里把“動(dòng)態(tài)字幕效果”關(guān)閉。三是字幕字體有問題一些特殊字體的ASS字幕在系統(tǒng)沒裝對(duì)應(yīng)字體時(shí)會(huì)退化成默認(rèn)字體排版錯(cuò)亂。安裝字體并不難雙擊字體文件點(diǎn)“安裝”即可但如果你不想被字體折騰直接關(guān)閉字幕渲染器里的“使用字體集合”選項(xiàng)也能緩解。4.3 播放器的“重裝大法”注意事項(xiàng)最后再說一個(gè)很多人會(huì)踩的坑。有的用戶遇到播放問題第一反應(yīng)是卸載播放器再重裝甚至卸載完美解碼。這里有個(gè)隱蔽的問題完美解碼卸載后系統(tǒng)里注冊(cè)的解碼組件可能沒有完全清理干凈導(dǎo)致系統(tǒng)其余播放器的解碼環(huán)境反而更亂了。正確做法是如果一定要重裝先在“控制面板”里卸載完美解碼卸載過程中如果提示是否清理解碼器設(shè)置選擇“是”然后再重新安裝。這樣比直接刪除安裝目錄干凈得多。安裝目錄里那些文件直接刪掉是不能徹底卸載的因?yàn)镈LL組件已經(jīng)在注冊(cè)表里扎了根。另外提醒一句不要同時(shí)裝兩套大型解碼包。有的用戶追求“保險(xiǎn)”裝了完美解碼又裝另一個(gè)解碼包結(jié)果兩個(gè)包的濾鏡互相搶順序反而出現(xiàn)了之前沒有的沖突問題。解碼器并不是越多越好一套完整方案就夠了。4.4 播放音軌和字幕源的選擇技巧多音軌視頻在很多電影文件里很常見。有些文件封裝了國語和原聲兩條音軌默認(rèn)播放可能走了一條你不想要的。要切換音軌右鍵點(diǎn)擊視頻找“音頻流”菜單即可非常方便。選擇音軌后播放器通常會(huì)自動(dòng)記住部分播放器還支持記憶設(shè)置下次打開就不用重新切了。字幕優(yōu)先級(jí)也可以設(shè)置在“字幕 - 字幕與同步”里把“優(yōu)先使用外部字幕”打開這樣只要視頻同目錄下放了和文件同名但后綴為srt或ass的字幕文件就會(huì)自動(dòng)加載。遇到那種把字幕封裝在MKV里的視頻也可以在“字幕流”菜單里手動(dòng)選擇。結(jié)尾裝完美解碼這么多年我最深的體會(huì)是很多人以為自己需要一臺(tái)新電腦其實(shí)只需要把解碼環(huán)境理順。處理播放問題的時(shí)候不要一上來就轉(zhuǎn)格式重裝系統(tǒng)先判斷是分離器的鍋、解碼器的鍋還是渲染器的鍋對(duì)癥下藥問題往往幾分鐘就能解決。個(gè)人的習(xí)慣是把解碼方案調(diào)整好后就放著別動(dòng)沒必要頻繁追新版本穩(wěn)定看片比什么都重要。希望這篇能幫你在看片的路上少走幾步彎路。