- 论坛徽章:
- 0
|
终于把mplayer搞好了,现在她已经可以播放高清视频了,具体步骤记录如下:
首先从svn上下载两样东西:
svn checkout
svn://svn.mplayerhq.hu/mplayer/trunk
mplayer
svn checkout
http://coreavc-for-linux.googlecode.com/svn/trunk/
coreavc-for-linux
在从网上找到dshowserver 和 registercodec,把它们放在路径中。
本来想自己编译这两个,但是coreavc-for-linux中的dshowserver和loader中make 会出错。
cp /xxx/CoreAVCDecoder.ax /usr/lib/win32(必须是这个目录)
假装注册一下,骗骗CoreAVCDecoder.ax:
registercodec -r ~/.mplayer/registry32 -k "HKLM\\Software\\CoreCodec\\CoreAVC Pro\\Serial" -v "0OKWX-E83B3-CORE-IQ0UW-3I3B7"
现在测试一下:
dshowserver -c CoreAVCDecoder.ax -s 1280x720 -g 09571a4b-f1fe-4c60-9760de6d310c7c31 -b 12 -f 0x34363248 -o 0x30323449
输出:
No id specified, assuming test mode
Opening device
Called unk_IsDebuggerPresent
len: 992
ProductVersion: 1.7.0
Decoder supports the following YUV formats: YUY2 UYVY YV12 I420
Decoder is capable of YUV output (flags 0x2b)
Setting fmt
Starting
Initialization is complete
表明这个解码器已经可以使用了!
然后开始配置mplayer:
./configure --codecsdir=/usr/lib/codecs --win32codecsdir=/usr/lib/win32
完成之后,打个补丁:(只需要打上这个)
patch -p0 < ../coreavc-for-linux/mplayer/dshowserver.patch
make&&make install
看看~/.mplayer 中有没有codecs.conf ,没有就把它从mplayer源码目录下的etc中拷过来,然后在它的开头加上:
videocodec coreserve
info "CoreAVC DShow H264 decoder 1.3 for x86 -
http://corecodec.org/"
status working
format 0x10000005
fourcc H264,h264 H264
fourcc X264,x264
fourcc avc1,AVC1 AVC1
fourcc davc,DAVC
fourcc VSSH
driver dshowserver
dll "CoreAVCDecoder.ax"
guid 0x09571a4b, 0xf1fe, 0x4c60, 0x97, 0x60, 0xde, 0x6d, 0x31, 0x0c, 0x7c, 0x31
out YV12,IYUV,I420,YUY2
这就是告诉mplayer 可以使用名为coreserver的解码器播放好几种高清视频!
这个时候应该就可以了播放高清了,可以明显看到cpu使用效率提高,而且视频也不卡了!
现在解决字幕问题,非常简单:
ln -s simhei.ttf .mplayer/subfont.ttf
测试播放通过!
提醒一句:就连mplayer的官网上的都说,使用mplayer最好的方式是自己构建,呵呵,要想播放高清就得自己动手。
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/34109/showart_1308350.html |
|