為了為可能進入的實驗室實習做准備,今天重新裝上了Ubuntu,今天的安裝總的來說還是順利多了。在播放軟件上,這次我選擇了VLC,因為感覺mplayer雖然強大,但是始終界面不是十分友好。而VLC也是灰常強大的。
但是,在Linux下播放電影時,經常會遇到亂碼的問題,下面就談談我的經驗。
造成字幕亂碼的原因可能有兩個:
1. GB字符的解碼:
因為Linux下中文默認采取utf-8編碼,所以在解碼GB字符時,會產生亂碼現象,除了用gedit將字幕文件轉換為utf-8編碼外,還可以通過設置VLC實現,具體方法在ubuntu論壇早有討論,現摘錄如下:
1. 首先啟動VLC,按Ctrl+P,左下角的顯示設置 選 全部
2. 依次點開:視頻-字幕/OSD-文本渲染器 右側的字體欄中,選擇一個中文字體。(我選的是/usr/share/fonts/truetype/wqy/wqy-zenhei.ttc)
3. 接著點開:輸入/編碼-其它編碼器-字幕 右側的 字幕文本編碼 選 GB18030
4. 然後 把 自動檢測 UTF-8 字幕 格式化字幕 前面的勾去掉。(這條在新版中似乎已經不存在)
2. 系統字體配置文件的原因
這個也是我具體遇到的問題,幸好,由於flash插件出現了同樣的現象,在另外一個博客中,我找到了這個問題的解決方法,同樣是摘抄如下:
輸入: cd /etc/fonts/conf.d/
為了安全,備份一下: sudo cp 49-sansserif.conf 49-sansserif.conf_backup
輸入如下指令: sudo gedit ./49-sansserif.conf
此時文件顯示內容。
將其中的第1、2、4個後面的sans-serif或者serif用你自己系統中支持中文的字體的名字代替,注意字體名字的大小寫
比如:我的系統中安裝了wqy-zenhei.ttf,我則用wqy-zenhei代替上述所說的字段,結果如下:
<match target=”pattern”>
<test qual=”all” name=”family” compare=”not_eq”>
<string>wqy-zenhei</string>
</test>
<test qual=”all” name=”family” compare=”not_eq”>
<string>wqy-zenhei</string>
</test>
<test qual=”all” name=”family” compare=”not_eq”>
<string>monospace</string>
</test>
<edit name=”family” mode=”append_last”>
<string>wqy-zenhei</string>
</edit>
</match>
OK,以上兩種問題,也就是我在使用Linux下的播放軟件中遇到的問題,將兩個合起來介紹一下,方便一下可能遇到同樣問題的朋友。其實,都是別人的智慧。