Linux 看電影都是用 Mplayer, 平常所有影片都能看, 但是最近有個 rmvb 不能看(有聲音, 沒畫面), 但是我新灌的電腦可以看, 應該是 codecs 太舊的原因, 所以來更新看看.
如果您只是要安裝 Mplayer 與 確定可以正常顯示等等, 請先試此篇文章這兩個步驟:
- 安裝 / 更新 Mplayer Codecs
- 設定 視頻輸出驅動 (vo)
如果不行, 再參考本篇內其它步驟~ 🙂
註: 感謝 shell 的指點, Debian 有寫好的 Script 可以直接執行, 就會自動安裝好.
sudo /usr/share/mplayer/scripts/binary_codecs.sh install
安裝 / 更新 Mplayer Codecs
安裝 和 更新 基本上作法都一樣, 作法如下:
- 於 Mplayer codecs 下載 all-20071007.tar.bz2 # 不過看到這個我覺得更新似乎沒什麼用, 從 2007年到現在都沒更新過. XD
- tar xvf all-20071007.tar.bz2
- mv all-20071007 /usr/lib/codecs # codecs 需放的位置
- ln -s /usr/lib/codecs /usr/lib/win32 # codecs 會找得目錄有 codecs 和 win32
- 這樣子就完成了. (照理說這樣子就可以看所有格式的檔案了, rmvb / avi ... 等)
安裝 Realplayer
發現 rmvb 還是不能看, 於是再來安裝 realplayer.
- vim /etc/apt/sources.list # 加入下面這行
deb http://www.debian-multimedia.org stable main
- apt-get update
- apt-get install realplayer # 安裝 realplayer
升級 codecs 採用 debian-multimedia 版本
安裝完 realplayer, 還是不能看, 就想看 debian-multimedia 的 codecs 是否會比較新, 於是試試升級看看.
- apt-get upgrade
- acidrip libfaac0 libxvidcore4 # 發現有這三個檔案可以升級, 於是按 "y" 升級上去.
設定 視頻輸出驅動 (vo)
結果還是不能看, 還是手動執行 mplayer 看錯誤訊息:
- 發現是 mplayer -vo 指定錯誤, 幾乎所有影片都可以看, 完全沒想到是輸出指定錯誤, 而且已經這樣子看快 2年了. XD
- 原來 -vo 指錯, 還是可以正常看影片, 只有偶爾幾片會是沒畫面的狀況, 所以解法就是在 .mplayer/gui.conf 設定正確的驅動, 並於常用的 Gmplayer 等軟體, 也設定正確的驅動即可.
如果 .bashrc 要寫 alias mplayer='mplayer -vo x11' 等, 可以用下述方法寫:
- alias mplayer='mplayer -vo xv,x11 -zoom'
- alias gmplayer='gmplayer -vo xv,x11 -zoom -autosync 1'
- -vo 可以指定驅動程式的優先使用順序.
使用 Totem 播放影片
感謝 過客 指點, Totem 之前使用一直都說沒有 codecs, 解法詳可見: totem for real, 在此也做個紀錄:
- sudo apt-get install totem-xine w32codecs
- vim ~/.gnome2/Totem/xine_config
- 找出「decoder.external.real_codecs_path」及「decoder.external.win32_codecs_path」這兩條設定,改成「/usr/lib/win32」
都用totem,省得多裝一個mplayer
sudo apt-get install totem-xine w32codecs
編輯~/.gnome2/Totem/xine_config
找出「decoder.external.real_codecs_path」及「decoder.external.win32_codecs_path」這兩條設定,改成「/usr/lib/win32」
debian的发行中有这么一个档案。
/usr/share/mplayer/scripts/binary_codecs.sh
执行后自动下载解码器安装。
非常感謝指點, 你們都解決了我一個很大的問題.
1. totem 使用上, 每次都會有找不到 codecs 的問題.
2. 要自動下載 codecs, 我本來也打算自己寫一個 .sh 檔來做, 果然有前輩都先寫好了~
感恩~