请参阅 Ubuntu简介
请参阅 添加其他软件库
请参阅 安装Codecs
请参阅 安装DVDPlayback
sudo apt-get install mplayer
sudo apt-get install mplayer-fonts
sudo apt-get install mozilla-mplayer
sudo cp /etc/mplayer/mplayer.conf /etc/mplayer/mplayer.conf_backup
sudo gedit /etc/mplayer/mplayer.conf
找出下面这一行
...
vo=x11, # To specify default video driver (see -vo help for
...
以下面这一行取代
vo=xv, # To specify default video driver (see -vo help for
安装 w32codecs解码器(用于播放wmv、rmvb等常见windows平台下的多媒体文件;假设你已经添加了ubuntu-cn源)。
$ sudo apt-get install w32codecs
你也可以自己到Mplayer网站下载最新的解码包,网址是 http://www.mplayerhq.hu/design7/dload.html 选择其中"Binary Codec Packages"标题下的"linux x86 ...", 如Linux x86 20061022, 下载後解压到 /usr/local/lib/codecs/ 或 /usr/local/lib/win32即可。 英文原文是:
Unpack the codecs archives and put the contents in a directory where MPlayer
will find them. The default directory is /usr/local/lib/codecs/ (it used to be
/usr/local/lib/win32 in the past, this also works) but you can change that to
something else by passing the '--codecsdir' option to './configure'.
cd ; mkdir .mplayer
ln -sf /usr/share/fonts/truetype/arphic/uming.ttf .mplayer/subfont.ttf
gedit .mplayer/gui.conf
sub_cp = "GBK"
font_text_scale = "4.000000"
font_osd_scale = "4.000000"
sub_fuzziness=2
mplayer皮肤的安装:假设下载回来的是名字是skin_name.tar.bz2的压缩包:(以下操作以在Nautilus文件管理器下操作为主)
解压缩下载回来的tar.bz2包,得到skin_name这个文件夹。接下来把这个文件夹剪切到
自己home目录下的 .mplayer/skins下,此目录为隐藏属性需要ctrl+h键才能看到。
如果播放时提示错误,设置一下:
Preferences-Video 选择 "xv X11/Xv"
Preferences-Codecs&demuxer 选择 "FFmpeg/libavcodec audio decoders"
ps1:经测试安装w32codecs后的Mplayer可以正常播放avi mov mpg rmvb rm asf wmv格式视频,真不愧号称
Linux上的暴风影音啊,我认为是有过之而无不及。
2、关于字幕。
在xine下面,似乎从来没有为字幕操过心,Load Subtitle一直很正常,包括对DVD的字幕支持也很好。
在mplayer下面有时候当设置不好时会乱码或者是显示不出,其实这也还是汉字编码问题。在~/.mplayer/config文件中可以对
mplayer进行配置,以下是我的配置内容。
font=/usr/share/fonts/VeraSansYuanTi/VeraSansYuanTi-Regular.ttf
subfont-text-scale=3.5
vo=x11
zoom=yes
注意,我们平时用的是gmplayer而并不是mplayer,gmplayer的配置文件是~/.mplayer/gui.conf但道理是一样
的。
打入命令:
mplayer -sub xxx.sub -subcp utf8(自己替换成字幕文件的编码,好像更多的是gb18030) xxxxx.avi
也就是说其实用什么字幕文件,字幕文件的编码,字幕文件的字体,大小,其实都是自己可以配置的,要是比较懒,就把它们都写进配置文件里面(我喜欢练听
力,所以一般不加字幕)。
3、关于流媒体
kaffeine对流媒体的协议支持很好,xine本身可能是编码识别的问题,只要播放的地址有汉字,就会显示"缺少插件",但如果没有汉字则没有问
题,非常正常。而且mplayer也是如此。所以我们只要结合一下kaffeine的长处就可以了。安装kaffeine-xine,也就是让
kaffeine使用xine的引擎来解码,在加上kaffeine-mozilla扩展浏览器的播放流媒体的能力,流媒体就使用的非常顺利了。另外,
还有一个可以用mplayer来下载流媒体文件的方法。
mplayer -dumpstream -dumpfile xx.local.avi xx.remote.avi
还有一点要顺便说明的是,有很多视频播放网站(例如video.ustc.edu.cn)的不是直接播放,而是一个php文件,其实是个文本文件,里面
再放上真实地址。这时会报告说kaffeine"缺少插件"(又是这个该死的信息),这时打开文本,把地址copy出来,直接播放这个地址就可以了。
4、顺便提提
mplayer的播放库应该是avcodec吧(极其优秀,M的开发者对这个极度自豪),divx,xvid,x264等应该都是用这个解码的,但
wmv,rm应该是用win32codec解码才对,不过从播放的效果来看,不大像是win32codec,尤其是wmv,很卡,可能现在已经变了,我
手头上的pdf文档有点老了。
5、codec和引擎的区别
codec记录了文件怎么编码,怎么解码,而引擎是去调用codec的执行者,通过对数据文件的读取,和对codec的调用,使得可以将数据中的内容显
示在屏幕上,放出声音来。
6、我们所用的w32codecs 是什么?
它是mplayer官方站点上对一些codec进行的打包。mplayer本身是跨平台的程序,它可以读取dll中的接口信息,调用dll,很多私有格
式,并没有公开它的内部编码,只是释出了dll,让其他程序可以调用dll中的接口,来进行编解码,这包括realmedia和microsoft 的
文件。所以,我们在w32codecs中,可以看到很多dll,而不是linux常用的shared object(so)文件。顺便说一下,xine
除了原生支持的一些格式外,它也是通过调用外部的这些codecs来解码的,所以w32codecs不仅对mplayer很关键,对xine也是一样。
至于gstreamer嘛,呵呵,gstreamer有一个子项目,叫做pitfall~~自己在包管理器里就可以看到了。它的作用就是提供对外挂
dll的支持~呵呵,现在大家知道为什么gstreamer也可以放wmv了吧?
7、mpeg4规范
我们知道,wmv,wma,xvid,divx,很大一部分avi,他们都是所谓的mpeg4的文件,这种文件的压缩比极高,但是显示的质量并没有太大
的改变。mpeg2就是我们常见的dvd所采用的编码规范,MPEG(活动图像专家组)包括一组规范。其中5,6已经胎死腹中,mpeg7不是面向消费
的。
上面讲得mpeg的是背景,下面讲mpeg4的正题:第一个mpeg4规范的实现,是由M$作出来的,不过很快就被破解了,之后破解版本有了很多的分支
(如xvid,divx等),M$自己的文件也有版本更新,所以,mpeg4不是一种固定的格式,而是一组格式的统称,他们都可以上朔到M$的最初版
本。对于用开源编码实现的视屏文件,我们可以用原生的codec来解压,例如libxvid,但是很多闭源codec编码的文件就不一定可行。不过在解
码器上,有一个非常出色的软件,叫做ffmpeg,由原来的avcodecs发展而来。由于各种文件都是一个源泉,所以有时候,还是可以解压来看的。但
是会要么没声音,要么出花纹,要么无法拖放~~这里面可能是引擎无法正确调用codec,有可能是调用了类似的codec,有可能是开源的codec的
本身的限制......所以如果出了问题,可以试着指定另外的codec来看看~
总结:建议的配置安排:
totem + totem-gstreamer
xine + kaffeine-xine
mplayer
三套马车,三套不同的播放库,任何媒体,总有一款合适你!
希望废话的地方能稍稍解除一点大家的疑问