能帮我关掉耳机插孔发出的红灯吗?

能帮我关掉耳机插孔发出的红灯吗?

问题:红灯不会消失;重启后,红灯继续从 3.5 毫米端口发出。

故障排除:在 alsamixer 上将其静音;通过 alsamixer 成功关闭灯光。

测试:sudo alsactl store通过 alsamixer 将灯光静音(关闭)后运行。

在“启动应用程序”中,我添加了一个在启动时运行命令的配置文件alsactl restore

结果:重启并登录后灯仍然亮。

如果在灯亮的情况下重新启动/登录后,我运行sudo alsactl restore它,灯就会熄灭。

但无法弄清楚为什么它在启动时不起作用。

答案1

我想和大家分享一下我如何解决这个问题永恒的无需脚本即可解决问题。这样,我们还可以消除 pulseaudio 启动时难听的爆音。

我使用 Apple MacBook 7,1 Mid 2010,白色 Unibody。

每次启动 pulseaudio 时红灯亮起的原因是/etc/pulse/默认.pa

这里是常见的 default.pa 示例:https://gist.github.com/95406ea115dc3a0a561f8242e2ae00f4

### Automatically load driver modules depending on the hardware available
.ifexists module-udev-detect.so
load-module module-udev-detect
.else
### Use the static hardware detection module (for systems that lack udev support)
load-module module-detect
.endif

当加载这些模块时,它会自动检测您的硬件并对其进行初始化。初始化硬件时,SPDI/F 输出会打开,因此即使您之前使用 alsamixser 关闭了静音,红灯也会亮起。当再次打开 SPDI/F 时,也会有难听的爆音效果。

为了避免这种情况,我决定手动定义我的硬件。我不想使用自动硬件检测模块。我通过注释整个块来禁用它们:

### Automatically load driver modules depending on the hardware available
#.ifexists module-udev-detect.so
#load-module module-udev-detect
#.else
### Use the static hardware detection module (for systems that lack udev support)
#load-module module-detect
#.endif

现在,我需要定义我的音频硬件 - 输出接收器和输入源。我使用了 module-alsa-sink 和 module-alsa-source。我还需要知道我的音频源有哪些硬件 ID。在我的计算机上,只有一个集成音频卡,具有输入/输出功能,其 ID 为 hw:0,0。您的计算机上的 ID 可能不同。

这是我加载输出接收器和输入源模块的方式:

### Load audio drivers statically
load-module module-alsa-sink device=hw:0,0
load-module module-alsa-source device=hw:0,0
#load-module module-null-sink
#load-module module-pipe-sink

然后重新加载 pulseaudio 很重要。您可以使用:pulseaudio --vv --kill,然后再次使用 pulseaudio --vv --start 启动它

不,我们的音频输入/输出都可用,插孔不会发出红光,启动时的爆音也消失了。在 alsamixer 中所做的所有更改也将始终保留。

但是,通过这种简单的配置,我们现在不能使用 SPDI/F 作为常规输出。如果决定通过它播放声音怎么办?

我甚至可以定义 SPDI/F 输出。SPDI/F 在机器上有 hw0,1 ID。如果我想再次使用它。我将此行添加到我的配置中:

### Load audio drivers statically
load-module module-alsa-sink device=hw:0,0
load-module module-alsa-sink device=hw:0,1
load-module module-alsa-source device=hw:0,0
#load-module module-null-sink
#load-module module-pipe-sink

通过此配置,我们可以轻松地在 alsamixer 中禁用和启用它。并且配置将会持续下去

这是我使用的配置示例:https://gist.github.com/7a11adf0edc49d55a60be071ca307784

实际上,我没有其他类型的音响系统,因此无法测试。如果您使用的是 2.1 或 4.1 音响系统,则输出可能仅以立体声播放,您需要添加更多配置才能使其正常工作。HDMI 输出可能存在同样的问题,我无法测试。

答案2

找到了关闭红灯的另一种解决方案这里,对我有用(MacBook Pro,8.1,Ubuntu 16.04),但对其他用户不起作用。

相关内容