
1. 為什么我還要在 Ubuntu 上折騰一個本地播放器現(xiàn)在打開瀏覽器什么視頻都能看很多人會覺得本地播放器是個過時的東西。但我自己的使用習(xí)慣恰恰相反手頭攢了一堆網(wǎng)課錄像、會議錄屏、相機(jī)導(dǎo)出的視頻素材還有一些下載下來準(zhǔn)備慢慢看的紀(jì)錄片這些東西用在線播放器一是不方便統(tǒng)一管理二是進(jìn)度記錄、倍速、字幕加載、音頻軌道切換這些功能往往殘缺。Ubuntu 自帶的那個視頻播放器能應(yīng)付簡單的 MP4但遇到 MKV 多音軌、外掛字幕編碼不對、HEVC 編碼的視頻就容易卡頓甚至直接黑屏。SMPlayer 就是在這個場景下進(jìn)入我視野的。它是 MPlayer 和 mpv 的前端外殼說白了核心的解碼工作交給底層引擎去做SMPlayer 負(fù)責(zé)的是界面、播放列表、字幕、記憶播放位置這些交互層面的東西。它最讓我離不開的一點(diǎn)是自動記住每個視頻的播放位置和音軌字幕設(shè)置關(guān)掉再打開直接從上次斷開的地方接著看。對我這種看長視頻經(jīng)常分段的人來說這個特性比什么花哨界面都實(shí)用。這篇內(nèi)容我會按自己的實(shí)際配置過程來寫覆蓋 Ubuntu 下的安裝方式選擇、首次運(yùn)行必做的幾項(xiàng)設(shè)置、字幕和中文字體的坑、以及我這些年攢下來的一套快捷鍵。關(guān)鍵詞里的 Ubuntu、SMPlayer、安裝配置、快捷鍵基本就是這篇文章的主線。如果你剛裝好 Ubuntu 想找個趁手的播放器或者已經(jīng)裝了 SMPlayer 但覺得默認(rèn)設(shè)置不好用下面的內(nèi)容應(yīng)該能幫你省掉不少自己摸索的時間。先給個結(jié)論性質(zhì)的定位SMPlayer 不是那種裝完就能完美使用的軟件它的默認(rèn)配置在中文環(huán)境下有三個明顯問題——界面字體發(fā)虛、中文字幕亂碼、暫停后一連串奇怪行為。這三件事處理完它才會真正變得好用。下面從安裝開始一步步來。2. Ubuntu 下安裝 SMPlayer 的三條路子與選擇依據(jù)2.1 官方源直接安裝最省事但版本偏舊最簡單的方式就是走系統(tǒng)自帶倉庫sudo apt update sudo apt install smplayer這條命令會同時把mplayer或者相關(guān)的底層依賴一起裝上不同 Ubuntu 版本依賴關(guān)系略有差異新的發(fā)行版通常會拉 mpv 作為后端。優(yōu)點(diǎn)是干凈、穩(wěn)定、后續(xù)跟著系統(tǒng)更新走卸載也徹底。缺點(diǎn)是倉庫里的 SMPlayer 版本往往落后官方一兩個大版本某些新格式的支持會稍微遲鈍一些。我自己的判斷標(biāo)準(zhǔn)是這樣的如果你只是拿它看普通視頻追求裝上能用、不折騰官方源這條路是最穩(wěn)的。我見過有人為了追新版本去編譯源碼結(jié)果卡在 Qt 版本依賴上折騰了一下午最后播個視頻而已收益完全不成正比。2.2 Snap 與 Flatpak隔離干凈但字體容易出問題Ubuntu 上還有 Snap 這條路sudo snap install smplayerSnap 包的好處是自帶運(yùn)行環(huán)境不污染系統(tǒng)庫。但它在桌面軟件上有個老毛病——沙箱隔離導(dǎo)致主題字體和系統(tǒng)字體不一致裝完你會覺得界面字體又粗又丑跟系統(tǒng)其它軟件格格不入。Flatpak 版本flatpak install flathub org.smplayer.SMPlayer情況類似。如果你很在意界面統(tǒng)一性這兩條路需要額外做字體映射麻煩程度不小。2.3 官方 PPA 或者直接下 deb 包版本與穩(wěn)定的折中想用較新版本又不想編譯可以考慮加 PPAsudo add-apt-repository ppa:rvm/smplayer sudo apt update sudo apt install smplayer smplayer-themes smplayer-skins這里順帶把主題和皮膚包一起裝上后面改界面會用到。PPA 的版本比官方源新又不用自己處理依賴是我個人比較推薦的方案。需要提醒的是加第三方源之前最好確認(rèn)這個源是否還在維護(hù)有些 PPA 好幾年沒更新了加了反而可能引入沖突。下面這張表是我對不同安裝方式的實(shí)際體驗(yàn)對比方便你按自己的需求選安裝方式版本新舊穩(wěn)定性字體界面適合人群官方 apt 源偏舊高正常只求能用的普通用戶Snap/Flatpak較新中需額外配置喜歡隔離環(huán)境的用戶PPA較新高正常想要新版本又怕折騰源碼編譯最新低正常有明確新功能需求的玩家如果你拿不準(zhǔn)我的建議是無腦選官方源或者 PPA先把播放器跑起來等真的遇到版本相關(guān)的問題再考慮換。2.4 裝完之后先確認(rèn)底層引擎是誰裝完 SMPlayer 后建議進(jìn)選項(xiàng) - 首選項(xiàng) - 常規(guī)里看一眼當(dāng)前用的多媒體引擎是 MPlayer 還是 mpv。這兩個后端差異不小mpv 對新編碼格式比如 AV1、較新的 HEVC 變體支持更好硬解選項(xiàng)也更豐富MPlayer 更老但某些老機(jī)器上兼容性反而更穩(wěn)。我自己現(xiàn)在基本全用 mpv 后端因?yàn)樗?4K 視頻上的硬解表現(xiàn)明顯更好。切換方式是在首選項(xiàng)里直接改引擎或者安裝對應(yīng)的引擎包sudo apt install mpv裝完在首選項(xiàng)的多媒體引擎里選 mpv 即可。這一步看似不起眼但它決定了后面所有播放體驗(yàn)的上限。3. 首次運(yùn)行必須改的幾個默認(rèn)設(shè)置3.1 把界面字體換掉解決發(fā)虛和亂碼第一次打開 SMPlayer很多人的第一反應(yīng)是這界面怎么這么丑。根本原因是默認(rèn)字體在中文環(huán)境下渲染效果很差。解決路徑是選項(xiàng) - 首選項(xiàng) - 界面把字體手動指定成一個系統(tǒng)中已有的中文字體比如Noto Sans CJK SC或者文泉驛微米黑。字號建議設(shè)成 10 或 11比默認(rèn)值稍大一點(diǎn)看著舒服。這里有個細(xì)節(jié)改字體不只是為了好看它直接影響字幕的顯示。SMPlayer 的字幕渲染會繼承一部分界面字體設(shè)置如果界面字體沒指定好中文字幕就可能出現(xiàn)方框或者亂碼。所以這一步不要跳過。3.2 字幕相關(guān)的三個關(guān)鍵開關(guān)字幕問題是最容易讓人抓狂的我把它拆成三件事來處理。第一件是字幕編碼。中文外掛字幕常見的有 UTF-8、GBK、GB18030 幾種編碼如果播放時字幕全是亂碼多半是編碼識別錯了。解決方式是在首選項(xiàng) - 字幕里把默認(rèn)編碼設(shè)為 UTF-8遇到個別 GBK 的再手動切。播放時也可以通過右鍵菜單或快捷鍵臨時切換字幕編碼。第二件是字幕字體與大小。在首選項(xiàng) - 字幕里可以指定字幕專用字體建議設(shè)成和界面一致的中文字體大小比默認(rèn)值調(diào)大一些比如 28-32具體看你屏幕分辨率。字號太小在 4K 屏上會看不清。第三件是自動加載同名字幕。SMPlayer 默認(rèn)會去找和視頻同目錄同名的.srt文件這個功能要確保打開。我就吃過虧視頻叫l(wèi)ecture.mp4字幕叫l(wèi)ecture.chs.srt結(jié)果因?yàn)槲募煌耆恢聸]自動加載我還以為軟件有問題折騰半天才發(fā)現(xiàn)是命名問題。后來我把字幕統(tǒng)一改成和視頻同名的形式就再沒出過岔子。3.3 關(guān)掉那幾個自作聰明的暫停行為這一條是我踩過最深的坑必須單獨(dú)拎出來說。SMPlayer 默認(rèn)有幾個貼心設(shè)定實(shí)際用起來非常煩人暫停后自動降低音量你以為只是暫停了結(jié)果音量被改了恢復(fù)播放聲音變小。暫停一段時間后自動進(jìn)入屏?;蚝谄量匆曨l中途停下來喝口水回來屏幕黑了。鼠標(biāo)在窗口上移動就顯示/隱藏控制欄鼠標(biāo)一不小心劃過就彈出來干擾觀看。這些都在首選項(xiàng)的不同頁面里關(guān)。音量衰減的選項(xiàng)在音頻相關(guān)設(shè)置里屏保行為在常規(guī)設(shè)置里控制欄自動隱藏的選項(xiàng)在界面設(shè)置里。把它們逐一關(guān)掉之后播放器才真正進(jìn)入安靜工作的狀態(tài)。我建議你裝完之后花五分鐘專門處理這幾個選項(xiàng)一次配置長期受益。3.4 播放記憶功能的正確用法前面說過自動記憶播放位置是 SMPlayer 的殺手锏但它默認(rèn)可能只記住最近一部分文件或者對網(wǎng)絡(luò)位置的處理方式不同。在首選項(xiàng) - 常規(guī)里可以設(shè)置記憶文件的策略。我一般設(shè)成記住所有文件的播放位置這樣不管視頻放多久、隔多少天再打開都能接著看。需要注意的一點(diǎn)是這個記憶是存在 SMPlayer 的配置目錄里的如果你重裝系統(tǒng)或者換了配置目錄記錄就沒了。所以如果有些特別重要的長視頻進(jìn)度我會另外用筆記記一下時間點(diǎn)避免意外丟失。這個小習(xí)慣聽著多余但真丟過一次進(jìn)度之后就會養(yǎng)成。4. 播 MKV 多音軌、外掛字幕、4K 視頻時的實(shí)際處理4.1 多音軌切換與音軌記憶MKV 文件經(jīng)常帶好幾條音軌比如一個電影同時有國語、原聲、導(dǎo)演評論音軌。SMPlayer 切換音軌很直接通過菜單里的音頻軌道選項(xiàng)或者快捷鍵就能切。更省心的是它會把每個文件選擇的音軌一起記住下次打開還是你上次選的那條??磩〖臅r候這個特性簡直是剛需不用每集都手動切一遍。如果遇到音軌順序混亂比如顯示的是軌道 1、軌道 2看不出語言那多半是文件本身沒寫軌道名稱這種情況只能靠自己聽一下再選選完記住即可。文件本身寫好了語言標(biāo)記的SMPlayer 會直接顯示出來。4.2 外掛字幕的時間軸微調(diào)看網(wǎng)課錄像或者錄播的時候最頭疼的就是字幕比聲音慢半秒或者快半秒。SMPlayer 提供了字幕延遲調(diào)整功能通過快捷鍵可以按毫秒級別前后平移字幕找到對齊的位置。這個調(diào)整同樣是即時生效的不用重啟播放。找到合適數(shù)值后如果這個文件的字幕長期有偏移可以在字幕菜單里保存這個延遲設(shè)置下次自動應(yīng)用。我個人的經(jīng)驗(yàn)值一般的字幕文件偏移都在 ±500 毫秒以內(nèi)超過這個范圍通常是字幕版本和視頻版本對不上比如字幕是給藍(lán)光版做的你的是網(wǎng)絡(luò)壓制版這種就只能手動慢慢調(diào)了。4.3 4K 視頻卡頓與硬件加速4K 視頻在配置一般的機(jī)器上播放卡頓問題往往出在沒有開硬件加速。SMPlayer 的硬件加速設(shè)置跟底層引擎有關(guān)用 mpv 后端的話在首選項(xiàng)的性能或者引擎配置里能找到硬件解碼選項(xiàng)可以設(shè)成自動或者指定具體的解碼方式比如vaapi、nvdec等看你顯卡類型。判斷有沒有真正開啟硬解可以打開一個 4K 視頻同時用系統(tǒng)監(jiān)控看 CPU 占用。如果 CPU 占用很高還卡說明硬解沒生效如果 CPU 占用低、畫面流暢那就是成功了。這里要說明的是硬件解碼的可用性和你的顯卡驅(qū)動強(qiáng)相關(guān)NVIDIA 和 AMD 的配置路徑不一樣遇到問題時先確認(rèn)驅(qū)動裝好了再調(diào)播放器。4.4 遇到黑屏或只有聲音的排查順序播放某些視頻只有聲音沒畫面或者直接黑屏這種情況我的排查順序是這樣的先換一個視頻文件測試判斷是文件問題還是播放器問題如果確認(rèn)是這個文件就檢查編碼格式用ffprobe看看視頻軌是什么編碼如果編碼很新而你的引擎版本舊那就升級引擎或者換后端如果換了后端還是不行考慮是不是硬解出了問題把硬解關(guān)掉試試軟件解碼。這個順序能覆蓋絕大多數(shù)情況。ffprobe -v error -select_streams v:0 -show_entries streamcodec_name -of defaultnoprint_wrappers1 input.mkv這條命令直接告訴你視頻軌的編碼名稱是排查的第一步比盲猜高效得多。5. 我日常在用的快捷鍵清單與記憶方法5.1 播放控制類的核心幾個快捷鍵這種東西網(wǎng)上一搜一大堆真正用得上的其實(shí)就那幾個。我把最高頻的整理出來快捷鍵功能使用頻率空格播放/暫停極高左/右方向鍵快退/快進(jìn) 5 秒極高上/下方向鍵音量增減高PageUp/PageDown快退/快進(jìn) 1 分鐘高F全屏切換高M(jìn)靜音中Q退出中空格暫停是我用得最多的SMPlayer 里空格默認(rèn)就是播放暫停切換這個跟大多數(shù)播放器一致肌肉記憶不用重新建立。方向鍵的 5 秒步進(jìn)適合精細(xì)回看PageUp/PageDown 的一分鐘步進(jìn)適合跳過片頭片尾。5.2 字幕與音軌的應(yīng)急快捷鍵看外掛字幕的視頻時有幾個應(yīng)急鍵必須記住字幕延遲調(diào)整默認(rèn)是通過一組組合鍵或者菜單操作可以修改快捷鍵設(shè)置來綁定更方便的鍵位。切換字幕軌在有多條字幕的文件里快速切換。切換音軌多音軌 MKV 的核心操作。我的做法是把常用的字幕和音軌切換鍵改到順手的位置。SMPlayer 支持自定義快捷鍵路徑在首選項(xiàng) - 鍵盤和鼠標(biāo)里。這里可以按功能搜索找到你需要的動作然后指定一個新的鍵位。改的時候要注意別和其他功能沖突改完它會提示是否有重復(fù)。5.3 音量與畫面的微調(diào)鍵音量上下鍵每次調(diào)整幅度是固定的如果覺得步進(jìn)太大或太小可以在首選項(xiàng)里改這個步進(jìn)值。畫面相關(guān)的有亮度、對比度調(diào)整這些我看片的時候基本不用但如果你在光線不穩(wěn)定的環(huán)境看視頻把這些鍵記住會方便不少。另外截圖鍵也值得記住看到好的畫面直接截一張SMPlayer 的截圖默認(rèn)保存到一個可以配置的目錄里。5.4 讓快捷鍵真正形成肌肉記憶的辦法快捷鍵表看一遍是記不住的我的方法很簡單先只記三個——空格、左右方向鍵、F 全屏其余的在需要的時候現(xiàn)查現(xiàn)用。用得多了自然就記住了。一上來背一整張表結(jié)果就是全忘。另外 SMPlayer 允許導(dǎo)出和導(dǎo)入快捷鍵配置如果你在多臺機(jī)器上用它可以把配置導(dǎo)出成文件帶過去省得每臺機(jī)器都重新設(shè)一遍。這個技巧對經(jīng)常需要在幾臺電腦之間切換的人來說很實(shí)用。6. 配置文件的備份與遷移6.1 配置都存在哪里SMPlayer 的所有個人配置、播放位置記錄、快捷鍵設(shè)置都放在用戶目錄下的一個配置文件夾里。Linux 桌面軟件的慣例是放在~/.config/smplayer/下。如果你是用 Snap 安裝的配置路徑會變成~/snap/smplayer/下面的某個位置這點(diǎn)要注意因?yàn)槁窂讲煌瑐浞莸奈恢镁筒灰粯?。知道這個路徑的意義在于只要備份這個目錄你的全部個性化設(shè)置就跟著走。換機(jī)器的時候直接復(fù)制過去新機(jī)器上的 SMPlayer 立刻變成你熟悉的模樣播放記錄都在。我換過兩次電腦每次都靠這個目錄省掉了重新配置的時間。cp -r ~/.config/smplayer ~/backup/smplayer-config-backup這行命令就是最簡單的備份方式。恢復(fù)的時候反過來復(fù)制回去即可。6.2 跨機(jī)器遷移時容易踩的兩個坑第一個坑是引擎差異。如果舊機(jī)器用的是 MPlayer 后端新機(jī)器默認(rèn)裝的是 mpv直接復(fù)制配置過去某些和引擎綁定的設(shè)置可能不生效或者行為異常。遷移后建議檢查一下引擎設(shè)置確保和當(dāng)前環(huán)境匹配。第二個坑是字體路徑。配置里記錄的字幕字體名稱如果新機(jī)器上沒裝那個字體字幕會回退到默認(rèn)字體可能出現(xiàn)亂碼或者位置偏移。遷移后確認(rèn)一下中文字體裝好了通常裝個fonts-noto-cjk包就夠sudo apt install fonts-noto-cjk裝完重啟播放器字體問題基本就解決了。這兩個坑我都踩過現(xiàn)在形成習(xí)慣遷移配置后先隨便打開一個帶字幕的視頻檢查一遍確認(rèn)字幕和音軌都正常再進(jìn)行正式使用。6.3 什么時候該重置配置配置用久了偶爾會出現(xiàn)一些奇怪的行為比如某個設(shè)置改亂了找不回來。這時候最快的辦法不是一個個去翻選項(xiàng)而是直接重命名配置目錄讓它重建mv ~/.config/smplayer ~/.config/smplayer-old重啟 SMPlayer它會生成一套全新默認(rèn)配置。確認(rèn)問題解決后再把舊目錄里你確定需要的文件比如快捷鍵配置挑出來放回去。這個先隔離再挑揀的思路比在混亂的配置里大海撈針高效得多我在處理各種軟件疑難雜癥時經(jīng)常用這招。