指南
Mac S/PDIF 音量控制:为什么被禁用,以及全部解决办法
在 Mac 上,当选中的 S/PDIF 或光纤数字输出本身没有音量控制时,系统音量滑块和键盘音量键就会被禁用。 macOS 送出的是电平固定的数字信号,并指望另一端的 DAC、接收机、功放或音箱来控制实际听音音量。 要从 Mac 上控制它,可以使用下游设备自身的控制、用软件对音频做衰减,或者——当那台设备是 Sonos 时——把音量键指令单独通过网络发给音箱。
键盘或线缆都没有毛病。 正确的解法取决于另一端连的是什么,所以本指南把各个选项分开讲,而不是假装某一个工具在所有数字音频配置下都管用。
macOS 为什么把音量滑块置灰
S/PDIF——通过 TOSLINK 光纤线或同轴数字连接传送——只朝一个方向传输数字音频。 它不提供一条标准的回传通道来告诉 Mac 连接的是什么设备,也不会改变那台设备的音量。 HDMI 音频往往也是这样:掌握音量的是显示器、接收机或电视,而不是 macOS。
所以按 F10、F11 或 F12 可能显示一个划掉的音量图标,而“系统设置 → 声音”里也可能显示一个禁用的滑块,或者提示选中的设备没有输出控制。 “音频 MIDI 设置”可以改变格式和路由,但它无法给 S/PDIF 链路添加一条硬件音量指令。
你真正的四个选项
1. 控制下游的硬件
使用 DAC、接收机、功放、有源音箱或条形音箱上的音量旋钮或遥控器。这是通用的答案,并且让 Mac 的数字输出保持满量程。它的缺点只是:那个控制未必在手边。
2. 使用应用自己的音量控制
“音乐”、VLC 以及许多浏览器网站这类播放器,可以在音频到达数字输出之前先降低自己的音量。这是免费的,对付一个应用很管用,但它不是全系统的控制,各个应用之间的音量也可能不一致。
3. 加一层全系统的软件衰减
音频工具可以在 S/PDIF 输出之前插入一级软件音量,并把键盘上的音量键映射到它。这在许多 DAC 和接收机上都有效,但此时 Mac 是在缩放音频采样,而不是让码流原封不动地通过。
4. 单独控制终端设备
有些联网音箱会把自己的音量控制开放在本地网络上。工具可以在音频仍走光纤线的同时捕获 Mac 的音量键,然后只把音量指令通过网络发出去。
哪个选项适合你的配置?
- USB DAC、Hi-Fi 接收机或有源监听音箱: 方便的时候就用它的旋钮或遥控器;如果键盘控制比一条原封不动的满量程码流更重要,那就用一个全系统的音频工具。
- 只有某一个应用特别响: 先把那个应用调小。你可能根本不需要另一个工具。
- Sonos 通过光纤接收 Mac 的声音: 音量掌握在 Sonos 手里,而它同时也能通过网络访问,所以音量键可以在不改动音频码流的前提下控制音箱。
- HDMI 显示器或电视: 请使用显示器或接收机上的控制,除非你手上那台硬件确实向 macOS 暴露了一个可控的输出。
哪些做法无法恢复 S/PDIF 音量控制
- 聚合设备或多输出设备。 它改变的是路由,而不是其中那个数字输出的能力。
- 换一根光纤线。 线缆能解决断音或没有声音的问题;但它无法创建一条 S/PDIF 并未定义的音量控制通道。
- 重启 Core Audio 或 Mac。 那能修好一台消失了的设备,但一个被有意禁用的滑块,事后照样是禁用的。
- 在“音频 MIDI 设置”里改采样率。 采样率和音量控制是两种彼此独立的属性。
光纤连接的 Sonos:留着这根线,继续用音量键
Optically 就是为这种具体情况而生的 macOS 菜单栏应用。 它会捕获调高音量、调低音量和静音,然后通过你的本地网络请求 Sonos 改变自身音量。 音频从不经过 Optically:它和从前一样,继续从 Mac 走 S/PDIF 出去。
Optically 不控制任意的 USB DAC、接收机、电视或非 Sonos 的音箱。 如果另一端的设备是 Sonos,请读完整的 Sonos 音量键指南,其中包括免费的替代办法,以及根本不需要任何应用的情形。
简短的回答
在许多 S/PDIF 输出上,Mac 的音量键被禁用,是因为这条数字链路并不控制设备实际的听音音量。 想要最干净的通用方案就用硬件控制;想在 Mac 上做全系统控制就用软件衰减;当 Sonos 这类联网音箱能单独接收音量指令时,就用终端控制。