mplayer播放新的rmvb格式有图像没声音(已经好了)

本来用mplayer看电影挺好的,一直没出过问题,也几乎没有不认识的格式,可最近从神话下载了几个电影,播放的时候提示错误“could not open codec”,并且只有图像,好像没有声音。把声音开到最大,终于听到了一点点,细细的声音,对照字幕看,也听不出人声来,好像是极度压缩变形了的声音。以为是mplayer有问题呢,找了几个原先下载的电影放了放都正常,遂怀疑是影片压缩格式的问题。

比如说这部电影,文件名是:[绿帽子].Green.Hat.DVDRip.XViD.REPACK-PP.rmvb,用totem打开(用这个播放压根儿就没声),看音频信息是:

Bitrate: 183 kbps Codec: Cook

看来就是解码器的问题了,好像是real这种最新的编码,linux认得还不是很好,这部电影在windows下用很早以前安装的暴风影音都能够正常播放。

在mplayer的Perferences->Codecs & demuxer中,“Audio codec family”里面没有cook选项,但如果选择“FFmpeg/libavcodec audio decoders”,就有刚才那个“could not open codec”错误,如果选“RealAudio decoder”,错误提示就没了,不过两种情况下声音都是老样子。

再来修改/etc/mplayer/codecs.conf(这个文件也可以拷贝到$HOME/.mplayer下,然后在$HOME/.mplayer/config中增加一行“codecs-file=codecs.conf”来覆盖默认设置),注意其中这几句:

audiocodec ffcook info “FFmpeg COOK audio decoder” status working format 0x6B6F6F63 ; “cook” driver ffmpeg dll “cook”

如果保持原样的话,在console下播放刚才的影片会提示:

Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders MC_COOK not supported! Could not open codec. ADecoder init failed 🙁 ADecoder init failed 🙁 Opening audio decoder: [realaud] RealAudio decoder opening shared obj ‘/usr/lib/win32/cook.so’ AUDIO: 44100 Hz, 6 ch, s16le, 183.3 kbit/4.33% (ratio: 22911->529200) Selected audio codec: [ra10cook] afm: realaud (RealPlayer 10 COOK audio)

根本就没有声音,如果把这几句设置用“;”注释掉,播放影片会提示:

Opening audio decoder: [realaud] RealAudio decoder opening shared obj ‘/usr/lib/win32/cook.so’ AUDIO: 44100 Hz, 6 ch, s16le, 183.3 kbit/4.33% (ratio: 22911->529200) Selected audio codec: [ra10cook] afm: realaud (RealPlayer 10 COOK audio) ========================================================================== … ========================================================================== Building audio filter chain for 44100Hz/6ch/s16le -> 0Hz/0ch/??… alsa-init: 1 soundcard found, using: surround51 alsa: 44100 Hz/2 channels/4 bpf/65536 bytes buffer/Signed 16 bit Little Endian AO: [alsa] 44100Hz 2ch s16le (2 bytes per sample) Building audio filter chain for 44100Hz/6ch/s16le -> 44100Hz/2ch/s16le… Starting playback…

声音仍然是老样子。然后在这里看到说可能是libstdc++5的问题,可我明明安装了啊,即使是卸载掉再重新安装(同时还会卸载掉xorg-driver-fglrx,记得重新安装时不要忘记了),问题依旧。

于是又怀疑是cook.so的问题,到mplayerhq去下载了个essential-20061022.tar.bz2,解压缩,替换/usr/lib/win32下面的文件,还另放了一份在/usr/lib/codecs,可都没有解决问题,这个包里面比w32codecs还少一个cook.so.6.0文件呢。

没办法了,网上还有人说可以安装realplayer10,然后把它下面的cook.so拷贝过来用,但我实在不愿意装这个笨重的家伙,谁有现成的?发一个过来给俺试试,windows下的也可以。

目前这些使用超新编码方式的影片,只能使用windows播放,或者干脆就不看了!real自己的封闭格式没事升什么级啊,瞎折腾。

参考:Ubuntu:Mplayer播放某些avi影片有图像没声音的解决方法

update @ 2007-01-01 大概是apt-get upgrade后没有重启的缘故,现在又好了,影片播放都正常了 🙂

update @ 2007-01-06 再遇到没有声音的情况,可以尝试一下更换mplayer使用的音频驱动,比如oss、alsa、esd等,或许就有声音了。

One thought on “mplayer播放新的rmvb格式有图像没声音(已经好了)”

Leave a Reply

Your email address will not be published. Required fields are marked *