小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

mplayer中文字幕解決方案[轉(zhuǎn)載]

 angelbrian 2012-05-29
從linux公社看到的一篇文章,很好的解決了mplayer(gui,non-gui)的中文字幕(內(nèi)嵌,外掛)的顯示問題。對作者表示感謝!
──────────────────
原題:mplayer使用心得
作者:GGGO 2005-01-22 17:22:43 來自:Linux公社
出處:
http://linux./doc/media...1-22/886.shtml
一、首先還是講安裝方面的問題。
具體的安裝見本版的精華帖子,這里不詳細(xì)講。
http://www./nuke/module...wtopic&t=80676
        代碼:
        ./configure --enable-gui --with-codecsdir=/usr/lib/w32/ --language=zh_CN --enable-freetype --enable-fontconfig
這是我使用的編譯參數(shù),僅供參考。
1、解碼器
到官方網(wǎng)站下載,放到一個(gè)目錄下,./configure時(shí)用--with-codecsdir=DIR來指定。
2、GUI
要想使用GUI界面,編譯時(shí)指定--enable-gui參數(shù)。安裝完后,到官方下載皮膚,解壓后放到mplayer的Skin目錄下。之后可以用gmplayer -skin xxx來啟動(xxx為Skin中的皮膚的目錄名)。
3、配置文件
其實(shí)不使用config配置文件也行的。mplayer會使用默認(rèn)的規(guī)則。如果你還是想使用配置文件,可以到源代碼目錄下的etc目錄下找。那個(gè)什么example的文件就是config的實(shí)例文件。
4、字幕字體
有兩個(gè)方法:
A、到官方網(wǎng)站下載字體文件,具體參考mplayer索引中的帖子:
http://www./nuke/module...892464#3892464
使用的是font.desc這個(gè)文件。
B、在編譯是使用--enable-freetype參數(shù)(當(dāng)然要系統(tǒng)支持),在~/.mplayer/下建立subfont.ttf的符號連接到某個(gè)字
體文件。例如我的是subfont.ttf ->
/usr/fonts/truetype/simsun.ttf。這樣mplayer就會自動加載字體了。
方法A可以在config
文件中寫font=/tmp/gb2312-kai/gkai00mp24/font.desc來讓mplayer自動加載。注意config中的
font設(shè)定比subfont.ttf優(yōu)先級更高。(優(yōu)先級應(yīng)該是:命令行中的設(shè)定->config中的設(shè)定-> subfont.ttf)
命令行中指定字體文件,通過-font參數(shù)。例如:
mplayer -font /xxx/font.desc 或 mplayer -font /xxx/simsun.ttf
二、字幕顯示
1、字幕的加載
其實(shí)mplayer是可以自動加載字幕文件的。但是這只是在字幕文件名跟媒體文件名相同時(shí)才起作用(后綴不同)
例如這樣的:
“遷徙的鳥”
Le.Peuple.Migrateur.SBC.AC3_2Ch-SBMovie.CD1.avi
Le.Peuple.Migrateur.SBC.AC3_2Ch-SBMovie.CD1.idx
Le.Peuple.Migrateur.SBC.AC3_2Ch-SBMovie.CD1.sub
Le.Peuple.Migrateur.SBC.AC3_2Ch-SBMovie.CD2.avi
Le.Peuple.Migrateur.SBC.AC3_2Ch-SBMovie.CD2.idx
Le.Peuple.Migrateur.SBC.AC3_2Ch-SBMovie.CD2.sub
這樣的就能自動加載字幕,通過j鍵切換。
但像這種的就不行了
“魔戒3”
dmd-rotktc-cd1.avi
dmd-rotktc-cd1.Chs.srt
dmd-rotktc-cd1.Cht.srt
dmd-rotktc-cd1.Eng.srt
dmd-rotktc-cd2.avi
dmd-rotktc-cd2.Chs.srt
dmd-rotktc-cd2.Cht.srt
dmd-rotktc-cd2.Eng.srt
dmd-rotktc-cd3.avi
dmd-rotktc-cd3.Chs.srt
dmd-rotktc-cd3.Cht.srt
dmd-rotktc-cd3.Eng.srt
這種情況下要使用參數(shù)具體指定一個(gè)字幕文件
mplayer dmd-rotktc-cd1.avi -sub dmd-rotktc-cd1.Chs.srt
其實(shí)mplayer還有一個(gè)聰明的參數(shù)可以使用的,就是
-sub-fuzziness
Adjust matching fuzziness when searching for subtitles:
0 exact match
1 load all subs containing movie name
2 load all subs in the current directory
可以使用-sub-fuzziness 2來讓mplayer加載目錄下的所有字幕文件,播放時(shí)可以通過j鍵切換。
mplayer dmd-rotktc-cd1.avi -sub-fuzziness 2
多說一句,這個(gè)參數(shù)在命令行下是較好使的,但KPlayer中就不行。(我用的是ML1.2b1,呵呵)
2、中文字幕的顯示
有的人安裝了mplayer和字體后,顯示的中文字幕是亂碼。這主要是沒有設(shè)置好參數(shù)的問題。
結(jié)合上面的“字幕字體”中的介紹的兩個(gè)方法,分別要加上以下參數(shù)才能正常顯示中文字幕。
A、font.desc字體的話,要加上-unicode參數(shù)。
B、ttf字體的話,要加上-subcp xxx參數(shù)。其中xxx可能為:cp936、gb、gbk等等,具體要看字幕的編碼格式。
例如:
        代碼:
        mplayer dmd-rotktc-cd1.avi -sub dmd-rotktc-cd1.Chs.srt -font /tmp/gb2312-kai/gkai00mp24/font.desc -unicode
mplayer dmd-rotktc-cd1.avi -sub dmd-rotktc-cd1.Chs.srt -font /usr/share/fonts/simsun.ttf -subcp cp936
其實(shí)上一節(jié)“1、字幕的加載”給出的mplayer的播放命令都是不能正常顯示中文的,因?yàn)闆]加上正確的參數(shù)。
到這里,關(guān)于-sub-fuzziness要多說一下了。為了正確顯示中文,要加-subcp參數(shù),例如-subcp cp936
mplayer dmd-rotktc-cd1.avi -sub-fuzziness 2 -subcp cp936
但這樣又會帶來一個(gè)問題。像上面的魔戒3中,有簡體、繁體和英文字幕。但加上-subcp cp936后,繁體字幕會加載不了。
對于font.desc和ttf這兩種字幕字體,我個(gè)人推薦使用ttf字體。因?yàn)槭褂胒ont.desc會不能正常顯示一些中文字幕(內(nèi)嵌字幕等),即使
加上-unicode參數(shù)?;蛟S行,但我不知道要用什么方法才行。下面,就以ttf字體的例子,講講具體的字幕顯示方法。
總的來說,字幕文件是什么編碼格式,-subcp后面就加上相應(yīng)的編碼。
例如,字幕文件是GB編碼的話,就用-subcp gb
字幕文件是GB2312編碼的話,就用-subcp gb2312
字幕文件是utf8編碼的話,就用-utf8
utf8
的情況很少見,因?yàn)槎鄶?shù)字幕是國人在windows下制作的,使用的都是GB系列的編碼格式,不過你可以把原來的GB系列編碼格式文件轉(zhuǎn)換為utf8格
式,你會發(fā)現(xiàn)使用-utf8參數(shù)后才能正常顯示字幕。同時(shí)你會發(fā)現(xiàn)用font.desc加unicode的方法是不能正常顯示utf8編碼的字幕文件的。
一般的,使用-subcp cp936
就能正常顯示簡體中文字幕。如果你發(fā)現(xiàn)顯示的字幕中有的正常,有的不正常,這說明字幕文件確實(shí)是GB系列編碼的,你可以試試把cp936換成其他的例如
GBK,GB2312等等,總有一個(gè)行的。你還可以用iconv -l來顯示系統(tǒng)中已知的字符集,來幫助你選擇編碼。
我的系統(tǒng)中GB系列有GB, GB2312, GB13000, GB18030, GBK, GB_1988-80, GB_198880
在這方面,mplayer也有一個(gè)不錯(cuò)的選項(xiàng)可以使用。
-subcp enca:: (ENCA only)
You can specify your language using a two letter language code
to make ENCA detect the codepage automatically. If unsure, en-
ter anything and watch mplayer -v output for available lan-
guages. Fallback codepage specifies the codepage to use, when
the autodetection fails.
EXAMPLE:
-subcp enca:cs:latin2
Guess the encoding, assuming the subtitles are Czech,
fall back to latin 2, if the detection fails.
-subcp enca

l:cp1250
Guess the encoding for Polish, fall back to cp1250.
但我發(fā)現(xiàn)這個(gè)選項(xiàng)工作的不太好,例如-subcp enca:zh:cp936
按照上面的說明,應(yīng)該是讓其自動檢測中文編碼,檢測失敗時(shí)使用cp936。
原來使用-subcp cp936能正常顯示的字幕,當(dāng)用-subcp enca:zh:cp936時(shí)反而成了亂碼。
上面所說的都是外掛字幕文件的,現(xiàn)在介紹兩種內(nèi)嵌字幕的媒體格式:
MKV格式:
播放命令:
mplayer \[52wy\]\[Naruto\]\[094\]\[Jp_Cn\]\[Xvid_Bf\].mkv -sid 0 -subcp gb -font /usr/share/fonts/simsun.ttf
建議在命令行下播放,這樣可以看到詳細(xì)的信息:
        代碼:
               播放 [52wy][Naruto][094][Jp_Cn][Xvid_Bf].mkv.
       SUB: error opening iconv descriptor.
       [mkv] Track ID 1: video (V_MS/VFW/FOURCC), -vid 0
       [mkv] Track ID 2: audio (A_MPEG/L3), -aid 0, -alang und
       [mkv] Track ID 3: sutitles (S_TEXT/UTF8), -sid 0, -slang chi
       [mkv] Track ID 4: sutitles (S_TEXT/UTF8), -sid 1, -slang chi
       [mkv] Will play video track 1
       [mkv] Will play audio track 2
       [mkv] Will display subtitle track 3
       檢測到Matroska文件格式。
要使用-sid 0或者-sid 1來指定字幕。不然mplayer默認(rèn)不加載字幕的。
OGM格式:
我在一些國外網(wǎng)站上下載了一些OGM格式的文件,一開始我還以為沒字幕的。后來看到播放信息才發(fā)現(xiàn)原來是內(nèi)嵌的字幕(要通過-sid 0調(diào)出來)
        代碼:
         SUB: error opening iconv descriptor.
       SUB: error opening iconv descriptor.
       檢測到Ogg文件格式。
播放命令:mplayer xxx.ogm -sid 0 -subcp cp1250 (是英文字幕來的)
最后說一下字幕字體大小的設(shè)定。我發(fā)現(xiàn)用
-font /usr/share/fonts/simsun.ttf
顯示的字幕字體大了點(diǎn),有時(shí)字?jǐn)?shù)一多就要多行顯示,實(shí)在不太行。
后來試了試,覺得使用
-subfont-autoscale 2 -subfont-text-scale 4
這兩個(gè)參數(shù)后,字體大小就比較滿意。
3、其他
RMVB
最新的real編碼,mplayer暫時(shí)不支持,要看的話使用realplayer10 for linux。不過這個(gè)軟件在有些機(jī)上工作不太正常。
有些rmvb文件,雖然不是用最新的編碼器制作的,但是用mplayer播放時(shí)會因?yàn)椤岸五e(cuò)誤”而退出。我發(fā)現(xiàn)可能是音頻解碼出了問題,可以使用-nosound來播放,就是沒聲音?;蛘咴囋囉?ss 00:00:50 來跳到50s處播放,有時(shí)可以解決問題。
硬盤上的DVD
mplayer dvd://1 -dvd-device /xxx/dvd -sid 0 -subcp cp936 -framedrop
流媒體文件
mplayer -cache 8192 mmst://xxxxx/xxx.wmv
使用8M的緩存
framedrop參數(shù)
我的配置:賽揚(yáng)366Mhz,440zx主板,256M,GF4mx440,系統(tǒng)MagicLinux 1.2b1、MPlayer1.0pre5。
在我的電腦上,還能流暢播放avi、老的rm/rmvb、ogm、asf等媒體。較新的rmvb、wmv和DVD播放都很慢。發(fā)現(xiàn)只有在播放DVD時(shí)使用
framedrop參數(shù)后能流暢播放,其他的rmvb、wmv使用了framedrop參數(shù)后不但速度沒提高,有時(shí)反而更慢。
暫時(shí)只有這么多。哪位有好的播放心得請續(xù)帖子?。。?

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多