Linux終端下的多媒體應用
Linux 終端是支持多媒體的,所以你可以在終端里聽音樂,看電影,看圖片,甚至是閱讀 PDF。
在我的上一篇文章里,我們了解到 Linux 終端是可以支持多媒體的。是的,這是真的!你可以使用 Mplayer、fbi 和 fbgs 來實現不打開 X 會話就聽音樂、看電影、看照片,甚至閱讀 PDF。此外,你還可以通過 CMatrix 來體驗黑客帝國(Matrix)風格的屏幕保護。
不過你可能需要對系統進行一些修改才能達到前面這些目的。下文的操作都是在 Ubuntu 16.04 上進行的。
MPlayer
你可能會比較熟悉功能豐富的 MPlayer。它支持幾乎所有格式的視頻與音頻,并且能在絕大部分現有的平臺上運行,像 Linux、Android、Windows、Mac、Kindle、OS/2 甚至是 AmigaOS。不過,要在你的終端運行 MPlayer 可能需要多做一點工作,這些工作與你使用的 Linux 發行版有關。來,我們先試著播放一個視頻:
$ mplayer [視頻文件名]
如果上面的命令正常執行了,那么很好,接下來你可以把時間放在了解 MPlayer 的常用選項上了,譬如設定視頻大小等。但是,有些 Linux 發行版在對幀緩沖的處理方式上與早期的不同,那么你就需要進行一些額外的設置才能讓其正常工作了。下面是在最近的 Ubuntu 發行版上需要做的一些操作。
首先,將你自己添加到 video 用戶組。
其次,確認 /etc/modprobe.d/blacklist-framebuffer.conf 文件中包含這樣一行:#blacklist vesafb。這一行應該默認被注釋掉了,如果不是的話,那就手動把它注釋掉。此外的其他模塊行需要確認沒有被注釋,這樣設置才能保證其他那些模塊不會被載入。注:如果你想要更深入的利用幀緩沖,這些針對你的顯卡的模塊可以使你獲得更好的性能。
然后,在 /etc/initramfs-tools/modules 的結尾增加兩個模塊:vesafb 和 fbcon,并且更新 iniramfs 鏡像:
$ sudo nano /etc/initramfs-tools/modules# List of modules that you want to include in your initramfs.# They will be loaded at boot time in the order below.fbconvesafb$ sudo update-initramfs -u
fbcon 是 Linux 幀緩沖終端,它運行在幀緩沖之上并為其增加圖形功能。而它需要一個幀緩沖設備,這則是由 vesafb 模塊來提供的。
接下來,你需要修改你的 GRUB2 配置。在 /etc/default/grub 中你將會看到類似下面的一行:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
它也可能還會有一些別的參數,不用管它,在其后加上 vga=789:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash vga=789"
重啟之后進入你的終端(Ctrl+Alt+F1)(LCTT 譯注:在某些發行版中 Ctrl+Alt+F1 默認為圖形界面,可以嘗試 Ctrl+Alt+F2),然后就可以嘗試播放一個視頻了。下面的命令指定了 fbdev2 為視頻輸出設備,雖然我還沒弄明白如何去選擇用哪個輸入設備,但是我用它成功過。默認的視頻大小是 320x240,在此我給縮放到了 960:
$ mplayer -vo fbdev2 -vf scale -zoom -xy 960 AlienSong_mp4.mov
來看圖 1。粗糙的畫面是由于我原視頻的質量不高,而不是 MPlayer 的顯示問題。

圖 1 播放視頻
MPlayer 可以播放 CD、DVD 以及網絡視頻流,并且還有一系列的回放選項,這些將作為作業留給大家自己去發現。
fbi 圖片查看器
fbi 是一個幀緩沖圖片查看器。在大部分的 Linux 發行版中,它被包含在 fbida 包里。它原生支持一些常見的圖片格式,而如果你安裝了 convert(來自于 Image Magick),那么它還能借此打開一些其他格式。最簡單的用法是用來查看一個圖片文件:
$ fbi 文件名
你可以使用方向鍵來在大圖片中移動視野,使用 + 和 - 來縮放,或者使用 r 或 l 來向右或向左旋轉 90 度。Escape 鍵則可以關閉查看的圖片。此外,你還可以給 fbi 一個文件列表來實現幻燈播放:
$ fbi --list 文件列表.txt
fbi 還支持自動縮放。還可以使用 -a 選項來控制縮放比例。--autoup 和 --autodown 則是用于告知 fbi 只進行放大或者縮小。要調整圖片切換時淡入淡出的時間則可以使用 --blend [時間] 來指定一個以毫秒為單位的時間長度。使用 k 和 j 鍵則可以切換文件列表中的上一張或下一張圖片。
fbi 還提供了命令來為你瀏覽過的文件創建文件列表,或者將你的命令導出到文件中,以及一系列其它很棒的選項。你可以通過 man fbi 來查閱完整的選項列表。
CMatrix 終端屏保
黑客帝國屏保仍然是我非常喜歡的屏保之一(如圖 2),僅次于彈跳牛。CMatrix 可以在終端運行。要運行它只需輸入 cmatrix,然后可以用 Ctrl+C 來停止運行。執行 cmatrix -s 則會啟動屏保模式,這樣的話,按任意鍵都會直接退出。-C 參數可以設定顏色,譬如綠色(green)、紅色(red)、藍色(blue)、黃色(yellow)、白色(white)、紫色(magenta)、青色(cyan)或者黑色(black)。

圖 2 黑客帝國屏保
CMatrix 還支持異步按鍵,這意味著你可以在它運行的時候改變設置選項。
-B 設置全部使用粗體,而 -b(LCTT 譯注:原文誤為 -B)則可以設置部分字體加粗。
fbgs PDF 閱讀器
看起來,PDF 文檔是普遍流行且無法避免的,而且 PDF 比它之前的功能好了很多,譬如超鏈接、復制粘貼以及更好的文本搜索功能等。fbgs 是 fbida 包中提供的一個 PDF 閱讀器。它可以設置頁面大小、分辨率、指定頁碼以及絕大部分 fbi 所提供的選項,當然除了一些在 man fbgs 中列舉出來的不可用選項。我主要用到的選項是頁面大小,你可以選擇 -l、xl 或者 xxl:
$ fbgs -xl annoyingpdf.pdf

























