Win10论坛

Win10正式版系统下载主题平板

重定义Modern UI,打造完美Windows全新体验

Windows10下载|安装|新手宝典|必备软件

搜索
查看: 8844|回复: 175

[分享] 傻瓜式仿冒声卡驱动第二季(仿冒ALC892)   [复制链接]

Rank: 5Rank: 5Rank: 5

UID
4783896
帖子
1124
PB币
615
贡献
0
技术
0
活跃
543
发表于 2016-4-11 23:44:44 |显示全部楼层
本帖最后由 13469977015002 于 2016-4-12 22:11 编辑

因为以前写的教程仿冒892不成功,所以本次教程专门针对ALC892第一季提到的内容将不再重复,有不懂的地方请移步:
http://bbs.pcbeta.com/viewthread-1677191-1-1.html

一楼为小白扫盲(不懂的地方欢迎提问,我会在一楼更新)
①打开codec,搜索Pin Default
Pin Default  0x411111f0: [N/A] Speaker at Ext Rear 中间带有[N/A] 即是无用的节点


②configdata的组成
Pin Default我们可以得到8个数字(以下称为1-8)和nodeID
从codec开头得到Address值
configdata排列为
Address值+nodeID+71c+78  Address值+nodeID+71d+56  Address值+nodeID+71e+34  Address值+nodeID+71f+12
每个节点会有4组数据,修改4组数据的最后2个数即可

Rank: 5Rank: 5Rank: 5

UID
4783896
帖子
1124
PB币
615
贡献
0
技术
0
活跃
543
发表于 2016-4-11 23:45:09 |显示全部楼层
本帖最后由 13469977015002 于 2016-4-12 01:40 编辑

二楼计算configdata值本贴以微星GS70为例,上传codec给新手作为参考
一。得到所有我们需要的节点
将codec改名为codec_dump,把其中带有function ID的那行删除,不可用留空行,保证把那行回车也删了
下载文件解压到桌面
打开终端输入
cd desktop
./verbit codec_dump.txt > verbs.txt
运行完毕,桌面会得到文件verbs,将其打开如下图


   Jack   Color  Description                  Node     PinDefault             Modified Verbs
--------------------------------------------------------------------------------------------------------
Unknown Unknown  Line Out at Ext N/A         17 0x11   0x40000040   01171c40 01171d00 01171e00 01171f40
Digital Unknown  Mic at Int N/A              18 0x12   0x90a60150   01271c50 01271d00 01271ea6 01271f90
HP Out at Ext Rear    0x14 0x14                        18944016 01471c10 01471d10     01471e21 01471f01  
Mic at Ext Rear    0x18 0x18                        27332672 01871c60 01871d10     01871ea1 01871f01  
Line In at Ext Rear    0x1a 0x1a                        25235535 01a71c70 01a71d10     01a71e81 01a71f01  
Speaker at Int N/A    0x1b 0x1b                        2417426720 01b71c20 01b71d00     01b71e17 01b71f90  
Analog UNKNOWN  CD at Ext N/A               29 0x1d   0x4037b42d   01d71c80 01d71db0 01d71e37 01d71f40
Optical   Black  SPDIF Out at Ext Rear       30 0x1e   0x01451130   01e71c30 01e71d10 01e71e45 01e71f01
--------------------------------------------------------------------------------------------------------
得到信息如下

Description                      NodeID
Line Out at Ext N/A           0x11
Mic at Int N/A                    0x12
HP Out at Ext Rear           0x14
Mic at Ext Rear                 0x18
Line In at Ext Rear            0x1a
Speaker at Int N/A             0x1b
CD at Ext N/A                   0x1d
SPDIF Out at Ext Rear      0x1e


打开codec搜索上面的NodeID,找到每个ID下面的Pin Default那行,看看中间是否有[N/A],将有[N/A]的删除。

整理后如下
Description                      NodeID
Mic at Int N/A                    0x12
HP Out at Ext Rear           0x14
Mic at Ext Rear                 0x18
Line In at Ext Rear            0x1a
Speaker at Int N/A             0x1b
SPDIF Out at Ext Rear      0x1e



打开codec找到Address值。我的Address= 0


二。排列configdata
根据一楼的介绍排列成如下形式
01271C⑦⑧ 01271D⑤⑥ 01271E③④ 01271F①②
01471C⑦⑧ 01471D⑤⑥ 01471E③④ 01471F①②
01871C⑦⑧ 01871D⑤⑥ 01871E③④ 01871F①②
01A71C⑦⑧ 01A71D⑤⑥ 01A71E③④ 01A71F①②
01B71C⑦⑧ 01B71D⑤⑥ 01B71E③④ 01B71F①②
01E71C⑦⑧ 01E71D⑤⑥ 01E71E③④ 01E71F①②
01470C02

codec内有EAPD字样的,必须在configdata最后加入一组01470C02


三。修改①-⑧的数值
是接口的顺序。数字越低那么优先权就越高。每一个接口的顺序必须不一样。Codec_dump出来的有些接口顺序号码是一样,所以一定要改过来。如果有 [N/A] 的接口既是无用的接口可以设成 f。
如果你的声卡有line out 节点那么
Mic at Int N/A  =5
HP Out at Ext Rear =1
Mic at Ext Rear = 4
Line In at Ext Rear =4
Speaker at Int N/A          =1
SPDIF Out at Ext Rear   =3
line out=2
如果无line out则
Mic at Int N/A  =5
HP Out at Ext Rear =1
Mic at Ext Rear = 4
Line In at Ext Rear =4
Speaker at Int N/A          =2
SPDIF Out at Ext Rear   =3

对于⑧line out设置为f,其余皆为0
⑤为插口颜色
0 = Unknown
1 = Black
2 = Grey
3 = Blue
4 = Green
5 = Red
6 = Orange
7 = Yellow
8 = Purple
9 = Pink
A - D = Reserved
E = White
F = Other
这个没什么好说的,自己在codec中查找。


⑥:接口一般是 0,意思是之当接口被检测到就直接使用。如果是本本的话内建的麦克风和喇叭要设成1。理论是当我们把耳机插入本本机口的时候,内建喇叭会静音,耳机0 接口被检测到就是用耳机。
Mic at Int N/A  =1
HP Out at Ext Rear =0
Mic at Ext Rear = 0
Line In at Ext Rear =0
Speaker at Int N/A          =1
SPDIF Out at Ext Rear   =1
line out=0

说明特定接口的功能是什么,对应以下设置就OK
0 = Line Out
1 = Speaker
2 = HP Out
3 = CD
4 = SPDIF Out
5 = Digital Other Out
6 = Modem Line Side
7 = Modem Handset Side
8 = Line In
9 = AUX
A = Mic In
B = Telephone
C = SPDIF In
D = Digital Other In
E = Reserved
F = Other

④是连接装置类型
0 = Unknown
1 = 1/8" stereo/mono
2 = 1/4' stereo/mono
3 = ATAPI internal
4 = RCA
5 = Optical
6 = Other Digital
7 = Other Analog
8 = Multichannel Analog (DIN)
9 = XLR/Professional
A = RJ-11 (Modem)
B = Combination
F = Other
通常接口是 1/8" stereo/mono,SPDIF 是 Optical。本本内建的接口是 ATAPI internal。

Mic at Int N/A  =3
HP Out at Ext Rear =1
Mic at Ext Rear = 1
Line In at Ext Rear =1
Speaker at Int N/A          =3
SPDIF Out at Ext Rear   =5
line out=1


对于①: 0就是插入接口的,就像麦克风、喇叭等。如果你dump出来有 [N/A] 的就是无用的port,这里的数字是4。
而9通常是给本本的,像内置喇叭、内置麦克风等Mic at Int N/A  =9
HP Out at Ext Rear =0
Mic at Ext Rear = 0
Line In at Ext Rear =0
Speaker at Int N/A          =9
SPDIF Out at Ext Rear   =0
line out=0


②表示插口所在位置
0 = Rear
1 = Front
8=HDMI
9=ATAPI
我的设置如下
Mic at Int N/A  =9
HP Out at Ext Rear =1
Mic at Ext Rear = 1
Line In at Ext Rear =1
Speaker at Int N/A          =9
SPDIF Out at Ext Rear   =0
line out=1


整理后
01271C50 01271D01 01271EA3 01271F99 01471C10 01471D10 01471E21 01471F01 01871C40 01871D10 01871EA1 01871F01 01A71C4F 01A71D10 01A71E81 01A71F01 01B71C20 01B71D01 01B71E13 01B71F99 01E71C30 01E71D11 01E71E45 01E71F01 01470C02




附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 5Rank: 5Rank: 5

UID
4783896
帖子
1124
PB币
615
贡献
0
技术
0
活跃
543
发表于 2016-4-11 23:45:28 |显示全部楼层
本帖最后由 13469977015002 于 2016-4-12 01:39 编辑

开始修改appleHDA
一.
为了方便统一设置layoutID=1
将configdata填入info文件

二.
使用IDSDT生成声卡驱动,找到文件Platforms.xml,如下图

在第一季解释过黑苹果的耳机麦克风必须走lin in,而892本身有line  in。所以这里要把耳机麦克风的节点删除,使用line in充当耳机麦克风(configdata中不能屏蔽,笔记本屏蔽后可能导致声卡整个不工作)
Mic at Ext Rear(耳机麦克风)          nodeID= 18(16进制)=24(10进制)  
pathmap的子项0下面有2个节点0-0和0-1
0-1节点的最好一个nodeID=24
删除0-1节点


1-0的节点为line in,如上图将1-0节点剪切到原来的0-1位置,实现内置麦克风和耳机麦克风自动切换。
加上Boost=3否则无电平
修改pathmapID=892
最后转换格式为Platforms.xml.zlib


使用我提供的layout1.xml.zlib




附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 5Rank: 5Rank: 5

UID
4783896
帖子
1124
PB币
615
贡献
0
技术
0
活跃
543
发表于 2016-4-11 23:45:46 |显示全部楼层
本帖最后由 13469977015002 于 2016-4-15 07:02 编辑

HDAEnable和clover注入ID不能让这个声卡驱动正常工作所以这里必须采用DSDT注入ID
打开DSDT搜索HDEF插入函数
Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
            {
                Store (Package (0x0A)
                    {
                        "hda-gfx",
                        Buffer (0x0A)
                        {
                            "onboard-1"
                        },

                        "codec-id",
                        Buffer (0x04)
                        {
                             0x92, 0x08, 0xEC, 0x10                        
                        },
                        "layout-id",

                       Buffer (0x04)
                        {         
                             0x01, 0x00, 0x00, 0x00
                        },
                        "device-type",
                        Buffer (0x07)
                        {
                            "ALC892"
                        },

                        "PinConfigurations",
                        Buffer (Zero) {}
                    }, Local0)
                DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                Return (Local0)                }


Rank: 5Rank: 5Rank: 5

UID
4783896
帖子
1124
PB币
615
贡献
0
技术
0
活跃
543
发表于 2016-4-11 23:46:05 |显示全部楼层
本帖最后由 13469977015002 于 2016-4-13 16:05 编辑

终于写完了上几张效果图





附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 5Rank: 5Rank: 5

UID
4783896
帖子
1124
PB币
615
贡献
0
技术
0
活跃
543
发表于 2016-4-11 23:47:31 |显示全部楼层
本帖最后由 13469977015002 于 2016-4-13 23:54 编辑

其他型号的声卡驱动(使用HDAEnable无效果的就采用DSDT注入ID)
ACER V5-471G ALC269 271X:
ACER E1-471G ALC269 271X:
华硕A450J  ACL269VC:
ThinkPAD S3 S440 CX20751/2:
联想Y510 ALC888:
戴尔游侠7447 ALC255 (ALC3234):
神舟K580S ALC269VC:
同方笔记本(具体型号不明)269vc:
台式机ALC262(具体型号不明):(layoutID=1)


v5-471g:




附件: 你需要登录才可以下载或查看附件。没有帐号?注册

作死党

Rank: 7Rank: 7Rank: 7

UID
4690694
帖子
1278
PB币
335
贡献
0
技术
0
活跃
985
发表于 2016-4-11 23:48:17 来自手机 |显示全部楼层
我来占楼

Rank: 5Rank: 5Rank: 5

UID
4112840
帖子
881
PB币
456
贡献
0
技术
0
活跃
1273

十一周年

发表于 2016-4-12 00:36:48 |显示全部楼层
直接权限设置255 编辑完 解除多好的

Rank: 7Rank: 7Rank: 7

UID
4776985
帖子
1908
PB币
643
贡献
0
技术
0
活跃
755
发表于 2016-4-12 00:39:34 来自手机 |显示全部楼层
顶一个,我的也是ALC892

Rank: 1

UID
2555177
帖子
26
PB币
25
贡献
0
技术
0
活跃
25
发表于 2016-4-12 00:42:09 |显示全部楼层
我的也是ALC892
板子是z170-a

Rank: 5Rank: 5Rank: 5

UID
4793466
帖子
710
PB币
380
贡献
0
技术
0
活跃
774
发表于 2016-4-12 07:47:13 来自手机 |显示全部楼层
谢谢分享  

Rank: 5Rank: 5Rank: 5

UID
4793466
帖子
710
PB币
380
贡献
0
技术
0
活跃
774
发表于 2016-4-12 07:48:06 来自手机 |显示全部楼层
谢谢分享  

Rank: 2Rank: 2

UID
4792548
帖子
329
PB币
1
贡献
0
技术
0
活跃
330
发表于 2016-4-12 12:58:52 来自手机 |显示全部楼层
支持!!!

Rank: 2Rank: 2

UID
4792548
帖子
329
PB币
1
贡献
0
技术
0
活跃
330
发表于 2016-4-12 12:59:24 来自手机 |显示全部楼层
感谢大大分享

Rank: 5Rank: 5Rank: 5

UID
3649646
帖子
587
PB币
546
贡献
0
技术
0
活跃
280
发表于 2016-4-12 21:25:48 |显示全部楼层
我的主板是华硕z170-ar 声卡是alc 892,准备用楼主的教程试试

Rank: 5Rank: 5Rank: 5

UID
894316
帖子
584
PB币
1318
贡献
0
技术
28
活跃
262
发表于 2016-4-12 21:56:15 |显示全部楼层
楼主这里应该是71d吧?
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 2Rank: 2

UID
1894281
帖子
385
PB币
94
贡献
0
技术
3
活跃
845
发表于 2016-4-12 22:03:46 来自手机 |显示全部楼层
收藏备用。。

Rank: 5Rank: 5Rank: 5

UID
4783896
帖子
1124
PB币
615
贡献
0
技术
0
活跃
543
发表于 2016-4-12 22:11:10 |显示全部楼层
sblook 发表于 2016-4-12 21:56
楼主这里应该是71d吧?

好吧写错了 没注意

Rank: 1

UID
1379050
帖子
40
PB币
99
贡献
0
技术
0
活跃
27
发表于 2016-4-12 22:13:54 |显示全部楼层
太厲害了~我實在無法這樣~折磨阿
還是買一個外接是錄音介面比較快

Rank: 5Rank: 5Rank: 5

UID
3649646
帖子
587
PB币
546
贡献
0
技术
0
活跃
280
发表于 2016-4-13 07:29:56 |显示全部楼层
楼主,请问codec在mac下有办法获取吗?
关闭

站长推荐

已经开启实名认证了哟
这里可以进行实名操作:点我点我点我
回顶部
Copyright (C) 2005-2018 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛 | 电脑硬件 | 安卓软件