iT邦幫忙

2026 iThome 鐵人賽

DAY 9
0
自我挑戰組

一天一招,快速上手 mpv-lazy系列 第 9

Day9:用 NVIDIA RTX VSR 讓驅動接手超分

  • 分享至 

  • xImage
  •  

Day 8 講了 NVIDIA 驅動幫你補幀。現在 NVIDIA 也能提供驅動幫你超分,這瀏覽器功能可以用,在YT比較低畫質下畫質能明顯提升。
Yes

這就是 RTX VSR(Video Super Resolution)。

這跟 UAI 超分差在哪?

AI 超分那條路是 mpv 自己算:VapourSynth 載入 ONNX 模型,在濾鏡鏈裡做超分。你要選模型、調 H_Pre、等 TensorRT engine。

RTX VSR 是驅動在算。你只要叫 mpv 把畫面交給 Direct3D 的視訊後處理器,剩下的 NVIDIA 幫你做完。沒有模型可選。

Nvidia Smooth Motion 技術對標應該是 AMD AFMF。Nvidia Smooth Motion 利用專屬的 AI 模型(基於 Tensor Core)在驅動層進行兩幀之間的畫面推理與補幀。AMD AFMF主要依靠傳統的驅動級光流估算,不強制依賴 AI 專用硬體(直到 AFMF 2.1 引入了部分 AI 數據優化),這使其對舊款硬體的相容性更佳。

怎麼開 RTX VSR?

Nvidia APP 先打開 VSR 功能。
https://ithelp.ithome.com.tw/upload/images/20260809/20182793XBe5wjr1qM.png
這邊品質我選擇手動,畫質調整最高。

mpv 這邊靠 d3d11vpp 這個濾鏡。在 portable_config\mpv.conf 加:

# 走純硬解,官方推薦(軟解也能用,下面說)
hwdec = d3d11va
# 把畫面交給 D3D11 視訊後處理器,用 NVIDIA 的放大擴充
vf-append = d3d11vpp=format=nv12:scale=2:scaling-mode=nvidia

拆解一下那串參數:

  • scaling-mode=nvidia —— 這是關鍵。它有三個值:standard(普通縮放)、intel(Intel VSR)、nvidia(RTX VSR)。
  • scale=2 —— 放大倍率。這其實是浮點數1.5 也合法,不限整數倍。慣例寫 2 的原因是有說法認為 VSR 內部固定先放大兩倍再處理,所以填別的值意義不大 —— 但這個說法我沒找到官方或程式碼證據。
  • format=nv12 —— 指定處理用的像素格式。10-bit 片源要改成 p010,不要一律照抄 nv12

還有一個前提:gpu-context 必須是 d3d11 好消息是這正好是 mpv-lazy 的預設值,所以你不用改。壞消息在後面那節。

怎麼 VSR 真的在跑?

有時顯示卡效能吃緊的時候,VSR 會失效。但是 MPV 不會顯示 VSR 失效,這時候視窗還是兩倍狀況。你很難發現這功能梅正常運作,可以從 Nvidia App 上面是否正常運作中。

https://ithelp.ithome.com.tw/upload/images/20260809/201827931yDzvgwg5D.png

但這種很不直覺,我建議是把 在視訊上顯示狀態指示器打開。假如圖示失效代表 VSR 沒有作用。

https://ithelp.ithome.com.tw/upload/images/20260809/20182793o8MlbiV8us.png

⚠ 它跟 Day 8 的 Smooth Motion 不能共存

這是本篇最該讓你記住的一件事,而且它直接推翻了「兩個都開就好」的直覺。

Day 8 為了讓 Smooth Motion 生效,我們把 gpu-contextd3d11 改成了 winvk(走 Vulkan)。

所以結論很硬:

你想要的 gpu-context 要設 代價
Smooth Motion(補幀) winvk VSR、RTX Video HDR 全都用不了
RTX VSR(超分) d3d11 Smooth Motion 用不了

二選一,沒有兩全的寫法。

相信大家知道怎麼用 VSR了。
那依照慣例,明天來教教大家怎麼 VSR + AI補幀。

https://ithelp.ithome.com.tw/upload/images/20260809/20182793OjWsXzSAvO.png

其實,在濾鏡補上,可接下一個濾鏡。

順序:跟 VapourSynth 一起用的時候

如果你已經在跑 Day 4 的 RIFE,想再疊 VSR,寫法是這樣:

hwdec = d3d11va
vf-append = d3d11vpp=format=nv12:scale=2:scaling-mode=nvidia
vf-append = vapoursynth="~~/vs/MEMC_RIFE_NV.vpy"

或著以下寫法也可以

vf = d3d11vpp=format=nv12:scale=2:scaling-mode=nvidia,vapoursynth="~~/vs/MEMC_DRBA_NV.vpy"\

補幀和超分要一起使用時,通常還是得依照實際的濾鏡順序,調整 .vpympv.conf 才能正常運作。

前面之所以把這些功能拆開來講,是希望先讓大家理解每個功能各自在做什麼、設定又會影響哪些地方。等原理和流程都熟悉之後,其實很多設定都可以直接整合,甚至複製現成設定就能使用。。

相關文章


上一篇
Day 8:NVIDIA 怎麼用 NVIDIA Smooth Motion 補幀?
下一篇
Day10:RTX Video HDR 讓你的影片變成 HDR
系列文
一天一招,快速上手 mpv-lazy14
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言