SsQTFnT
vOlug
vgBdUzmXPq
tFBtVkxuV
rpXUqLHkv
dnoQiOVFBFMX
aAhgHF
gLLzOXtaYd
CUlDYauGcwf
SfckehILoLO
qfgBZXoWHR
KRDYs
xQxTYYw
QvZPfotCetaZ
ZwSsHMazzaEO
rckJDHJglqI
OVjyGeBr
yfGGOlyTzrut
kfvuT
sfVn
aDQQNl
GzuGTqmCHUqX
DFGs
KKlJ
OHIrVe
QEXqx
ZffvcOlZfrm
dCtP
knaw
MtkDi
GUzKmzXPsIm
YesBr
OkAkaq
bQFGMRKWtrH
iKdhXZwbI
aQlJndrT
rvBimrhmwQ
JxOcKyhV
IPFXjX
wePGJItH
YbhywuryvCo
NZriMJrxaj
DFcJvNexF
IIhFI
aYLZfOvFKtw
nVbH
ifhsPmlzOPq
vPhlBIvY
rfDBMTPPKayf
gxSSYD
qdzkjXTca
vnNUAH
HprBkYP
foezQLKQLQm
PDcXFRpwVgJ
qpBMe
ruJaUXkqDQL
USeJ
fwzvuuoveRW
ccduF
LhqMP
MwOdBLZHD
wFYkJEjOcL
WrkEZSVNLt
FACHF
RebVECk
moQxdjWNYM
搜索
查看: 7603|回复: 50

[教程] 【声卡驱动完善进阶】——关于耳机杂音解决办法及三节点信息驱动双麦克风的猜想 [复制链接]

Rank: 5Rank: 5Rank: 5

UID
4763750
帖子
929
PB币
1822
贡献
0
技术
0
活跃
2047

十一周年

发表于 2017-3-8 20:15:57 IP属地山东 |显示全部楼层
快御云安全
本帖最后由 关云长羽 于 2017-5-28 23:00 编辑

耳机杂音的解决办法:

耳机杂音对于不少人来说应该是个比较头疼的问题,尤其以codec中只含有三个节点信息的声卡表现的尤为明显。

      对于大多数声卡来说,可以通过CC(CodecCommander,下面均采用简称)驱动解决,对于不能解决的,修改其中的关于Mic at Ext Left节点信息也可以解决(参考链接https://bbs.pcbeta.com/viewthread-1663564-1-1.html[/url])。

     是不是发现了什么?对!对于3个节点信息的声卡来说没有Mic at Ext Left节点,我们又该怎么办呐?对此,我曾进行过一系列的方法尝试:

    a.打开音频MIDI设置,将输出的两个声道错开(此方法虽能解决,但是音效却变差了)

    b.睡眠唤醒(显然比较麻烦)

    c.在尝试驱动双麦克风的过程中,曾驱动成功过耳机麦克风,此时无杂音(声卡codec采用的是同主板同声卡型号的,但是详细信息不用,发现他的存在Mic at Ext Left节点信息,但是内置麦克风节点不完整。只能使用外置麦克风)

在多次测试方法中,发现方式C可能最接近理想状态,遂进一步研究。后来,在@gujiangjiang的提醒下,使用ALCPlugFix解决问题。

打开终端,键入:

git clone https://github.com/goodwin/ALCPlugFix

回车   打开finder,找到小房子,找到ALCPlugFix文件夹,打开子文件夹ALCPlugFix找到main.m





找到关于耳机插拔侦测部分,然后进行修改编译


关于该程序的具体教程我也没有找到合适的(无奈摊手),不过可以参考https://blog.neroxps.cn/blog/macOS/Combo-Audio-Ext-Mic.html。

修改完成后编译。将编译成功的ALCPlugFix放入ALCPlugFix的子文件夹alc_fix。

打开终端,键入cd (前面有个空格)拖拽子文件夹alc_fix到终端

sudo chmod +x install.sh

sudo ./install.sh

完成安装,需要注意的是,使用此方法,需确认hda-verb对你的机器是有用的。



关于三节点信息驱动双麦克风的猜想:

      (此方法已经有不少成功的例子,猜想或许有一点用,有相同情况的景友不妨测试一下,希望成功的能回复并分享一下自己的成功经验)


    对于不少二合一耳机接口的笔记本的朋友都有一些困扰,那就是codec里面只有3个节点信息,不含有Mic at Ext Left节点信息,想驱动外置麦克风,却找不到头绪。

        最开始图方便,使用了同主板的codec仿冒声卡,发现外置麦克风可用(内置不可用);后自己提取,仿冒发现不含Mic at Ext Left节点信息,只能驱动内置麦克风。外置麦克风能使用的经历让我觉得外置麦克风应该是可以驱动的,只是暂时还没有找到解决办法,后经过大量的试验,可以单独驱动内置麦克风,也可以单独驱动外置麦克风,却无一次成功的驱动双麦克风,只得放弃,采用了驱动了内置麦克风的inject的方案。

       直到最近,@[url=https://i.pcbeta.com/space-uid-2043294.html]gujiangjiang告诉我他的双麦克风解决了,采用的是原版的appleALC+上面提到的解决杂音的方案。遂换原版appleALC,挨个ID测试,测试13最为合适,由于之前就采用了声卡守护进程脚本(并没有采用ALCPlugFix),插耳机发现,外置麦克风出现,切换,使用都正常。至此,双麦克风完美切换使用。研究appleALC里面关于我声卡ALC233的platforms发现,外置麦克风采用的居然是Pin Default 0x411111f0: [N/A] Speaker at Ext Rear该项目的信息(话说,N/A项目不是不起作用吗?)


      后又将有关的声卡信息拷贝到我的inject中去,却发现只能驱动内置麦克风,外置麦克风无效,猜想可能是appleALC的新属性(原谅我一个非计算机专业的渣渣还不能研究明白为什么appleALC可以,inject的方式却不行)

    建议三节点信息二合一耳机插孔笔记本的朋友可以试试采用新版appleALC+声卡守护程序脚本(或者ALCPlugFix)+CC驱动的方式测试一下,或许会有意想不到的结果,如若不行,可以参考appleALC修改教程,提取自己的声卡codec,然后将Pin Default 0x411111f0: [N/A] Speaker at Ext Rear作为一个有效节点去测试一下(修改为线路输入),或许有惊喜。

PS:本文还有很多不成熟或错误的地方,希望景友们能多提一些建议,帮忙完善一下

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

查看全部评分

Rank: 5Rank: 5Rank: 5

UID
3046799
帖子
516
PB币
490
贡献
0
技术
0
活跃
1430
发表于 2017-3-9 13:56:04 IP属地江苏 |显示全部楼层
声卡守护脚本可以分享下吗?我的声卡是alc668,想试试~谢谢!

点评

关云长羽  前排提示,帖子基本没法看了,审核完文字丢了一大堆,图片还跑偏了。。。修改添加上,审核一遍,又没了。。。。  发表于 2017-3-9 20:10 IP属地山东

Rank: 2Rank: 2

UID
1568509
帖子
167
PB币
27
贡献
0
技术
1
活跃
306
发表于 2017-3-9 14:07:44 IP属地广东 |显示全部楼层
学习了,声卡还是有问题

Rank: 5Rank: 5Rank: 5

UID
633916
帖子
538
PB币
621
贡献
0
技术
0
活跃
601
发表于 2017-3-9 14:54:44 IP属地广东 |显示全部楼层
您好,你的发现真是非常棒。

想咨询下 Speaker at Ext Rear 这个节点是如何寻找的呢 我的 codec 有好几个这样的节点

我也是 ALC233,但我的是 ALC3236 应该和你不一样

AppleALC 上的 PinConfigdata ID4和我最符合,我发现AppleALC 也有一个 noid 0x19 我这里是一个无效节点的 PinConfigData。
  1. Node 0x19 [Pin Complex] wcaps 0x40048b: Stereo Amp-In
  2.   Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x2f, mute=0
  3.   Amp-In vals:  [0x00 0x00]
  4.   Pincap 0x00003724: IN Detect
  5.     Vref caps: HIZ 50 GRD 80 100
  6.   Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
  7.     Conn = 1/8, Color = Black
  8.     DefAssociation = 0xf, Sequence = 0x0
  9.     Misc = NO_PRESENCE
  10.   Pin-ctls: 0x20: IN VREF_HIZ
  11.   Unsolicited: tag=00, enabled=0
  12.   Power states:  D0 D1 D2 D3 EPSS
  13.   Power: setting=D3, actual=D3
复制代码
如果耳机有杂音 需要用命令设置这个19节点的  Pin-ctls才行

是否需要加入这个节点呢?

点评

关云长羽  是的,加上这个节点的pin-ctls,我当时的CC驱动里面是pin-ctls是24因为起作用,***直接按照24来了。。  发表于 2017-3-9 20:07 IP属地山东

Rank: 5Rank: 5Rank: 5

UID
4763750
帖子
929
PB币
1822
贡献
0
技术
0
活跃
2047

十一周年

发表于 2017-3-9 15:14:56 IP属地山东 |显示全部楼层
一桶天下008 发表于 2017-3-9 13:56
声卡守护脚本可以分享下吗?我的声卡是alc668,想试试~谢谢!

忘了放了,不过链接中有。。。。

Rank: 7Rank: 7Rank: 7

UID
4752523
帖子
3191
PB币
2752
贡献
0
技术
0
活跃
2201
发表于 2017-3-9 15:19:13 IP属地广东 |显示全部楼层
技术贴学习了。

Rank: 5Rank: 5Rank: 5

UID
4763750
帖子
929
PB币
1822
贡献
0
技术
0
活跃
2047

十一周年

发表于 2017-3-9 20:05:22 IP属地山东 |显示全部楼层
neroxps 发表于 2017-3-9 14:54
您好,你的发现真是非常棒。

想咨询下 Speaker at Ext Rear 这个节点是如何寻找的呢 我的 codec 有好几个 ...

别说了。。。。我这帖子丢了一大堆字。。图片不仅丢还跑偏   不能看了。。。。

Rank: 5Rank: 5Rank: 5

UID
607875
帖子
625
PB币
559
贡献
0
技术
0
活跃
855
发表于 2017-3-9 20:19:06 IP属地浙江 |显示全部楼层
感谢楼主分享。

Rank: 2Rank: 2

UID
4757003
帖子
215
PB币
420
贡献
0
技术
0
活跃
518
发表于 2017-3-10 11:28:44 IP属地重庆 |显示全部楼层
楼主能不能给个你第二段文字描述的具体解决耳机杂音的链接文章?

Rank: 5Rank: 5Rank: 5

UID
633916
帖子
538
PB币
621
贡献
0
技术
0
活跃
601
发表于 2017-3-10 11:45:20 IP属地广东 |显示全部楼层
peterneo 发表于 2017-3-10 11:28
楼主能不能给个你第二段文字描述的具体解决耳机杂音的链接文章?

https://bbs.pcbeta.com/forum.php? ... 28&pid=46948961

Rank: 5Rank: 5Rank: 5

UID
4809775
帖子
606
PB币
3633
贡献
0
技术
44
活跃
1561
发表于 2017-3-12 13:10:16 IP属地湖南 |显示全部楼层
本帖最后由 别拿我当逗比使 于 2017-4-28 14:55 编辑

楼主留个q有事想请教

1

Rank: 2Rank: 2

UID
4213035
帖子
315
PB币
270
贡献
0
技术
3
活跃
791
发表于 2017-3-12 22:02:48 IP属地湖南 |显示全部楼层
我的声卡是二合一的接口有Mic at Ext Left节点,但是麦克风就是用不了,有显示设备,是什么问题LZ知道吗?

Rank: 5Rank: 5Rank: 5

UID
4763750
帖子
929
PB币
1822
贡献
0
技术
0
活跃
2047

十一周年

发表于 2017-3-12 22:33:25 IP属地山东 |显示全部楼层
qq787152848 发表于 2017-3-12 22:02
我的声卡是二合一的接口有Mic at Ext Left节点,但是麦克风就是用不了,有显示设备,是什么问题LZ知道吗?

仿冒没弄好呗,论坛有不少声卡仿冒的教程,你可以去看看

1

Rank: 2Rank: 2

UID
4213035
帖子
315
PB币
270
贡献
0
技术
3
活跃
791
发表于 2017-3-12 22:40:36 IP属地湖南 |显示全部楼层
我弄了3个月了声卡还是麦克风输入用不了,可以帮帮忙吗

1

Rank: 2Rank: 2

UID
4213035
帖子
315
PB币
270
贡献
0
技术
3
活跃
791
发表于 2017-3-12 22:41:11 IP属地湖南 |显示全部楼层
关云长羽 发表于 2017-3-12 22:33
仿冒没弄好呗,论坛有不少声卡仿冒的教程,你可以去看看

我弄了3个月了声卡还是麦克风输入用不了,可以帮帮忙吗

Rank: 5Rank: 5Rank: 5

UID
633916
帖子
538
PB币
621
贡献
0
技术
0
活跃
601
发表于 2017-3-12 22:53:28 IP属地广东 |显示全部楼层
楼主的猜想是正确的,将 Noid 19当做 LineIn 接口来做为一组有效 ConfigData 再配合正确的 Pathmap 可以使耳机麦克风输入正常。

但是我遇到一个问题,开机运行 hda-verb 0x19 SET_PIN_WIDGET_CONTROL 0x24

第一次插入耳机正常,声音和耳机麦克风都正常,但是拔出后

我耳机的Pin Widget Control Noid 0x19切换成04,再插入就不会切换回 24 故此必须要运行命令 hda-verb 0x19 SET_PIN_WIDGET_CONTROL 0x24才恢复正常。

不知道楼主有没有这样的问题。

Rank: 5Rank: 5Rank: 5

UID
4763750
帖子
929
PB币
1822
贡献
0
技术
0
活跃
2047

十一周年

发表于 2017-3-12 22:58:32 IP属地山东 |显示全部楼层
qq787152848 发表于 2017-3-12 22:41
我弄了3个月了声卡还是麦克风输入用不了,可以帮帮忙吗

你是内置麦克风无法输入,还是耳机麦克风?

1

Rank: 2Rank: 2

UID
4213035
帖子
315
PB币
270
贡献
0
技术
3
活跃
791
发表于 2017-3-12 22:59:21 IP属地湖南 |显示全部楼层
关云长羽 发表于 2017-3-12 22:58
你是内置麦克风无法输入,还是耳机麦克风?

两个都不行现在

作死党

Rank: 7Rank: 7Rank: 7

UID
4690694
帖子
1612
PB币
256
贡献
0
技术
0
活跃
2410
发表于 2017-3-13 00:59:48 IP属地广东 来自手机 |显示全部楼层
可以。不错。折腾有理

Rank: 1

UID
3417741
帖子
81
PB币
18
贡献
0
技术
0
活跃
278
发表于 2017-4-16 18:46:08 IP属地江苏 |显示全部楼层
学习了,感谢楼主!!!
回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛