CoreAVC 1.9 for Linux 安装指南(2)

5.注册 CoreAVCDecoder.ax
如果之前没有使用过 MPlayer 的话,需要创建用户配置文件目录,使用过的话可以跳过:
mkdir-pv $HOME/.mplayer
将保存 MPlayer 配置信息的 $HOME/.mplayer 目录关联为注册表:
export REGISTRY=$HOME/.mplayer/registry32
输入注册码,用你获得的注册码替代下面命令中的 55555-55555-CORE-55555-55555,注意双引号需要保留:
registercodec -r $REGISTRY -k "HKLM\\Software\\CoreCodec\\CoreAVC Pro\\Serial" -v "55555-55555-CORE-55555-55555"

6.用 dshowserver 测试是否注册成功:
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
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

如果使用的是 1.9.0 版本的 CoreAVC 的话,输出结果应该是:
No id specified, assuming test mode
Opening device
Called unk_IsDebuggerPresent
len: 992
ProductVersion: 1.9.0
Win32 LoadLibrary failed to load: nvcuvid.dll, /usr/lib/win32/nvcuvid.dll, /usr/local/lib/win32/nvcuvid.dll
Decoder supports the following YUV formats: YUY2 UYVY YV12 I420
Decoder is capable of YUV output (flags 0x2b)
Setting fmt
Starting
Initialization is complete
此时你可以选择在这里下载它提示缺失的 nvcuvid.dll,然后复制到 /usr/lib/win32 目录下
7z x dgmpgdecnv100b.zip nvcuvid.dll
su -c 'cp -v nvcuvid.dll /usr/lib/win32/'
不过经个人测试这个 dll 文件没什么用处:它是 CoreAVC 1.9 在 Windows 平台下利用 CUDPA GPU 计算加快解码速度的接口,在 Linux 平台下不会起什么作用的……

7.编译并安装 MPlayer
首先当然是解压缩源代码包:
tar xf mplayer-export-snapshot.tar.bz2
之后进入所在MPlayer 源代码目录:
cd mplayer-export-*
生成编译配置文件:
./configure --disable-x264 --disable-x264-lavc --language=zh_CN
如果没有提示错误的话,就打上 CoreAVC for Linux 的补丁:
patch -p0 ../coreavc-for-linux/mplayer/dshowserver.patch
如果没有提示错误的话,就可以开始编译了,首次编译大概需要15分钟左右,以后源代码包更新时有 ccache 帮助就会快很多:
make
如果没有提示错误的话,就可以安装了:
su -c 'make install'

8.配置解码器预置文件
将默认配置文件复制到MPlayer用户配置文件目录下,注意是 etc/codec.conf(也就是当前MPlayer 源代码下的 etc 目录),而不是 /etc/codec.conf (这个是系统etc目录):
cp -v etc/codecs.conf $HOME/.mplayer/
使用任意文本编辑器修改此文件,比如 gedit:
gedit $HOME/.mplayer/codecs.conf
之后将以下内容
videocodec coreserve
info "CoreAVC DShow H264 decoder 1.3 for x86 - "
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
添加到
;=============================================================================
; VIDEO CODECS
;=============================================================================
之后,并且与下一个 videocodec 之间空一行。保存退出。

至此, CoreAVC for Linux 应用于 MPlayer 的过程结束

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/672e2adc3cc2c61bf9a8e3fc8fc364db.html