2-15 134,042
mpv 是著名開源項目 MPlayer 的分支,因其對最新軟硬體平台、視頻標準以及各種高畫質選項的支持而廣受好評,也是目前非 Windows 平台上高畫質播放器的不二選擇。
由於 mpv 本身沒有圖形界面,各種設置需要通過手動編寫配置文件來完成,使很多不熟悉命令行的普通用戶望而卻步。本文的主要目的就是為普通用戶提供一個 mpv 播放器的上手指南,手把手教你如何把 mpv 用起來。
相比在圖形界面中用滑鼠勾勾點點,手寫配置文件的方式固然不太符合普通用戶的習慣,但是「一旦接受了這種設定」,你會逐漸體會到命令行的便利與靈活。
如果你確實需要一個圖形界面的 mpv 播放器前端,我們推薦:
– Windows 用戶使用 mpv.net,可以通過微软商店或 GitHub 獲取;
– macOS 用戶使用 IINA,可以直接從官方网站下载。
即使你選擇使用以上兩款圖形界面的 mpv 前端,在配置時仍然可以參考本教程的內容。
安裝
Windows 用戶可以到这里選擇並下載最新版壓縮包。mpv 是原生綠色軟體,將壓縮包內所有文件解壓到你想要的位置即可,例如 C:\mpv
。如果你希望雙擊就能用 mpv 打開媒體文件,請以管理員許可權運行 installer
文件夾內的 mpv-install.bat
。該軟體倉庫的維護者每周都會發布一個根據最新源代碼編譯的版本。
macOS 用戶可以到这里下載最新版的壓縮包,解壓後把得到的 mpv.app
直接拖進應用(Applications)文件夾內即可。如果你安裝了 Homebrew,也可以直接運行 brew install --cask mpv
來安裝。安裝之後首次運行時可能會被 macOS 安全設置阻止,需要到系統設置 – 安全與隱私中允許它。
Linux 各主要發行版的官方軟體源里都收錄了 mpv,例如使用 apt 的系統可以直接用 sudo apt install mpv
來安裝。不過因為這些軟體源中的 mpv 版本經常過舊,建議另外找第三方的軟體源來安裝,或者參考 mpv-build 自行編譯。
設置文件類型關聯
Windows 下的文件類型關聯應該已經由安裝腳本完成。如果要手動設置,以 MKV 文件為例,在任意 MKV 文件上點擊右鍵 – 屬性 – 打開方式 – 更改,然後選擇剛才安裝目錄下的 mpv.exe
即可。
macOS 下和 Windows 類似,右鍵 – 顯示簡介 – 打開方式 – 全部更改,然後選擇 mpv 即可。
Linux 下取決於你使用的桌面環境,修改方式和上面大同小異。
簡單的播放器控制界面
mpv 在播放界面上提供了一些簡單的控制功能。在視頻畫面上移動滑鼠會在界面底部顯示浮動控制欄。
底部最左邊的三個按鈕分別是播放/暫停、跳轉前後章節。進度條右邊的幾個按鈕分別是切換音軌、切換字幕、調節音量和全屏/窗口顯示。滑鼠左鍵點擊音軌和字幕按鈕可以直接切換音軌或字幕,Shift + 左鍵則可以顯示當前已載入的音軌或字幕列表。
常用快捷鍵
→
前進 5 秒
←
後退 5 秒
↑
前進 1 分鐘
↓
後退 1 分鐘
PageUp
跳轉到下一章節
PageDown
跳轉到前一章節
Space
播放/暫停
9
降低音量
0
提高音量
j
切換字幕
#
切換音軌
m
開啟/關閉靜音
v
顯示/隱藏字幕
f
切換全屏/窗口顯示
s
截圖
此外,快捷鍵 i
可以顯示當前正在播放的文件的媒體信息以及解碼、渲染的相關數據(如下圖)。使用 Shift + i
則可以讓這些信息保持顯示或清除,顯示時點擊數字鍵 1
、2
、3
等等可以分別顯示信息的第一、二、三……頁。
在完成本文的配置後,你可以打開一個碼率較高的視頻,按下 Shift + i 觀察第一頁顯示的 Dropped Frames 以及 Mistimed 和 Delayed 這幾項計數,如果播放一段時間後這幾個數字都保持穩定沒有增加,則基本可以確定視頻播放沒有什麼問題了。
創建配置文件
雖然 mpv 的默認設置已經足以正常播放絕大多數視頻,為了達到更好的效果以及符合個人的使用習慣,我們仍然需要一些配置。
Windows 下打開記事本(Notepad)或者任何你喜歡的純文本編輯器,新建一個空白文檔,寫好配置命令(見下)後,在剛才 mpv 的解壓目錄下新建一個名為 portable_config
的新文件夾,例如 C:\mpv\portable_config
,將配置文件命名為 mpv.conf
保存在該文件夾內(注意使用記事本的話,保存文件時「保存類型」要選擇「所有文件 (*.*)」,否則文件名會被加上 .txt
擴展名,變成 mpv.conf.txt
)。
macOS 下首先打開配置文件要保存的位置,方法是在訪達(Finder)的頂欄打開前往(Go)菜單下的前往文件夾(Go to Folder),然後輸入:
~/.config/mpv
(因為這個文件夾默認是隱藏的,無法直接打開),然後打開 macOS 自帶的文本編輯(TextEdit)應用,新建一個文檔,在「格式」菜單中選擇將文檔轉換為純文本(Make Plain Text),寫好一行一行的配置命令(見下)後,將這個文件保存在剛才打開的 mpv 文件夾內,文件名為 mpv.conf
。
Linux 下的用戶配置文件位置與 macOS 相同,也是 ~/.config/mpv/mpv.conf
。
建議添加的配置命令
– mpv 的默認渲染設置已經很好,一般來說已經足夠。如果你的顯卡性能較強(獨立顯卡,或近一兩年的集成顯卡),可以啟用一套預設的更高質量的渲染設置,方法是在 mpv.conf
中寫上這麼一行:
profile=high-quality
使用高質量渲染設置可能會大大降低筆記本的電池續航時間,在近些年的高解析度屏幕上(例如「視網膜顯示屏」的 MacBook)尤其明顯。
– 目前(0.37.0-0.38.0 版本)官方的高質量渲染預設會讓色度平面的拉伸也使用 ewa_lanczossharp
,比較浪費資源,所以我們再加一行:
cscale=catmull_rom
– 色帶是非常常見的視頻壓縮瑕疵。默認啟用去色帶是利大於弊的:
deband=yes
– mpv 默認不對視頻進行色彩管理。如果你使用校色儀對屏幕進行過校色,或者在用支持硬體校色的顯示器,或者擁有廠商提供的顏色配置文件(即 ICC profile,比如近年來的所有 Mac 都自帶,有些其他顯示器或筆記本電腦廠家也會提供)的話,建議將色彩管理開啟:
icc-profile-auto=yes
– 設置將字幕渲染到視頻源解析度並隨視頻一起縮放並進行色彩管理,這樣可以保證字幕的解析度與畫面始終一致(避免「畫面模糊字幕高清」的情況),並保證字幕中「屏幕字」的顏色與畫面一致:
blend-subtitles=video
– 很多時候,我們的顯示器刷新率不是片源幀率的整數倍(例如顯示器刷新率通常為 60 Hz 而動畫通常為 23.976 fps),此時在默認設置下會因每一幀實際在屏幕上的呈現時間不均等而造成卡頓感(俗稱 3:2 pull down judder)。因此,建議啟用 interpolation
來消除這個問題(此功能非常類似於 madVR 中的 smooth motion):
video-sync=display-resample
interpolation=yes
tscale=oversample
屏幕刷新率越高,理論上卡頓感會更弱,而此時開啟
interpolation
對性能的要求也越高(也更耗電)。在刷新率較高(大於 100 Hz)的屏幕上可根據實際情況酌情開啟。– 中文字幕組經常會在外掛字幕的文件名中用 chs/cht/sc/tc/gb/big5 等標記來區分簡體或繁體字幕。這些「非標準」的寫法不會被 mpv 識別為語言標記,因此 mpv 默認不會自動載入這些字幕文件。如果想讓 mpv 能自動識別並載入這些外掛字幕的話:
sub-auto=fuzzy
– 如果你希望 mpv 啟動後直接進入全屏模式:
fullscreen=yes
以上是我認為具有普適性的一些選項。其他可以定製的地方還有很多,具體可以參考官方的文档對於上百個設置的解釋說明。此外,mpv 提供了第三方用戶腳本支持,可以實現更多的功能(例如設置 profile 針對不同片源類型進行不同的處理),以及第三方 user shader 來實現更多的畫面處理(例如 NNEDI3)。
關於 mpv 的配置方法可以另外參考:
補充說明
是否應該開啟硬解(硬體解碼)?
近幾年的主流 PC 對最常見的視頻編碼(H.264 和 H.265)硬解的支持已經有了一些提高,但出現各種問題的幾率仍不算低。為了保證播放穩定可靠,我們一般建議只使用軟體解碼(這也是 mpv 的默認設置)。如果你有其他需求,例如希望降低筆記本電腦功耗、提高電池續航,可以嘗試開啟硬解:
hwdec=auto-safe
更多信息請參考 mpv 官方文档。
一些 Linux 發行版(例如 Debian/Ubuntu)可能會自動生成一個系統全局 mpv 配置文件(/etc/mpv/mpv.conf
)並開啟了硬解:
hwdec=vaapi
如果播放時遇到問題,建議優先嘗試在用戶配置文件(~/.config/mpv/mpv.conf
)中覆蓋上述設置:
hwdec=no
關於雙顯卡筆記本的設置
如果你使用的是集成顯卡 + NVIDIA 獨立顯卡的 Windows 筆記本,默認設置下 mpv 只會調用集成顯卡來進行渲染計算,性能有限。如果你發現播放時顯卡性能成為瓶頸,可以嘗試改用更高性能的獨立顯卡:在 NVIDIA 控制面板 – 3D 設置 – 管理 3D 設置 – 程序設置下,添加 mpv.exe
,將首選圖形處理器改為「高性能 NVIDIA 處理器」,並將電源管理模式改為「自適應」。
如果你使用的是雙顯卡的 MacBook Pro,可以通過在配置文件中增加這樣一行來強制 mpv 使用獨立顯卡:
cocoa-force-dedicated-gpu=yes
IINA 使用 mpv 配置文件
IINA 可以直接讀取 mpv 的配置文件來共享設置,在偏好設置 – 高級選項卡底部勾選「使用配置目錄」即可,默認的 ~/.config/mpv
即為 mpv 的默認配置文件所在目錄。值得注意的是,小部分 mpv 設置是對 IINA 不起作用的,詳見这里。
你也可以直接在 IINA 的高級選項卡下直接添加 mpv 的設置,只要將上文提到的設置里每一行 =
左右兩邊的內容分別填進「選項」和「值」中即可。
解決 Linux 下 Intel 集成顯卡驅動可能導致卡頓的問題
近些年很多 Linux 發行版不再建議安裝 Intel 顯示驅動(xf86-video-intel
),只使用 modesetting 驅動。然而,modesetting 驅動可能存在 VSync 不穩定的問題,導致 mpv 在開啟 video-sync=display-resample
時間歇性卡頓。解決辦法是仍然安裝並啟用 Intel 顯示驅動,可以參考这里。
以 Ubuntu 為例,首先確保 Intel 顯示驅動已經安裝:
sudo apt install xserver-xorg-video-intel
重啟後確認 loaded display driver 已經是 intel
,例如:
inxi -G
如果仍然顯示 Display … loaded: modesetting,則需要手動添加配置,例如 /etc/X11/xorg.conf.d/20-intel.conf
:
Section "Device"
Identifier "Intel Graphics"
Driver "intel"
EndSection
重啟即可。
如果更換驅動後發現有畫面撕裂現象,可以嘗試在上述配置文件第三行後添加:
Option "TearFree" "true"
- VCB-Studio 視頻播放器推薦及教程索引 - 2023年5月8日
- 基於 MPC-HC 和 madVR 的播放器配置入門 - 2023年5月6日
- 跨平台播放器 mpv 配置入門 - 2023年2月15日
才從pot轉過來,mpv是不需要用lav和madvr了嗎?
回復給 GKCommander: 用mpv-lazy就好了有個人github配好的,自己可以再改改,然後anime4k自己導入一下官方給的那個配置就行
跟著抄了
video-sync=display-resample
interpolation=yes
tscale=oversample
放動漫還是會突然卡一下
有沒有大佬撈撈
回復給 yaayaN: 用的筆記本 win11 144HZ mpv有設置使用獨立顯卡
請問一下怎麼切換字幕的字體呢,可以做到嗎
回復給 ygking: 你要直接改字幕文件,而且需要用已安裝字體才能正常顯示
回復給 wbsLF: 請問一下,為什麼我按照教程安裝potplayer上面說要安裝額外的解碼器,可是卻沒有出來勾選的選項,自動關閉了,這是為啥呀
回復給 1033098389:potplayer已經不被VCB推薦了,我沒用過也看不到你說的什麼意思
為什麼我的MPV在播放HDR視頻只有暫停才能顯示正確的色彩,播放的時候都灰濛濛的
回復給 涼拌二荊條: 建議你嘗試修改–vo、–gpu-context、–d3d11-output-csp以及 ICC 配置相關的選項,mpv的設置參數多且雜,每個人的設備都不一樣,很難用一兩句話弄明白原因。
求助!有沒有大佬知道,MPV如何播放HDR視頻啊?我在win11設置里不開hdr的時候看hdr視頻會自動映射到sdr,但是開啟了hdr後畫面就發灰,無法正確觀看hdr,我還用錄屏測試了,就是按照教程設置完mpv沒辦法看hdr視頻
載入了筆記本自帶的icc感覺飽和度比沒用的時候低了些,icc應該色彩比較正確吧,到底應不應該載入icc啊?求佬解答
回復給 hanger01: 如果你的顯示器有出廠校色的話一般開了降低飽和度是正常的,如果沒有出廠校色可以用–icc-profile指定校色文件,不過似乎mpv的校色有點問題,參考 https://github.com/mpv-player/mpv/issues/8009 ,畫面可能會偏暗,你可以找幾個黑點的視頻試試
窗口播放時,可以讓播放器窗口邊緣和顯示器邊緣自動吸附對齊嗎?
窗口播放關閉後,在下次啟動播放器時,可以根據上次關閉後,播放器的窗口位置和大小來播放嗎
配置還是腳本都搜了半天,目前沒找到設置方法,這些功能之前的potplay都有
大佬們,請問deinterlace 是yes,no還是auto,按到D忘了初始是啥了
除非你寫進配置文件(mpv.conf)里,否則這個狀態不會被保存。播放器關了再開就是初始狀態。
以及,初始狀態這種事文檔里都寫有:
https://mpv.io/manual/stable/#options-deinterlace
(deinterlace 只有交錯視頻才可能需要,一般用不著,至少 vcbs 發布的東西肯定都不需要)
回復給 はかせ: 明白了,謝謝
我的文件夾內同時有mpv.conf 以及mpvnet.conf,配置命令是不是只需要修改後者就行?
請問字幕渲染加粗怎麼給取消啊
回復給 少爺: `mpv.conf` 中寫入 `sub-bold=no` 即可