今天的 Tetralet 又在唧唧喳喳了



« 九月 2010 »
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30      






 

使用 MPlayer 小技巧

Tetralet | 01 六月, 2007 00:23

MPlayer 是 GNU/Linux 上最著名的影音播放程式之一,它的主要優點是輕巧、快速,對系統需求低。但由於在播放各式各樣的影音多媒體時,可能得隨時依需求而指定 MPlayer 使用種種不同的參數,所以我們多以命令列的方式使用 MPlayer。

支援各種影音格式

為了能順利播放像是 MP3、OGG、XviD、RMVB、WMA、WMV 等等各種影音格式,您必須安裝它們的【解碼器】,也就是 DeCoder。但可想而知的,這些 DeCoder 大多數是 non-free 的,所以 Debian 官方並沒有收錄這些軟體,您必須另外使用其它的非官方 Debian 套件站台,像是著名的 debian-multimedia.org。方法是將以下數行加入您的 /etc/apt/sources.list 中:
deb http://www.debian-multimedia.org etch main
deb http://www.debian-multimedia.org lenny main
deb http://www.debian-multimedia.org sid main
然後,安裝 w32codecs 套件:
aptitude update
aptitude install w32codecs
如此一來 MPlayer 就能正確支援大多數的影音格式了。
註:
即使是安裝了 w32codecs 套件,MPlayer 對於某些影音格式還是有些消化不良。比如說,大部份的 WMV 檔案 + 外掛字幕會有影音字幕不同步的問題。某些採用特殊影音格式的 MKV 檔案會無法正確播放等等。建議儘量採用開放格式的 XViD + OGG 來避免這類問題。

支援 DVD

為了有效阻止盜版,美國的八大影業的 DVD 片子上都使用了一種名為 CSS (Content Scrambling System) 的編碼來讓 DVD 難以被複製。但也因此,如果您的機器無法支援 CSS 編碼,那麼您將無法順利播放這些片子。

但因為專利上的問題,Debian 官方無法提供 DVD 的 DeCSS 解碼器,您必須另外使用其它的非官方 Debian 套件站台。但,您可以在其它站台,例如 debian-multimedia.org,取得 DeCSS 解碼器。您只要加入上文中的站台,然後

aptitude install libdvdcss2

那麼 MPlayer 就能正確播放這些 DVD 影片了。

另外,在操作介面上,XINE 比 MPlayer 會好上一些。建議您使用 XINE 來播放 DVD 影片。

支援 SRT、SSA 等字幕

在播放影片時,MPlayer 會自動尋找相同目錄下,使用相同名稱的 *.srt 做為字幕檔。如果要使用 *.ssa 字幕,請加上 -ass 參數。

您可以利用 -subcp utf16 來指定這些字幕檔的編碼為 UTF-16(常見於大部份的 MKV 檔案),或是以 -subcp big5 來指定這些字幕檔的編碼為 Big5(常見於大部份的 *.srt 檔案)

您還可以指定這些字幕的大小及顏色。例如 -ass-font-scale 1.25 表示字體放大 1.25 倍;-ass-color "FFFFFF00" 表示字幕的字體顏色為白色;而 -ass-border-color "5165C600" 則表示在顯示字幕時再加上一道淡淡的寶藍色邊框。如果是 -ass-border-color "5165C640" 則字的邊框會加上半透明效果。不過這些特效只有在像是 gl 等特定驅動程式裡才能發揮作用。

為了得到最佳的顯示效果,建議您能在系統裡安裝在該 SSA 字幕裡所指定的字型。而或者,您可以在 ~/.fonts.conf 裡指定替代字型。例如:

<alias>
  <family>華康中黑體</family>
  <family>華康粗黑體</family>
  <accept><family>王漢宗細黑體繁</family></accept>
</alias>

那麼將會以 王漢宗細黑體繁 來替代 華康中黑體、華康粗黑體 這兩種字體。

您可以使用 -font "文鼎PL新中楷" 來指定在播放 *.srt 檔案時所使用的字型。您也可以使用 -ass-force-style FontName="文鼎PL新中楷" 來指定在播放 *.ssa 檔案時以 文鼎PL新中楷 替代所有的字型。

如果您的螢幕為 1280 x 1024 這種 5:4 的螢幕,在以全螢幕播放一些 4:3 的影片時,您會發現影片會放大至 1280x960,因而上下是留白的。您可以使用 -vf expand=0:-32:0:0 將螢幕往上移一些,讓顯示在下方的字幕可以不要遮住太多的畫面。

另外,在播放一些 MKV 檔案時,請注意它可能會輸出一行資訊:
[mkv] Track ID 4: subtitles (S_TEXT/UTF8), -sid 0, -slang chi
表示您可以用 -sid 0-slang chi 來顯示該字幕。否則,在播放 MKV 檔案時應該是沒有字幕的,請特別注意。

以下為 MPlayer + SSA 的顯示效果:
MPlayer + SSA 的效果

支援 IceApe / IceWeasel / Konqueror

您可以安裝 mozilla-mplayerkmplayer-plugin 這兩個套件,讓 IceApe (SeaMonkey) / IceWeasel (Firefox) / Konqueror 也可以透過 MPlayer 播放在內嵌於網頁中的多媒體檔案。但由於尚無法 100% 支援所有網頁可能會使用到的語法,所以某些網站上的影片可能會無法用 MPlayer 播放。

快捷鍵

MPlayer 提供了豐富的快捷鍵能讓使用者方便得操作 MPlayer。例:
  • 【←】、【→】:後退/前進10秒
  • 【↑】、【↓】:後退/前進1分鐘
  • 【PgUp】、【PgDn】:後退/前進10分鐘
  • 【[】、【]】:快轉、慢速播放
  • 【<】、【>】:在播放列表中前進/後退
  • 【p】、【SPACE】暫停電影(按任意鍵繼續)
  • 【q】、【ESC】:停止播放並退出
  • 【/】、【*】:降低/升高音量
  • 【m】:靜音
  • 【f】:切換至全螢幕
  • 【v】:打開或關閉字幕
  • 【j】:切換字幕語言

圖形介面

MPlayer 也提供了一個 GUI 版的 GMPlayer。但個人認為它的介面實在陽春了點,但基本功能都已具備。請不妨試用看看。

其它

目前在 Lenny 及 Sid 裡的 MPlayer 對於影片的長寬比判斷上有些問題;MPlayer 已有繁體中文說明文件,但若您使用 man mplayer 時可能會顯示亂碼。請昇級到 debian-multimedia.org 所提供的最新版 MPlayer 來避開這些問題。

迴響

推薦本頁

寫的很不錯,雖然內容不多,但是幾個重點都有提到。
一般看到的MPlayer都是教你播放、設字幕檔,但是不會跟你說怎麼支援ssa字幕,最常找到的反而是跟你說「MPlayer目前不支援ssa」,但其實加參數「-ass」就可以了,另外mkv的播放,預設的確都不會顯示字幕,而如何在Linux上用firefox看影片,也是很多人的問題,在你的網頁中都提到了,相當值得推薦的網頁。
另外問一下,播放mkv時,指定「-slang chi」是不是有可能不會顯示,而是要用「-slang zh」或「-slang ch」(看影片而定)才能顯示出字幕?

[回應] 阿呆 @ 01/07/2007, 02:58

ass支援還是屬於不完全的狀況

Re:阿呆
看那個mkv設定的字幕名稱是什麼,可以在slang後面多下參數,會按照slang順序決定優先順序

Re:Tetralet
ass支援還是屬於不完全的狀況
1.如果是放在mkv裡面的ass,不管有沒有指定"對"編碼都可以正常讀取
但外掛ass就"一定"要指定對的編碼,否則該字幕視同不存在
2.如果同一影片有ass、srt兩種字幕,在啟用ass後切換,mplayer會不定時crash(尤其編碼不同會更容易crash)
3.啟用ass後會影響srt的效果,雖然還可以指定ass顏色、大小、外框,但是原本srt的模糊就...

對喜歡把設定藏在config或是使用gmplayer的人這幾點的影響很大
mplayer的ass支援還有進步空間

[回應] orange @ 17/09/2007, 20:29

vf expand之後

感謝分享資訊
不過我發現使用-vf expand之後
字幕顯示完不會恢復黑底
結果後面的字幕就一直疊加上去 Or2
有沒有辦法解決呢?

[回應] psboy @ 16/06/2008, 11:17

Re: psboy

那個效果和您使用 -vo 參數所指定的顯示模組有關。在個人的電腦上,用 gl 很正常,可是 CPU Loading 會較高;但用 xv 的話畫面會花掉。所以很難取捨...

[回應] Tetralet @ 17/06/2008, 09:58

原來是這樣...

Re:Tetralet
我試過xv跟x11都會這樣
主機板晶片組是VIA CX700M
看來目前是無解?

[回應] psboy @ 17/06/2008, 16:49

試過gl之後

發現效果還不錯
可惜只對16:9的影片比較好
4:3的影片開這個左右會有黑色的邊框
感覺怪怪的 xD

[回應] psboy @ 22/07/2008, 16:57

在試過gl之後

似乎只對有支援3D的顯示卡有用?
16:9的影片開這個效果很好
不過4:3的影片開了就不太適合
左右多了兩個黑色邊框
感覺很奇怪 xDDD

[回應] psboy @ 22/07/2008, 16:59

後來又發現mkv沒這問題

我後來發現將相同的影片跟字幕
包進去mkv之後
就沒這問題了

[回應] psboy @ 24/08/2008, 16:46

authimage
驗證碼皆為英文大寫字母
僅輸入前4碼即可。後2碼是假的,欺敵用。
這是為了防制 Spam 而設計的。若造成您的不便還請見諒!
Accessible and Valid XHTML 1.0 Strict and CSS
Powered by LifeType - Design by BalearWeb