在 Linux 看影片, ssa 的字幕總是不會出現, 但是在 Windows 上看就是都正常, 原來是編碼問題才秀不出字幕的~
主要來源是看: 如何掛載.ssa格式的字幕 -- MPlayer
此篇文章
ssa 檔通常都是 UTF-16 的編碼, 在 Mplayer 上要看, 要轉成 Big5 編碼的才可以., 若 Mplayer 有編入 iconv 支援, 就可以 -subcp utf-16le
直接看, 不然就照下述轉成 Big5 編碼看囉~
只要照下述步驟轉換即可: (檔名 123.utf16.ssa)
- apt-get install zh-autoconvert
- iconv -f utf16 -t utf8 123.utf16.ssa > 123.utf8.ssa # UTF-16 => UTF-8
- autob5 -i utf8 -o big5 < 123.utf8.ssa > 123.big5.ssa # UTF-8 => Big5
這樣子就有 123.big5.ssa 可以用囉, 再 123.big5.ssa 改檔名, 改成跟影片檔同檔名就可以看到字幕囉~
其它相關:
建議這位同學,先確認你的 mplayer 有編入 iconv 支援,然後在播放時指定 -subcp utf-16le 即可
ps. ssa 未必是 utf16 編碼啦,我也拿到過一堆 utf8 的
big5 的字幕會掉一堆字,我好久以前就放棄囉
原來如此, 感謝 letoh 大大.. Orz..
我拿到的正好都是 UTF-16 編碼的, 沒拿過其它的, 所以以為只有 UTF-16 的而已.. 感恩 Orz...
我自己是在 mplayer 的 config 內先開 utf8、unicode、ass 三個選項,subcp 先設 ucs-2le (或 utf-16le 也可以),遇到 utf8 或其他編碼再手動指定 -subcp
印象中 mplayer 的文件目錄中有一份文件是講字幕編碼的,可以找找看
嗯嗯, 一直都沒有用 man mplayer 來看(每次都是 --help), 看起來可以設定的東西還真不少.. @.@;