之前的 MPC 系教程和 madVR 教程都有些過時了。老教程直接通過註冊表來設置雖然簡單直接,但不利於維護,索性重新寫一篇。

mpv 的教程 類似,本教程只提及最具普適性的選項,不為播放「高清病毒」,也不追求「極限畫質」而故意榨取 CPU 和顯卡性能。

本教程基於 K-Lite Codec Pack Full,其中已經包含了 MPC-HC 和 madVR。MPC-HC 現在已由 clsid2(原 MPC 6.4.9.1 開發者)接手繼續開發,而 madVR 應該已經不需要再多做介紹。

madVR 其實並不需要很高的硬件性能就可以達到相當好的效果,所以默認建議使用。如果你不想使用 madVR,也可以選擇 K-Lite Codec Pack Standard 或者 MPC-BE。我們不推荐使用 PotPlayer

安裝

直接從前文給出的 K-Lite Codec Pack 官网链接下載安裝包,運行即可。安裝過程中的大部分選項都可以保留默認,除了下面這兩處:

– 因為我們要默認使用 madVR 作為視頻渲染器,所以這裡要選擇「Video renderer: madVR」

(當然,如果你不用 madVR,這裡保留默認的「MPC Video Renderer」就好)

– 為了保證播放穩定可靠,我們一般建議只使用軟件解碼(見後文補充說明)

友情提示,K-Lite Codec Pack 安裝包可能捆綁有贊助推廣軟件,不需要的話記得留意把它取消安裝。

簡單配置

K-Lite Codec Pack 默認使用 MPC-HC 作為播放器,對於大部分常見的視頻文件格式和編碼都默認使用 LAV 分離器和解碼器,設置都沒有什麼需要特別修改的地方。你只需要看看播放器的其他行為設置,讓它更符合你的操作習慣即可,例如啟動時默認進入全屏模式、快捷鍵等等。

如果你不用 madVR,默認會使用 MPC Video Renderer 作為渲染器,默認設置也不需要改動。

madVR 配置

如果你使用 madVR,接下來我們還有一些關於 madVR 的配置建議。

– 如果你正在使用顯示器自帶的出廠色彩校正模式,或者是已通過硬件校色校準的顯示器,可以在這裡選擇「this display is already calibrated」,並在下方選擇對應的色域,例如 sRGB 則選擇「BT.709」(sRGB 和 BT.709 的色域是完全相同的),DCI-P3 則選擇「DCI-P3」,gamma 一般保留默認的「pure power curve 2.20」即可:

當然,如果你通過軟件對屏幕進行了校色,這裡應該選擇「calibrate this display by using eternal 3DLUT files」,詳見後文補充說明。

– 打開 madVR 自帶的去色帶功能,強度保持默認的「low/high」即可。色帶是最為常見的視頻瑕疵之一,默認啟用去色帶是利遠大於弊的:

– 很多時候,我們的顯示器刷新率不是片源幀率的整數倍(例如顯示器刷新率通常為 60 Hz 而動畫通常為 23.976 fps),此時會因每一幀實際在屏幕上的呈現時間不均等而造成卡頓感(俗稱 3:2 pull down judder)。madVR 的 smooth motion 功能正是為此設計,建議默認打開:

– madVR 自帶的各種縮放算法(scaling algorithms)是其最大特色之一。這裡我們提供三套推薦的縮放算法相關配置,按對性能的要求分為低、中、高三檔:

chroma upscaling image downscaling image upscaling
Cubic (Bicubic50) Cubic (Bicubic50) + LL Lanczos (3 taps) + SL
Cubic (Bicubic50) + AR Cubic (Bicubic50) + LL + AR (relaxed) Jinc + AR + SL
super-xbr (100) + AR SSIM (1D – 100%) + LL + AR (relaxed) NGU Sharp (medium)
  • LL =「scale in linear light」
  • SL =「scale in sigmoidal light」
  • AR =「activate anti-ringing filter」
  • NGU Sharp 除了選擇「luma doubling」質量以外,其餘全部保留默認的「let madVR decide」即可
  • 需要指出的是,這裡對性能要求的高低並不絕對等同於畫質的高低,「低」檔設置的質量其實已經相當好了,而「高」檔設置在一些低質量片源上反而有可能放大片源瑕疵。綜合來說我們最推薦「中」檔設置,是在畫質、功耗和泛用性之間較為平衡的選擇。

    以「中」檔為例,設置完成後應該是如下圖的狀態:

    在完成本文的配置後,你可以打開一個碼率較高的視頻,按下 Ctrl + j 觀察顯示的 dropped frames、delayed frames 和 presentation glitches 這幾項計數,如果播放一段時間後這幾個數字都保持穩定沒有增加,則基本可以確定視頻播放沒有什麼問題了:

    madVR 功能很豐富,這裡不打算一一詳解。再次推薦有意了解的同學閱讀暮星(万年冷冻库)的这篇文章

    使用 XySubFilter with libass 字幕渲染器

    對 Windows 平台上字幕渲染器的歷史有些了解的朋友大概都知道 VSFilter (DirectVobSub) 到 xy-VSFilter/XySubFilter 的演化過程。原版 VSFilter 早已作古,其改版 xy-VSFilter/XySubFilter 開發也基本停滯,留有不少陳年 bug,在 4K 分辨率開始普及後性能問題也開始凸顯。另外,VSFilter 系只支持 Windows 平台上基於 DirectShow 的播放器(如 MPC 系、PotPlayer),無法跨平台使用。libass 則是一個另起爐灶的跨平台字幕渲染器,性能也更佳,諸如 mpv、VLC 和很多移動平台上的播放器都使用 libass 來渲染字幕,近年來越來越普及。

    由於 VSFilter 系長期的壟斷地位而成為事實標準,絕大部分字幕組只能以 VSFilter 的渲染結果為準來製作和調整字幕顯示效果(例如額外增大部分 OTF 字體豎排時的字號來彌補字體顯示會變小的 bug)。libass 最近做出了一些妥協性修改,顯示效果絕大部分時候都已經與 VSFilter 一致。因此,現在是擺脫 VSFilter 的歷史包袱,遷移到 libass 的一個好時機。

    XySubFilter with libass 就是在 XySubFilter 基礎上修改以 libass 作為後端的字幕渲染器,讓 DirectShow 播放器也能享受到 libass 高性能而不犧牲兼容性,推薦大家使用。

    安裝過程非常簡單,只需要到项目的 GitHub 发布页面下載最新版本,解壓到一個合適的位置,以管理員身份運行 Install_XySubFilter.bat,然後在 MPC-HC 的選項中啟用即可:

    補充說明

    使用 HDMI 連接顯示器時注意設置輸出範圍

    Intel 集成顯卡和 NVIDIA 顯卡有時會在使用 HDMI 輸出時,默認使用有限範圍(limited range),嚴重影響顯示對比度。所以在使用 HDMI 連接顯示器時,要注意檢查輸出範圍,在顯示控制面板中將輸出範圍設置為全範圍(full range),如果控制面板中沒有提供選項,可以藉助 madVR 附帶的 madLevelsTweaker.exe 工具來調整。

    DVI、DisplayPort 默認應該就是全範圍,筆記本電腦的自帶屏幕一般也不需要專門設置。

    是否應該開啟硬解(硬件解碼)?

    近幾年的主流 PC 對最常見的視頻編碼(H.264 和 H.265)硬解的支持已經有了一些提高,但出現各種問題的幾率仍不算低。為了保證播放穩定可靠,我們一般建議只使用軟件解碼。如果你有其他需求,例如希望降低筆記本電腦功耗、提高電池續航,可以嘗試開啟硬解。

    首先打開 K-Lite Codec Pack 的 Codec Tweak Tool,選擇 Configuration – DirectShow Filters – LAV Video Decoder (MPC-HC) 打開 LAV 解碼器設置界面,然後在右上角選擇「D3D11」:

    如果在硬解開啟時播放遇到奇怪問題,應該首先嘗試禁用硬解來排查。

    關於雙顯卡筆記本的設置

    如果你使用的是集成顯卡 + NVIDIA 獨立顯卡的筆記本,默認設置下 MPC-HC 只會調用集成顯卡來進行渲染計算,性能有限。如果你發現播放時顯卡性能成為瓶頸,可以嘗試改用更高性能的獨立顯卡。

    NVIDIA 控制面板屏蔽了 MPC-HC 默認的主程序文件名 mpc-hc64.exe,本來是無法直接設置使用獨立顯卡的。K-Lite Codec Pack 在安裝時如果檢測系統環境中有雙顯卡(NVIDIA Optimus)存在,會自動將 MPC-HC 主程序文件名改為 mpc-hc64_nvo.exe。如果你的 MPC-HC 主程序仍然是 mpc-hc64.exe,需要先改個名字,或者用 NVIDIA Profile Inspector 解鎖。詳情可以參考这里

    然後在 NVIDIA 控制面板 – 3D 設置 – 管理 3D 設置 – 程序設置下,添加 MPC-HC 主程序,將首選圖形處理器改為「高性能 NVIDIA 處理器」,並將電源管理模式改為「自適應」。

    使用 ICC profile 為 madVR 生成 3DLUT 文件實現色彩管理

    我們需要用到校色軟件 DisplayCAL 配套的一個小程序 3DLUT Maker。首先從 DisplayCAL 官网下載安裝(如果你還沒有的話),然後運行 3DLUT Maker,「Destination profile」選擇你顯示器的 ICC profile 文件,確保「Apply calibration (vcgt)」不勾選,文件格式當然是「madVR (.3dlut)」,其餘保持默認即可:

    點擊右下角按鈕,選擇保存位置,完成後,把得到的 .3dlut 文件放在一個合適的位置,然後打開 madVR 設置,按下圖設置,確保「disable GPU gamma ramps」不勾選:

    然後保存設置即可。

    在 Windows 系統中啟用長路徑功能

    從本月起我們的成品可能不再遵從較為嚴格的路徑長度限制。這篇文章將簡單介紹如何在 Windows 系統中啟用長路徑功能。 Windows 系統中較為保守的最大路徑...

    阅读全文

    VCB-Studio 視頻播放器推薦及教程索引

    (Image Credit: しおん@pixiv) 目前我們推薦的播放器可以分成兩大陣營:mpv 和 MPC。前者跨平台,後者僅限 Windows。 mpv mpv 可以在 Windows、macOS 和桌面...

    阅读全文

    跨平台播放器 mpv 配置入門

    mpv 是著名開源項目 MPlayer 的分支,因其對最新軟硬件平台、視頻標準以及各種高畫質選項的支持而廣受好評,也是目前非 Windows 平台上高畫質播放器的不二選...

    阅读全文

    225 条评论

          1. 回復給聖虹夏: 雖然你們說的都是「卡頓」,但是 刷新率和幀率不匹配產生的judder(smoothmotion只能緩解這個)和 「運動幅度太大而有效幀數不足產生的ppt感」(補幀能緩解)是兩個概念

      1. 回復給理世: mpcvr luma scale的最高傳統算法可選項是jinc,但是支持NV VSR。你覺得vsr能碾壓ngu那就是mpcvr強,你覺得不如那就是不如。

        1. 回復給孤雨獨火: 聽起來大概是文中中等配置madvr的水平?那除此之外這兩個渲染器的效果還有什麼比較大的區別嗎?確實是不懂,所以問題比較多23333

          1. 回復給理世: 其實沒啥好說的,be團隊的產物都是一個特點,簡單能用。mpcvr的選項甚至一頁都鋪不滿,一般用戶需要觸碰的選項大概也就四五個?要和madvr放一起做比喻就是一個解決有沒有吃的,一個解決吃不吃得更好。

      2. 比起色彩管理、去色帶、smooth motion,縮放算法這塊對 720p 及以上片源影響都是很小的,從這個意義上說 MPCVR 和 madVR 根本沒法比。

        我的建議是能用 madVR 就用。

      1. 回復給軒寧: klite只是省去你分別下不同組件的過程,支持不支持中文。。沒啥意義,不用klite照樣用mpc+madvr/mpcvr+xysub

        1. 回復給孤雨獨火: 感謝,剛才按照教程設置了一下,發現madVR的低中高,我中檔會出現掉幀情況,就改成了低檔,但還是會出現掉幀的情況,請問這是正常現象嗎,片源是lolihouse壓制的巨人BD,六分鐘左右,中(dropped frames–22、delayed frames–0 和 presentation glitches–8),低(dropped frames–12、delayed frames–0 和 presentation glitches–2)

          1. 回復給軒寧: tldr我不知道,因為你給的變量太多,而我的機器性能太強無法復現。
            簡單的排查思路:
            1.關閉字幕看看是不是特效原因
            2.重置madvr看看是不是設置產生的性能不足(我覺得低檔真的夠低了)

    1. 請教,不知 MPC-BE 或者 MPC-HC 是否有類似 MPV 中「demuxer-max-bytes」的設置,可以設置緩存大小。目前使用 MPV 播放 WebDAV 掛載在本地的影片時,可以看到 cache 數值一直在增加的,所以快進操作跟本地影片體驗無差;但是如果用 MPC-BE 觀看的話,只要快進多幾次就會卡頓,幾乎完全無法播放了。

    2. 感覺這3年來播放器這邊沒什麼變化和進步,MADVR都幾年沒更新正式版了

      前幾天把Xysubfilter更新到了XySubFilter with libass大概就是最大的變化了。播放4:3的老動畫片時字幕終於不再變高個子了 😀 ,,

        1. 回復給孤雨獨火: ds系下的渲染器,殼,解碼相關的開發看上去也基本都轉入了維護階段。其中一些開發者重心都在自己另外的商業化項目上(比如madshi和lav的開發者)。要指望變化和進步只有「另起爐灶」。

          1. 回復給孤雨獨火: 不懂就問,請問新版的媒體播放器是哪個系的?算DS系還是另起爐灶還是別的什麼?
            平時用的還算順手,當然畫面質量沒那麼好,字幕更是XXX,有時候還是得上mpv。

      1. 沒錯,是年輕人的第一台 1080p IPS 顯示器(

        雖然 CCFL 背光明顯老化,校色之後還是有 90%+ sRGB 覆蓋和接近 800:1 對比度,正常使用中。

        1. 回復給boday: 不對啊。我記得F22它是TN屏,不是IPS哦。雖然我是被JS忽悠瘸了,【我當年掏錢買的是DELL的IPS,給忽悠成F22了,都是年輕所犯下的錯誤啊 😐 】,但我還是用了挺多年的。

          最大驚喜就是某天我發現它竟然可以超頻到73hz使用,然後我給它調整到71.928hz的頻率,用SVP插三倍幀看動畫片很流暢,狠狠的爽了幾年,退役的主要原因確實也是因為背光老化亮度不夠了 😀

          1. 哦,搜了一下,我當時買的是 IF22,和 F22 外觀一樣但是 IPS 面板。AOC 應該是懶得沒在 EDID 里做區分。

            我好像就是從這台顯示器開始才知道 IPS 和 TN 的區別(

    3. LAV是不是沒有nvdec硬解,沒有的話n卡1650以上推薦使用mpc內置的解碼器使用nvdec,可以硬解hevc yuv444p10
      我用potplayer的時候不知道一直軟解,後面換mpv才知道我設備支持硬解(

      1. 回復給CX無敵: 除了hdrtonemapping改進之外沒有任何區別,但是要講清楚那些選項估計要單獨寫一篇遠長於這篇文本量的科普(

    4. 嘗試換了三套縮放算法presentation glitches都會緩步增加,一分鐘+50,看畫面也沒有明顯的問題
      軟解,CPU是10750H,應該不是性能問題吧

        1. 回復給little: 剛試了一下,應該是外接屏幕的性能損耗……相同的配置在筆記本的自帶屏上就沒有問題,筆記本的外接應該是走了個中間層的

        1. 回復給yejl2017: 這個是校色文件 ,一般是用校色儀配合校色軟件生成。沒有或者實在不想租的可以去tftcentral下載對應屏幕的,但這種方法極有可能負提升。

      1. 回復給信: pot從前就不算被推薦,原文中首尾就表達了默認設置有問題,使用途中的坑可更多。
        在我看來被裹挾的意味更強,寫pot的教程不是因為它多好,而是用戶基數大但問題毛病一堆,扭轉人的軟件使用習慣很難,因此卻又不得不寫。

          1. 回復給keloy: mpc-be幾乎開箱即用,pot花上半小時。所以為什麼要浪費半小時,怎麼保證每個人都能半小時內避開所有pot的坑?pot還有因為自己亂更新導致的莫名其妙的bug,這些都是毛病。

          2. 回復給keloy: 另外再補個普通用戶不關心,有軟件潔癖的人反感的點。
            一個上過ffmpeg恥辱柱,抄襲開源mpc自己閉源的軟件,應該進黑名單而不是被推薦。

        1. 回復給孤雨獨火: 好的,明白了,請問我是3070筆記本是推薦用MPC-HC+madVR還是mpv呢,現在用的是potplayer+madVR,謝謝

    欢迎留言

    此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据