Mplayer 不能播放 MSS 编码的 wmv 格式视频

系统是 12.3 64 位的,安装了 smplayer、mplayer 和 win32codecs-all,可以播放 mkv、rmvb 格式的,但就是不能播放 wmv 格式的,求指教

ffmpeg 可以解码 wmv, 你安装一下试试

Sent from my MI-ONE Plus using Tapatalk 2

win32codecs 这玩意感觉现在它貌似不起任何作用~

怎么安装的。

安装 packman 源 http://ftp.skynet.be/pub/packman/suse/openSUSE_12.3/,然后 zypper 安装 mplayer、smplayer、win32codecs-all

我装了 ffmpeg,但是我怎么使用 mplayer 关联到 ffmpeg 这个解码器呢?

别听他瞎说,mplayer 编译时内置 ffmpeg,它根本不用系统的 ffmpeg。

另外 Packman 源的 mplayer 支持 wmv,我刚放过。

你在终端运行:

mplayer 你的视频.wmv

看有什么错误输出。

是不是WMV9不支持,显示这些信息,你看看

MPlayer dev-SVN-r35127-4.7-openSUSE Linux 12.3 (x86_64)-Packman (C) 2000-2012 MPlayer Team
Can't open joystick device /dev/input/js0: No such file or directory
Can't init input joystick
mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.

Playing 1.wmv.
libavformat version 54.25.104 (internal)
ASF file format detected.
[asfheader] Video stream found, -vid 1
[asfheader] Audio stream found, -aid 2
VIDEO:  [MSS2]  1024x768  24bpp  1000.000 fps  600.0 kbps (73.2 kbyte/s)
Load subtitles in ./
Failed to open VDPAU backend libvdpau_nvidia.so: cannot open shared object file: No such file or directory
[vdpau] Error when calling vdp_device_create_x11: 1
==========================================================================
Requested video codec family [wmsdmod] (vfm=dmo) not available.
Enable it at compilation.
Requested video codec family [wms10dmod] (vfm=dmo) not available.
Enable it at compilation.
Cannot find codec matching selected -vo and video format 0x3253534D.
==========================================================================
==========================================================================
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
libavcodec version 54.54.100 (internal)
AUDIO: 11025 Hz, 1 ch, floatle, 10.0 kbit/2.83% (ratio: 1250->44100)
Selected audio codec: [ffwmavoice] afm: ffmpeg (WMA Voice audio (FFmpeg))
==========================================================================
AO: [pulse] 11025Hz 1ch floatle (4 bytes per sample)
Video: no video
Starting playback...
A:   6.9 (06.9) of 2865.8 (47:45.7)  3.7% 
[wmavoice @ 0xea2b20]WMAPro-in-WMAVoice support not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented.
[wmavoice @ 0xea2b20]If you want to help, upload a sample of this file to ftp://upload.ffmpeg.org/MPlayer/incoming/ and contact the ffmpeg-devel mailing list.
A:   7.5 (07.4) of 2865.8 (47:45.7)  3.0% 
[wmavoice @ 0xea2b20]WMAPro-in-WMAVoice support not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented.
[wmavoice @ 0xea2b20]If you want to help, upload a sample of this file to ftp://upload.ffmpeg.org/MPlayer/incoming/ and contact the ffmpeg-devel mailing list.

精简下错误基本是这些。

第一个错误,你是 Nvidia 显卡吗?是的话装一下 libvdpau1 和 vdpau-video。看看消失没。不是 Nvidia 显卡就请当它不存在。

第二个错误是 MSS 编码的 WMV 需要编译时支持 32 位的 w32codec-all,我回头看看我们的 MPlayer。

参考:[ubuntu] 64 bit Ubuntu can not play MSS2 video encoded WMV files?

wmsdmod 和 wms10dmod 是 w32codec-all 里面的两个 dll:

mplayerhq.hu/MPlayer/DOCS/codecs-status.html

第三个错误是 FFMpeg 尚未实现 WMAPro 功能。查了下最新的 FFMpeg git tree,依然未实现:

git.videolan.org/?p=ffmpeg.git;a=blob;f=libavcodec/wmavoice.c;h=1bf2497667e2464b233f63cd8aa7536124f5be76;hb=HEAD

avpriv_request_sample(ctx, “WMAPro-in-WMAVoice”);

1赞

mplayer 我记得上次我安装搞了一大圈!结果成功!只是不知道是怎么成功的!到现在也不清楚!呵呵!