dawee2y
V2EX  ›  macOS

mac 系统无法记住 AirPods 音量

  •  
  •   dawee2y · Jan 26, 2024 · 5764 views
    This topic created in 844 days ago, the information mentioned may be changed or developed.

    macos 14 airPods pro 二代

    耳机连接 mac ,就默认把音量调到了一半处,手动调小之后,如果断开一会再连接,音量又是在一半位置,有什么办法可以永久记住上次的音量吗?

    29 replies    2025-05-22 17:46:27 +08:00
    CiaoJeff
        1
    CiaoJeff  
       Jan 26, 2024
    应该是系统 bug ,我有时候偶尔能记住,大多数都被重置了
    Rin7
        2
    Rin7  
       Jan 26, 2024
    这 bug 从 Sonoma 正式发布到现在一直存在。
    erzhuyijian123
        3
    erzhuyijian123  
       Jan 26, 2024
    bug, 困扰很久了
    Yzzm
        4
    Yzzm  
       Jan 26, 2024
    原来是 bug 啊,我就说每次都要重新设置音量
    kneep
        5
    kneep  
       Jan 26, 2024
    Sonoma 引入的 bug
    QuantumRose9
        6
    QuantumRose9  
       Jan 26, 2024
    目前用 Hammerspoon ,设置成连接耳机自动调整音量,断开耳机再次切换音量。Mac 还可以用 shortery+快捷指令实现。iOS 单独用快捷指令就可以。
    Rin7
        7
    Rin7  
       Jan 26, 2024
    @QuantumRose9 可以分享下配置代码吗
    QuantumRose9
        8
    QuantumRose9  
       Jan 26, 2024   ❤️ 1
    @Rin7 可以:
    local lastOutputDeviceName = hs.audiodevice.defaultOutputDevice():name()

    local function handleDeviceChanges()
    local currentOutputDeviceName = hs.audiodevice.defaultOutputDevice():name()

    if lastOutputDeviceName ~= currentOutputDeviceName then
    hs.audiodevice.defaultOutputDevice():setVolume(0)
    hs.alert.show("音量已设为 0")

    -- 如果拔下的设备是有线耳机,则暂停音乐
    if lastOutputDeviceName == "外置耳机" then -- 替换为你的耳机名称
    hs.spotify.pause() -- 暂停 Spotify 音乐
    -- hs.itunes.pause() -- 如果你使用 iTunes ,取消这行的注释
    end
    end

    lastOutputDeviceName = currentOutputDeviceName
    end

    hs.audiodevice.watcher.setCallback(handleDeviceChanges)
    hs.audiodevice.watcher.start()
    Rin7
        9
    Rin7  
       Jan 26, 2024
    @QuantumRose9 感谢
    seres
        10
    seres  
       Jan 26, 2024
    Sonoma “新特性”
    我还碰到升级 ventura 后无法反向充电
    fuwenpei
        11
    fuwenpei  
       Jan 26, 2024
    我的 bug 会把音量设置为最大。。。
    lee289
        12
    lee289  
       Jan 26, 2024
    库克是👂🐲吗,每次进去都是一半音量
    zhouxuchen
        13
    zhouxuchen  
       Jan 26, 2024
    我这不只是重连的时候会聋,有时候用久了调整一下音量都给我跳到一半处
    dangotown
        14
    dangotown  
       Jan 27, 2024
    AirPlay 音量调节也有 bug
    ZztGqk
        15
    ZztGqk  
       Jan 27, 2024 via iPhone
    windows 记得都比他好
    EricYuan1
        16
    EricYuan1  
       Feb 20, 2024
    @lee289 哈哈哈,原来不是我一个人。。。
    yulii
        17
    yulii  
       May 14, 2024
    我也是。Sonoma 14.4.1 还是没修复这个 BUG 。only apple can do
    washu
        18
    washu  
       Jul 2, 2024
    更新到了 Sonoma 14.5 后这个 BUG 依旧存在。耳朵都快被震聋了
    QuincySx
        19
    QuincySx  
       Sep 10, 2024
    我忍了一年多了,原来是个 BUG ,我擦。
    Linioi
        20
    Linioi  
       Sep 26, 2024
    macOS 15 也还是有这个问题,真无语……
    wh2724
        21
    wh2724  
       Oct 31, 2024
    macOS 15.0.1 仍有这个问题,依旧没修复
    littlewing
        22
    littlewing  
       Dec 3, 2024
    15.1.1 仍然有这个问题
    clevo
        23
    clevo  
       Dec 29, 2024
    尼玛的果然是 bug 最新依旧
    mais0n
        24
    mais0n  
       Jan 6, 2025   ❤️ 6
    真的被这个 Bug 折磨,用 Hammerspoon 加改了一下上面那个兄弟的代码,完美解决了我的问题。

    -- 存储上一次默认音频输出设备的名称
    local lastOutputDeviceName = hs.audiodevice.defaultOutputDevice():name()

    -- 处理设备变更的回调函数
    local function handleDeviceChanges()
    -- 获取当前默认音频输出设备的名称
    local currentOutputDeviceName = hs.audiodevice.defaultOutputDevice():name()
    -- 判断设备名称是否发生了变化
    if lastOutputDeviceName ~= currentOutputDeviceName then
    -- 判断当前设备是否为蓝牙耳机
    if string.find(currentOutputDeviceName, "AirPods") then
    -- 连接蓝牙耳机时将音量设置为 20
    hs.audiodevice.defaultOutputDevice():setVolume(20)
    hs.alert.show("音量已设为 20")
    -- 判断上一个设备是否为蓝牙耳机
    elseif string.find(lastOutputDeviceName, "AirPods") then
    -- 断开蓝牙耳机时将音量设置为 0
    hs.audiodevice.defaultOutputDevice():setVolume(0)
    hs.alert.show("音量已设为 0")
    end
    end
    -- 更新 lastOutputDeviceName 为当前设备名称
    lastOutputDeviceName = currentOutputDeviceName
    end

    -- 为音频设备变动设置回调函数
    hs.audiodevice.watcher.setCallback(handleDeviceChanges)
    -- 启动音频设备监听器
    hs.audiodevice.watcher.start()
    yulii
        25
    yulii  
       Jan 10, 2025   ❤️ 1
    感谢#24 楼的方法。终究解决这个问题了。

    发布会上还提听力健康,损害听力健康的 BUG 反而 1 年多没去修。 真的是 only apple can do
    Wenfang
        26
    Wenfang  
       Jan 22, 2025
    补充 #24 ,用下面的 hammerspoon 配置可以用快捷键提示当前的音量

    ```lua
    -- Function to print the current volume
    function printCurrentVolume()
    local volume = hs.audiodevice.defaultOutputDevice():volume()
    hs.alert.show("Current volume: " .. volume)
    end

    -- Bind the function to a hotkey, for example, Ctrl + Alt + V
    hs.hotkey.bind({"ctrl", "alt"}, "V", printCurrentVolume)
    ```
    LCOOOOD
        27
    LCOOOOD  
       Mar 14, 2025
    @ephemeron 妈的 这个回复应该在苹果 newsroom 全球循环置顶六个月
    summerain4ever
        28
    summerain4ever  
       May 21, 2025
    mac 15.3.2 (24D81) 依旧存在这个问题
    Jeff5317
        29
    Jeff5317  
       May 22, 2025
    我使用的是 MacOS 15.5 ,问题仍然存在。我尝试了一种暂时有效的方法(在 iPhone 和 Mac 之间切换 AirPods 时音量保持不变),但不知道在什么情况下会失效。

    不要看菜单栏里的 AirPods 音量,直接进入系统设置调整 AirPods 的输出音量。调整后,重新连接时音量会固定,但菜单栏里的音量可能还是 50%,忽略它,实际音量仍然是之前设置的大小。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3242 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 83ms · UTC 10:59 · PVG 18:59 · LAX 03:59 · JFK 06:59
    ♥ Do have faith in what you're doing.