- 积分
- 254
- 最后登录
- 2021-10-5
- 精华
- 0
- 阅读权限
- 30
- 主题
- 42
- UID
- 2785018
- 帖子
- 560
- PB币
- 560
- 威望
- 5
- 贡献
- 0
- 技术
- 0
- 活跃
- 713
- UID
- 2785018
- 帖子
- 560
- PB币
- 560
- 贡献
- 0
- 技术
- 0
- 活跃
- 713
|
本帖最后由 imeeior 于 2018-5-2 13:07 编辑
如下图所示,仿冒声卡制作驱动后系统报告--音频中只显示内建输入和内建输出,但没有详细内容:
系统报告中显示已加载AppleHDA.kext
以下是我仿冒声卡的操作流程。
原始Codec.txt内容如下:
- Codec: Realtek ALC269VC
- Address: 0
- AFG Function Id: 0x1 (unsol 1)
- Vendor Id: 0x10ec0269
- Subsystem Id: 0x17aac020
- Revision Id: 0x100203
- No Modem Function Group found
- Default PCM:
- rates [0x5f0]: 32000 44100 48000 88200 96000 192000
- bits [0xe]: 16 20 24
- formats [0x1]: PCM
- Default Amp-In caps: N/A
- Default Amp-Out caps: N/A
- State of AFG node 0x01:
- Power states: D0 D1 D2 D3 CLKSTOP EPSS
- Power: setting=D0, actual=D0
- GPIO: io=2, o=0, i=0, unsolicited=1, wake=0
- IO[0]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
- IO[1]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
- Node 0x02 [Audio Output] wcaps 0x41d: Stereo Amp-Out
- Control: name="Headphone Playback Volume", index=0, device=0
- ControlAmp: chs=3, dir=Out, idx=0, ofs=0
- Device: name="ALC269VC Analog", type="Audio", device=0
- Amp-Out caps: ofs=0x57, nsteps=0x57, stepsize=0x02, mute=0
- Amp-Out vals: [0x00 0x00]
- Converter: stream=5, channel=0
- PCM:
- rates [0x560]: 44100 48000 96000 192000
- bits [0xe]: 16 20 24
- formats [0x1]: PCM
- Power states: D0 D1 D2 D3 EPSS
- Power: setting=D0, actual=D0
- Node 0x03 [Audio Output] wcaps 0x41d: Stereo Amp-Out
- Control: name="Speaker Playback Volume", index=0, device=0
- ControlAmp: chs=3, dir=Out, idx=0, ofs=0
- Amp-Out caps: ofs=0x57, nsteps=0x57, stepsize=0x02, mute=0
- Amp-Out vals: [0x3c 0x3c]
- Converter: stream=5, channel=0
- PCM:
- rates [0x560]: 44100 48000 96000 192000
- bits [0xe]: 16 20 24
- formats [0x1]: PCM
- Power states: D0 D1 D2 D3 EPSS
- Power: setting=D0, actual=D0
- Node 0x04 [Vendor Defined Widget] wcaps 0xf00000: Mono
- Node 0x05 [Vendor Defined Widget] wcaps 0xf00000: Mono
- Node 0x06 [Audio Output] wcaps 0x611: Stereo Digital
- Control: name="IEC958 Playback Con Mask", index=16, device=0
- Control: name="IEC958 Playback Pro Mask", index=16, device=0
- Control: name="IEC958 Playback Default", index=16, device=0
- Control: name="IEC958 Playback Switch", index=16, device=0
- Control: name="IEC958 Default PCM Playback Switch", index=0, device=0
- Device: name="ALC269VC Digital", type="SPDIF", device=1
- Converter: stream=5, channel=0
- Digital: Enabled
- Digital category: 0x0
- IEC Coding Type: 0x0
- PCM:
- rates [0x5f0]: 32000 44100 48000 88200 96000 192000
- bits [0xe]: 16 20 24
- formats [0x1]: PCM
- Power states: D0 D1 D2 D3 EPSS
- Power: setting=D0, actual=D0
- Node 0x07 [Vendor Defined Widget] wcaps 0xf00000: Mono
- Node 0x08 [Audio Input] wcaps 0x10051b: Stereo Amp-In
- Amp-In caps: ofs=0x17, nsteps=0x3f, stepsize=0x02, mute=1
- Amp-In vals: [0x97 0x97]
- Converter: stream=0, channel=0
- SDI-Select: 0
- PCM:
- rates [0x560]: 44100 48000 96000 192000
- bits [0xe]: 16 20 24
- formats [0x1]: PCM
- Power states: D0 D1 D2 D3 EPSS
- Power: setting=D3, actual=D3
- Connection: 1
- 0x23
- Node 0x09 [Audio Input] wcaps 0x10051b: Stereo Amp-In
- Control: name="Capture Volume", index=0, device=0
- ControlAmp: chs=3, dir=In, idx=0, ofs=0
- Control: name="Capture Switch", index=0, device=0
- ControlAmp: chs=3, dir=In, idx=0, ofs=0
- Device: name="ALC269VC Analog", type="Audio", device=0
- Amp-In caps: ofs=0x17, nsteps=0x3f, stepsize=0x02, mute=1
- Amp-In vals: [0x27 0x27]
- Converter: stream=1, channel=0
- SDI-Select: 0
- PCM:
- rates [0x560]: 44100 48000 96000 192000
- bits [0xe]: 16 20 24
- formats [0x1]: PCM
- Power states: D0 D1 D2 D3 EPSS
- Power: setting=D0, actual=D0
- Connection: 1
- 0x22
- Node 0x0a [Vendor Defined Widget] wcaps 0xf00000: Mono
- Node 0x0b [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
- Control: name="Mic Playback Volume", index=0, device=0
- ControlAmp: chs=3, dir=In, idx=0, ofs=0
- Control: name="Mic Playback Switch", index=0, device=0
- ControlAmp: chs=3, dir=In, idx=0, ofs=0
- Control: name="Beep Playback Volume", index=0, device=0
- ControlAmp: chs=3, dir=In, idx=4, ofs=0
- Control: name="Beep Playback Switch", index=0, device=0
- ControlAmp: chs=3, dir=In, idx=4, ofs=0
- Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1
- Amp-In vals: [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
- Connection: 5
- 0x18 0x19 0x1a 0x1b 0x1d
- Node 0x0c [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
- Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
- Amp-In vals: [0x00 0x00] [0x80 0x80]
- Connection: 2
- 0x02 0x0b
- Node 0x0d [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
- Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
- Amp-In vals: [0x00 0x00] [0x80 0x80]
- Connection: 2
- 0x03 0x0b
- Node 0x0e [Vendor Defined Widget] wcaps 0xf00000: Mono
- Node 0x0f [Audio Mixer] wcaps 0x20010a: Mono Amp-In
- Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
- Amp-In vals: [0x00] [0x80]
- Connection: 2
- 0x02 0x0b
- Node 0x10 [Vendor Defined Widget] wcaps 0xf00000: Mono
- Node 0x11 [Vendor Defined Widget] wcaps 0xf00000: Mono
- Node 0x12 [Pin Complex] wcaps 0x40040b: Stereo Amp-In
- Control: name="Internal Mic Boost Volume", index=0, device=0
- ControlAmp: chs=3, dir=In, idx=0, ofs=0
- Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
- Amp-In vals: [0x00 0x00]
- Pincap 0x00000020: IN
- Pin Default 0x90a60940: [Fixed] Mic at Int N/A
- Conn = Digital, Color = Unknown
- DefAssociation = 0x4, Sequence = 0x0
- Misc = NO_PRESENCE
- Pin-ctls: 0x20: IN
- Power states: D0 D1 D2 D3 EPSS
- Power: setting=D0, actual=D0
- Node 0x13 [Vendor Defined Widget] wcaps 0xf00000: Mono
- Node 0x14 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
- Control: name="Speaker Playback Switch", index=0, device=0
- ControlAmp: chs=3, dir=Out, idx=0, ofs=0
- Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
- Amp-Out vals: [0x00 0x00]
- Pincap 0x00010014: OUT EAPD Detect
- EAPD 0x2: EAPD
- Pin Default 0x90170110: [Fixed] Speaker at Int N/A
- Conn = Analog, Color = Unknown
- DefAssociation = 0x1, Sequence = 0x0
- Misc = NO_PRESENCE
- Pin-ctls: 0x40: OUT
- Unsolicited: tag=00, enabled=0
- Power states: D0 D1 D2 D3 EPSS
- Power: setting=D0, actual=D0
- Connection: 2
- 0x0c 0x0d*
- Node 0x15 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
- Control: name="Headphone Playback Switch", index=0, device=0
- ControlAmp: chs=3, dir=Out, idx=0, ofs=0
- Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
- Amp-Out vals: [0x80 0x80]
- Pincap 0x0001001c: OUT HP EAPD Detect
- EAPD 0x2: EAPD
- Pin Default 0x0421401f: [Jack] HP Out at Ext Right
- Conn = 1/8, Color = Green
- DefAssociation = 0x1, Sequence = 0xf
- Pin-ctls: 0xc0: OUT HP
- Unsolicited: tag=01, enabled=1
- Power states: D0 D1 D2 D3 EPSS
- Power: setting=D3, actual=D3
- Connection: 2
- 0x0c* 0x0d
- Node 0x16 [Vendor Defined Widget] wcaps 0xf00000: Mono
- Node 0x17 [Pin Complex] wcaps 0x40050c: Mono Amp-Out
- Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
- Amp-Out vals: [0x80]
- Pincap 0x00000010: OUT
- Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
- Conn = 1/8, Color = Black
- DefAssociation = 0xf, Sequence = 0x0
- Misc = NO_PRESENCE
- Pin-ctls: 0x00:
- Power states: D0 D1 D2 D3 EPSS
- Power: setting=D3, actual=D3
- Connection: 1
- 0x0f
- Node 0x18 [Pin Complex] wcaps 0x40058f: Stereo Amp-In Amp-Out
- Control: name="Mic Boost Volume", index=0, device=0
- ControlAmp: chs=3, dir=In, idx=0, ofs=0
- Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
- Amp-In vals: [0x00 0x00]
- Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
- Amp-Out vals: [0x80 0x80]
- Pincap 0x00003734: IN OUT Detect
- Vref caps: HIZ 50 GRD 80 100
- Pin Default 0x04a19c30: [Jack] Mic at Ext Right
- Conn = 1/8, Color = Pink
- DefAssociation = 0x3, Sequence = 0x0
- Pin-ctls: 0x24: IN VREF_80
- Unsolicited: tag=02, enabled=1
- Power states: D0 D1 D2 D3 EPSS
- Power: setting=D3, actual=D3
- Connection: 2
- 0x0c* 0x0d
- Node 0x19 [Pin Complex] wcaps 0x40058f: Stereo Amp-In Amp-Out
- Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
- Amp-In vals: [0x00 0x00]
- Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
- Amp-Out vals: [0x80 0x80]
- Pincap 0x00003734: IN OUT Detect
- Vref caps: HIZ 50 GRD 80 100
- Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
- Conn = 1/8, Color = Black
- DefAssociation = 0xf, Sequence = 0x0
- Misc = NO_PRESENCE
- Pin-ctls: 0x20: IN VREF_HIZ
- Unsolicited: tag=00, enabled=0
- Power states: D0 D1 D2 D3 EPSS
- Power: setting=D3, actual=D3
- Connection: 2
- 0x0c* 0x0d
- Node 0x1a [Pin Complex] wcaps 0x40058f: Stereo Amp-In Amp-Out
- Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
- Amp-In vals: [0x00 0x00]
- Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
- Amp-Out vals: [0x80 0x80]
- Pincap 0x0000373c: IN OUT HP Detect
- Vref caps: HIZ 50 GRD 80 100
- Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
- Conn = 1/8, Color = Black
- DefAssociation = 0xf, Sequence = 0x0
- Misc = NO_PRESENCE
- Pin-ctls: 0x20: IN VREF_HIZ
- Unsolicited: tag=00, enabled=0
- Power states: D0 D1 D2 D3 EPSS
- Power: setting=D3, actual=D3
- Connection: 2
- 0x0c* 0x0d
- Node 0x1b [Pin Complex] wcaps 0x40058f: Stereo Amp-In Amp-Out
- Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
- Amp-In vals: [0x00 0x00]
- Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
- Amp-Out vals: [0x80 0x80]
- Pincap 0x00003734: IN OUT Detect
- Vref caps: HIZ 50 GRD 80 100
- Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
- Conn = 1/8, Color = Black
- DefAssociation = 0xf, Sequence = 0x0
- Misc = NO_PRESENCE
- Pin-ctls: 0x20: IN VREF_HIZ
- Unsolicited: tag=00, enabled=0
- Power states: D0 D1 D2 D3 EPSS
- Power: setting=D3, actual=D3
- Connection: 2
- 0x0c* 0x0d
- Node 0x1c [Vendor Defined Widget] wcaps 0xf00000: Mono
- Node 0x1d [Pin Complex] wcaps 0x400400: Mono
- Pincap 0x00000020: IN
- Pin Default 0x4015822d: [N/A] Speaker at Ext N/A
- Conn = Optical, Color = Purple
- DefAssociation = 0x2, Sequence = 0xd
- Pin-ctls: 0x20: IN
- Power states: D0 D1 D2 D3 EPSS
- Power: setting=D3, actual=D3
- Node 0x1e [Pin Complex] wcaps 0x400781: Stereo Digital
- Pincap 0x00000014: OUT Detect
- Pin Default 0x04454120: [Jack] SPDIF Out at Ext Right
- Conn = Optical, Color = Green
- DefAssociation = 0x2, Sequence = 0x0
- Misc = NO_PRESENCE
- Pin-ctls: 0x40: OUT
- Unsolicited: tag=00, enabled=0
- Power states: D0 D1 D2 D3 EPSS
- Power: setting=D0, actual=D0
- Connection: 1
- 0x06
- Node 0x1f [Vendor Defined Widget] wcaps 0xf00000: Mono
- Node 0x20 [Vendor Defined Widget] wcaps 0xf00040: Mono
- Processing caps: benign=0, ncoeff=37
- Node 0x21 [Vendor Defined Widget] wcaps 0xf00000: Mono
- Node 0x22 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
- Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
- Amp-In vals: [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x00 0x00]
- Connection: 7
- 0x18 0x19 0x1a 0x1b 0x1d 0x0b 0x12
- Node 0x23 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
- Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
- Amp-In vals: [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
- Connection: 6
- 0x18 0x19 0x1a 0x1b 0x1d 0x0b
复制代码 提取出来的ConfigData数据如下:
- 01271c10 01271d01 01271ea3 01271f90
- 01471c40 01471d01 01471e13 01471f90
- 01571c50 01571d40 01571e21 01571f01
- 01771cf0 01771d00 01771e00 01771f40
- 01871c20 01871d90 01871e81 01871f01
- 01971cf0 01971d00 01971e00 01971f40
- 01a71cf0 01a71d00 01a71e00 01a71f40
- 01b71cf0 01b71d00 01b71e00 01b71f40
- 01d71cf0 01d71d00 01d71e00 01d71f40
- 01e71c70 01e71d41 01e71e45 01e71f01
- 01470c02
复制代码 推导节点如下:
- 输入节点:
- 节点12:内置麦克风
- 十六进制:0x09--0x22--0x12
- 十进制:9--34--18
- 节点18:外置麦克风
- 十六进制:0x08--0x23--0x18
- 十进制:8--35--24
- 输出节点:
- 节点14:内置扬声器
- 十六进制:0x14--0x0c--0x02
- 十进制:20--12--2
- 节点15:耳机
- 十六进制:0x15--0x0d--0x03
- 十进制:21--13--3
- 节点1e:SPDIF OUT
- 十六进制:0x1e--0x06
- 十进制:30--6
复制代码 以上部分内容主要参考了紫米的教程。
接下来是四个文件的修改
这部分内容主要参考了这个教程https://www.jianshu.com/p/29a74f0664f1
第一个文件:修改Platforms.xml
我先是下载了他提供的Platforms.xml文件
然后,按照他提供的图片
我做了如下修改:
1、删除Line Out那五行,因为我没有Line Out
2、修改PathMapID=269
3、修改PathMap下的每一个节点为自己的节点,具体看下面三个图
其他的没做改动,保存后转换成Platforms.xml.zlib文件,复制到/Desktop/AppleALC/Resources/ALC269/目录下。
第二个文件:修改/Desktop/AppleALC/Resources/ALC269/Info.plist
这是他圈出来要改的地方,我根据自己的情况做了如下修改:
1、修改CodecID=283902569
2、Path=Platforms.xml.zlib
Comment值是默认的,我没做修改。LayoutID我设定的是1
修改后的info.plist如下:
第三个文件:修改/Desktop/AppleALC/Resources/PinConfigs.kext/Contents/Info.plist文件
这是他圈出来要修改的地方,我按照自己的情况做了如下修改:
1、修改Codec=ALC269
2、修改CodecID=283902569
3、修改ConfigData为上面提取并整理出来的值,即
- 01271c10 01271d01 01271ea3 01271f90
- 01471c40 01471d01 01471e13 01471f90
- 01571c50 01571d40 01571e21 01571f01
- 01771cf0 01771d00 01771e00 01771f40
- 01871c20 01871d90 01871e81 01871f01
- 01971cf0 01971d00 01971e00 01971f40
- 01a71cf0 01a71d00 01a71e00 01a71f40
- 01b71cf0 01b71d00 01b71e00 01b71f40
- 01d71cf0 01d71d00 01d71e00 01d71f40
- 01e71c70 01e71d41 01e71e45 01e71f01
- 01470c02
复制代码 4、修改LayoutID=1
修改后如下图所示:
第四个文件:修改/Desktop/AppleALC/Resources/ALC269/layout1.xml.zlib
他在教程中提到“首先向zlib文件转换为xml文件才可以编辑”,问题是我的/Desktop/AppleALC/Resources/ALC269/目录下没有layout1.xml.zlib文件,只有layout1.xml,所以我直接修改了layout1.xml文件。
这是他圈出来要修改的地方,我根据自己的情况做了如下修改:
1、修改LayoutID=1,因为这个文件中的CodecID和PathMapID默认就是和我要的值一样,所以没有修改
修改后的结果如下图所示:
2、删除LineOut项,因为我没有LineOut,如下图所示:
3、修改vref值,具体如下:
我搜索了一下vref,只有节点0x18有,值是80,如下图所示:
转换后是1342242840,于是修改LineIn下的MuteGPIO=1342242840,如下图所示:
另外,原layout1.xml中,节点Mic下MuteGPIO=1342242841,而Mic对应我的节点是0x12,搜索节点0x12,发现没有vref值,于是将默认的MuteGPIO=1342242841修改为MuteGPIO=0,如下图所示:
接着,我看原layout1.xml中没有SPDIFOut项,于是我手动添加了一下,如下图所示:
由于不知道SPDIFOut里具体怎么填,所以是空值。
完成以上修改后,将这个文件转换为layout1.xml.zlib,并复制到/Desktop/AppleALC/Resources/ALC269/目录下
接下来就是按照他的教程编译AppleALC驱动文件,将生成的AppleALC.kext和Lilu.kext(DEBUG版)一起放入Other下
在config.plist文件中我做了如下设置:
接下来就是修改CodecCommander.kext
Codec.txt中显示我的声卡型号是Realtek ALC269VC,但是CodecCommander.kext并没有带VC的,只有Realtek ALC269、Realtek ALC269 BRIX、Realtek ALC269VB三个,所以我在Realtek ALC269里做了修改。
展开Realtek ALC269,里面只有0这一项,下图中的1是我自己复制了0,然后再修改的
HP Out at Ext 所在的节点信息:
- Node 0x15 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
- Control: name="Headphone Playback Switch", index=0, device=0
- ControlAmp: chs=3, dir=Out, idx=0, ofs=0
- Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
- Amp-Out vals: [0x80 0x80]
- Pincap 0x0001001c: OUT HP EAPD Detect
- EAPD 0x2: EAPD
- Pin Default 0x0421401f: [Jack] HP Out at Ext Right
- Conn = 1/8, Color = Green
- DefAssociation = 0x1, Sequence = 0xf
- Pin-ctls: 0xc0: OUT HP
- Unsolicited: tag=01, enabled=1
- Power states: D0 D1 D2 D3 EPSS
- Power: setting=D3, actual=D3
- Connection: 2
- 0x0c* 0x0d
复制代码 按照Address+NodeID+708+设定值这个公式,我最后的结果就是
Mic at Ext 所在的节点信息:
- Node 0x18 [Pin Complex] wcaps 0x40058f: Stereo Amp-In Amp-Out
- Control: name="Mic Boost Volume", index=0, device=0
- ControlAmp: chs=3, dir=In, idx=0, ofs=0
- Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
- Amp-In vals: [0x00 0x00]
- Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
- Amp-Out vals: [0x80 0x80]
- Pincap 0x00003734: IN OUT Detect
- Vref caps: HIZ 50 GRD 80 100
- Pin Default 0x04a19c30: [Jack] Mic at Ext Right
- Conn = 1/8, Color = Pink
- DefAssociation = 0x3, Sequence = 0x0
- Pin-ctls: 0x24: IN VREF_80
- Unsolicited: tag=02, enabled=1
- Power states: D0 D1 D2 D3 EPSS
- Power: setting=D3, actual=D3
- Connection: 2
- 0x0c* 0x0d
复制代码 按照Address+NodeID+707+Pin-ctls值公式,我的修改结果如下:
修改后放到Cover的other目录下,重启后还是有杂音。而且系统报告-音频里没有详细内容。
整个操作过程就是这样,麻烦大神帮忙分析一下原因出在哪里,谢谢大神了。
|
附件: 你需要登录才可以下载或查看附件。没有帐号?注册
|