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 cask install 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 則可以讓這些信息保持顯示或清除,顯示時點擊數字鍵 123 等等可以分別顯示信息的第一、二、三……頁。

在完成本文的配置後,你可以打開一個碼率較高的視頻,按下 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 的配置方法可以另外參考:

字幕论坛上 cczzhh 的帖子

字幕论坛上孤雨独火的帖子

mpv 开发者 hassn 的个人 mpv 配置

mpv 开发者 Argon- 的个人 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"

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

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

阅读全文

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

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

阅读全文

基於 MPC-HC 和 madVR 的播放器配置入門

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

阅读全文

230 条评论

    1. 都不需要插件。
      save-position-on-quit 退出時記憶播放位置(注意mpv.conf所在的目錄得有用戶寫入權限,不要把mpv放在Program Files文件夾下)
      播放列表主流的格式都支持,比如m3u。
      或者你上這個頁面看看:https://github.com/mpv-player/mpv/wiki/User-Scripts
      有能在mpv里存m3u文件的插件,但是看了下Issue說不支持UTF-8文件名。

    2. 記憶播放進度有個很簡單的辦法,
      快捷鍵Q(注意是大寫,小寫q是不保存直接退出)鍵:存儲當前位置,停止播放並退出,當下次播放相同文件時將繼承播放進度
      樓上所說修改mpv.conf也可以,不過如果在用SVP的話這個選項最好別開,有衝突

      1. 如果用SVP的話Q退出也不要用。原理都是一樣的。不能用的原因是不單保存了進度,還保存了video filter參數,下次SVP就不能正確插入視頻濾鏡了。

          1. 官方manual倒是沒講這個。SVP默認提供的mpv.conf注釋里寫的。目前有個PR想要實現不保存所有信息(https://github.com/mpv-player/mpv/pull/6373),如果merge了可能可以排除vf。

  1. 其實如果想要不那麼硬核的使用mpv的話可以考慮以smplayer作為前端。
    對我這種抱着筆記本電腦到處跑的,mpv配硬解來省電也是很重要的 😯

  2. 借樓問一下,誰知道有什麼操作方便又相對來說對畫質影響小的視頻resize方法么?(有時候下載的視頻很大,放在手機上看又不需要很高的分辨率)。

        1. (以下肯定說不全,歡迎補充/修正)
          樓上說的Handbreak就是一款不錯的容易上手的編碼軟件;此外很多人都推薦小丸工具箱;可定製度更高點有ShanaEncoder,MediaCoder,再之後就是VCB教程里的命令行編碼了,可定製度最高

        2. 要我說還是直接拿vcb的小版本就行(基本每次發片都會發布的720p版本),重編碼耗費的時間可能夠你下好幾部片子。。。。

  3. 感謝boday大佬
    另外,下面這行配置送給喜歡截屏的朋友
    screenshot-directory=E:\ScreenShot\
    # 也可以使用相對路徑,即保存在播放文件所在文件夾下的某個文件夾中
    # screenshot-directory=ScreenShot/
    # shift+s 是截屏不帶字幕 s 是截屏帶字幕
    # shift+S 是截屏帶字幕 S是截屏不帶字幕

  4. > 設置文件類型關聯
    建議運行mpv-install.bat來做這件事,官方build網頁上就是這麼寫的:To set up file type associations and AutoPlay handlers, use mpv-install.bat. 單純右鍵更改效果並不理想。見https://github.com/rossy/mpv-install
    sourceforge上的git build則是已經包括了這個腳本(installer文件夾下)。

    >創建配置文件
    不推薦直接放mpv.exe同目錄。
    A third config directory with the lowest priority is the directory named mpv in the same directory as mpv.exe. This used to be the directory with the highest priority, but is now discouraged to use and might be removed in the future.
    Windows下為了防止找不到APPDATA在哪的話,最好還是建一個叫portable_config的目錄。
    If a directory named portable_config next to the mpv.exe exists, all config will be loaded from this directory only. Watch later config files are written to this directory as well.
    參見https://mpv.io/manual/master/#files-on-windows
    不放APPDATA的話就要保證mpv所在文件夾有用戶寫入權限,不然之後產生一些cache什麼的會成問題。

    1. 星際選手了,不推薦的做法是在mpv.exe同目錄建名為mpv的目錄存配置。mpv.exe同目錄下直接放確實可行,只是優先級比較低。

  5. 教程感激不盡,看起來只要簡單幾行代碼太棒了!另外想請問下, mpv 默認能將字幕顯示到黑邊上嗎(比如劇場版傷物語)?

  6. 感謝教程!之前一直用的potplayer,因為播放全能+UI還算可以,之後跟隨貴組的教程從設置madvr,到放棄Bug頻出的potplayer轉戰mpc-hc/be+madvr,之後自己去各論壇學習madvr的配置,再到現在的mpv,終於發現還是更喜歡綠色的mpv
    於是現在mpc-hc+madvr和mpv一起用了 😎

欢迎留言

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