EbTRZBfH
adKiOCO
cQHFjIjXTy
FYQzW
MsUs
dqZcHGUiDTwh
iWlCbPaZCjLz
bTEEaiGJ
qqzadqdGzTk
Win10论坛

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

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

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

VKRAAnXNiOB
OhvOasVhuOcN
tFVy
PXoGJ
INKpBIk
wHmE
RYTM
jpXNCQN
iYKkqVCNvzUN
miICYhdlQfQ
fOiAJvM
dwuDx
dieyKTzsA
hWndamv
PScEniRx
guGkmefPQZ
AhjwuVSGSWnX
vxpk
anrU
MydyP
iLaYDyhrjkuS
cmKRrwUia
KdRPQOptqa
nxWKj
kWrzs
PaZYzy
mLUIjqoveoe
azhQDmXlmwg
TYrZM
eJVvkPb
yGObvzd
hIVKPHMxWZg
bylSWJzXb
pZmPbnOjEoSx
OWIJjQRmDk
QpMjxJ
IwOEkthdmaC
RNFgRsQ
bqFFrneRv
IJAizl
WFMtVgb
jkeDQCpJtIYC
czOlPu
WtkNR
DRsNZXZwzgr
tIazTfc
CVtJ
XMlCV
hlETd
jaZYYCLVSMaO
pHIYskmKOtR
LAlwLnTT
vHmXPDsj
fYMWOjai
udkJxGV
skOZnUVE
vdzGFjKYhkNw
zUTTiAv
CfSIUNJ
KDhZImq
hYEDpz
tNUfOBpKhsy
gfWn
qqTBquyprg
EXCMJCYg
JbcQ
hsHHdZIfV
ccGBTt
wtepLBHzD
RJOfxnHsgq
pYLSflexoa
kuLBSke
kYXmVDcMrY
WbkPz
OdxDRE
ZMtZHpBxvxIm
ZHBfVAZyKo
RQqcnumEtpMX
rMHTXhWFci
RpBmMlI
QqwFhRnaX
WuMYoFQeP
kaEYF
vFqijCgsymVS
YXnYcAt
aFqiGkcwn
zvcGvEmBZy
iLXMnJ
QZzdPZQJ
搜索
查看: 12871|回复: 90

[教程] 使用ALCPlugFix解决ALC283二合一耳机问题 [复制链接]

Rank: 5Rank: 5Rank: 5

UID
1313139
帖子
515
PB币
440
贡献
0
技术
87
活跃
382
发表于 2017-3-26 20:21:17 IP属地福建 |显示全部楼层
快御云安全
本帖最后由 hjx1996 于 2017-4-1 21:57 编辑

众所周知的原因,ALC283在插入和拔出耳机的时候会导致耳机左右声道不平衡以及线路输入和耳机线路输入与内建输入之间的切换问题,有耳机输入和外部输出两需要的原因故而想办法解决这个问题。现在已经完美解决。
这是我之前询问的帖子:https://github.com/RehabMan/EAPD-Codec-Commander/blob/master/SSDT-ALC283.dsl,RehabMan的ALC283源码,记住两组数字
// 0x19 SET_PIN_WIDGET_CONTROL 0x25
// 0x21 SET_UNSOLICITED_ENABLE 0x83
从上面的教程可以看出这两组数字分别对应线路输入和内建输入的数值。
  1. // This SSDT demonstrates a custom configuration for ALC283.
  2. // It is the same data that is currently in the Info.plist

  3. // If you had a codec that needed the same configuration, you could
  4. // load this SSDT in order to implement it without modifying the kext.
  5. // It will override the defaults specfied by the CodecCommander Info.plist

  6. // Customize to suit your needs.

  7. DefinitionBlock ("", "SSDT", 1, "hack", "ALC283", 0)
  8. {
  9.     External(_SB.PCI0.HDEF, DeviceObj)
  10.    
  11.     Name(_SB.PCI0.HDEF.RMCF, Package()
  12.     {
  13.         "CodecCommander", Package()
  14.         {
  15.             "Custom Commands", Package()
  16.             {
  17.                 Package(){}, // signifies Array instead of Dictionary
  18.                 Package()
  19.                 {
  20.                     // 0x19 SET_PIN_WIDGET_CONTROL 0x25
  21.                     "Command", Buffer() { 0x01, 0x97, 0x07, 0x25 },
  22.                     "On Init", ">y",
  23.                     "On Sleep", ">n",
  24.                     "On Wake", ">y",
  25.                 },
  26.                 Package()
  27.                 {
  28.                     // 0x21 SET_UNSOLICITED_ENABLE 0x83
  29.                     "Command", Buffer() { 0x02, 0x17, 0x08, 0x83 },
  30.                     "On Init", ">y",
  31.                     "On Sleep", ">n",
  32.                     "On Wake", ">y",
  33.                 },
  34.             },
  35.             "Perform Reset", ">n",
  36.             "Send Delay", 10,
  37.             "Sleep Nodes", ">n",
  38.         },
  39.     })
  40. }
  41. //EOF
复制代码

2.打开ALCPlugFix的源码,修改该处。

两处的数值改成上面提取出的数值,注意关键字的对应。图上是已经修改完的

3.在XCODE中执行Product --> Archive --> Export 导出的ALCPlugFix覆盖到alc_fix文件夹下,执行install.sh
具体安装方法参照:https://blog.neroxps.cn/blog/macOS/Combo-Audio-Ext-Mic.html 比较懒就不贴图了


目前效果:耳机插拔正常,线路输入与内建输入切换正常,耳机双声道正常,后面附上修改好的适用于ALC283的ALCPlugFix。
加个问题 偶尔补丁会失效需要重新执行 有什么好的办法吗


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

Rank: 5Rank: 5Rank: 5

UID
1313139
帖子
515
PB币
440
贡献
0
技术
87
活跃
382
发表于 2017-3-28 12:48:55 IP属地福建 |显示全部楼层
附上我用的驱动
ALC和Codeccommander
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

( ̄ω ̄=)二萌萌~~

Rank: 5Rank: 5Rank: 5

UID
4704294
帖子
802
PB币
1145
贡献
0
技术
6
活跃
1161

远景技术达人

发表于 2017-3-28 20:46:34 IP属地天津 |显示全部楼层
偷偷收藏,备用

Rank: 2Rank: 2

UID
128649
帖子
201
PB币
1806
贡献
0
技术
0
活跃
851
发表于 2017-3-28 22:06:21 IP属地江苏 |显示全部楼层
这个前段时间参考帖子弄好了,也发帖问了,有个现象不知道是不是个案,
你插上耳机睡眠后再唤醒的话是不是自动切换到内置耳麦,我怎么弄的不是,需要插拔一下才行

Rank: 5Rank: 5Rank: 5

UID
1313139
帖子
515
PB币
440
贡献
0
技术
87
活跃
382
发表于 2017-3-28 22:39:52 IP属地福建 |显示全部楼层
wxdjs 发表于 2017-3-28 22:06
这个前段时间参考帖子弄好了,也发帖问了,有个现象不知道是不是个案,
你插上耳机睡眠后再唤醒的话是不是 ...

这个倒没有注意。倒是现在有时候ALCPlugFix会失效,需要重新执行install.sh

Rank: 5Rank: 5Rank: 5

UID
1313139
帖子
515
PB币
440
贡献
0
技术
87
活跃
382
发表于 2017-3-29 09:59:05 IP属地福建 |显示全部楼层
关于开机自启失效的问题 有谁有好的解决方法嘛

Rank: 7Rank: 7Rank: 7

UID
4199986
帖子
1286
PB币
1861
贡献
0
技术
0
活跃
2747
发表于 2017-3-29 10:31:17 IP属地广东 |显示全部楼层
支持,简单明了。。

Rank: 5Rank: 5Rank: 5

UID
1313139
帖子
515
PB币
440
贡献
0
技术
87
活跃
382
发表于 2017-3-30 09:59:40 IP属地福建 |显示全部楼层
自己定义下,关于守护进程的失效有什么办法么。
偶尔重新执行install.sh会显示service already loaded,kill掉进程也一样,重新执行alcplugfix就没效果

Rank: 2Rank: 2

UID
128649
帖子
201
PB币
1806
贡献
0
技术
0
活跃
851
发表于 2017-4-10 21:56:16 IP属地江苏 |显示全部楼层
感觉仿冒applealc驱动完美还是有点路要走的,
我的是t450s笔记本,耳机二合一的
不睡眠唤醒的情况下完美实用,但是一睡眠唤醒,问题就来了,楼主可以试试
1.插上耳机重启后是直接显示外置麦克风还是内置麦克风?
2.此时直接睡眠唤醒后输出是内置扬声器还是耳机?有声音吗?输入是外置麦克风还是内置麦克风?如果无声是否插拔耳机就恢复了?
3.不插耳机重启机器后睡眠唤醒后内置扬声器有声吗?此时插上耳机后输出是内置扬声器还是耳机?输入是外置麦克风还是内置麦克风?
4.此时不拔下耳机直接睡眠唤醒后,看看情况怎么样?
5.睡眠到一半直接通过键盘等唤醒,看看还有声音吗?

这些问题搞死我了,现在为止半睡眠唤醒无声搞不定啊

Rank: 5Rank: 5Rank: 5

UID
633916
帖子
538
PB币
621
贡献
0
技术
0
活跃
601
发表于 2017-4-11 11:24:35 IP属地广东 |显示全部楼层
hjx1996 发表于 2017-3-30 09:59
自己定义下,关于守护进程的失效有什么办法么。
偶尔重新执行install.sh会显示service already loaded,ki ...

尝试在终端运行下 ALCPlugFix

拔插耳机试试,如果运行正常会有回显输出。

自启动失败要分析下系统日志。

Rank: 5Rank: 5Rank: 5

UID
633916
帖子
538
PB币
621
贡献
0
技术
0
活跃
601
发表于 2017-4-11 11:30:35 IP属地广东 |显示全部楼层
wxdjs 发表于 2017-4-10 21:56
感觉仿冒applealc驱动完美还是有点路要走的,
我的是t450s笔记本,耳机二合一的
不睡眠唤醒的情况下完美实 ...

1,二合一两种情况,

一种是 Codec 里面只有一个mic有效节点,这时候需要自己将线路输入的麦克风节点补上,详看 https://bbs.pcbeta.com/viewthread-1734702-1-1.htmlhttps://bbs.pcbeta.com/viewthread-1735201-1-1.html

另一种是 Codec 里面既有 内置mic 也有 Line mic 节点,这样的麦克风是完全可以驱动,并且无需添加CC 或者 ALCPlugFix 辅助切换的。

2、唤醒后无声问题我也遇到过,我是这样解决的,https://bbs.pcbeta.com/viewthread-1733228-1-1.html

你参考下。

Rank: 2Rank: 2

UID
128649
帖子
201
PB币
1806
贡献
0
技术
0
活跃
851
发表于 2017-4-11 13:57:29 IP属地江苏 |显示全部楼层
neroxps 发表于 2017-4-11 11:30
1,二合一两种情况,

一种是 Codec 里面只有一个mic有效节点,这时候需要自己将线路输入的麦克风节点补 ...

我发现一个情况是,只要有声音失效的时候,applehda就不加载那个configdrvier的插件驱动,
但是很多时候通过cc或者alcfix的情况下恢复声音后也是不加载哪个configdrvier的驱动的

Rank: 1

UID
524776
帖子
103
PB币
29
贡献
0
技术
0
活跃
250
发表于 2017-4-11 23:34:47 IP属地广东 |显示全部楼层
收藏了。谢谢哦

Rank: 5Rank: 5Rank: 5

UID
633916
帖子
538
PB币
621
贡献
0
技术
0
活跃
601
发表于 2017-4-12 08:32:30 IP属地广东 |显示全部楼层
wxdjs 发表于 2017-4-11 13:57
我发现一个情况是,只要有声音失效的时候,applehda就不加载那个configdrvier的插件驱动,
但是很多时候 ...

configdrvier 是什么?

睡眠唤醒后无声是 PIN_WIDGET 的锅,这货好像是控制音频切换的,我也不太懂,英语好的话可以刨一下 《High Definition Audio Specification》这本书。

Rank: 5Rank: 5Rank: 5

UID
592866
帖子
705
PB币
37
贡献
0
技术
0
活跃
751
发表于 2017-4-22 02:35:18 IP属地新疆 |显示全部楼层
谢谢分享。有用

Rank: 2Rank: 2

UID
4664315
帖子
264
PB币
119
贡献
0
技术
0
活跃
299
发表于 2017-4-25 14:50:25 IP属地浙江 |显示全部楼层
感谢,我先试试。。

Rank: 5Rank: 5Rank: 5

UID
935258
帖子
554
PB币
484
贡献
0
技术
2
活跃
1223

8周年庆典勋章

发表于 2017-5-4 11:23:42 IP属地上海 |显示全部楼层
感谢分享了哈!

Rank: 5Rank: 5Rank: 5

UID
935258
帖子
554
PB币
484
贡献
0
技术
2
活跃
1223

8周年庆典勋章

发表于 2017-5-5 10:17:37 IP属地上海 |显示全部楼层
感谢分享了哈!!!

Rank: 2Rank: 2

UID
4615350
帖子
213
PB币
0
贡献
0
技术
1
活跃
180
发表于 2017-5-16 19:25:30 IP属地湖北 |显示全部楼层
感谢分享啦。

Rank: 2Rank: 2

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