V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dawee2y
V2EX  ›  macOS

mac 系统无法记住 AirPods 音量

  •  
  •   dawee2y · 2024-01-26 09:04:25 +08:00 · 4626 次点击
    这是一个创建于 663 天前的主题,其中的信息可能已经有所发展或是发生改变。

    macos 14 airPods pro 二代

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

    29 条回复    2025-05-22 17:46:27 +08:00
    CiaoJeff
        1
    CiaoJeff  
       2024-01-26 10:19:05 +08:00
    应该是系统 bug ,我有时候偶尔能记住,大多数都被重置了
    Rin7
        2
    Rin7  
       2024-01-26 10:47:21 +08:00
    这 bug 从 Sonoma 正式发布到现在一直存在。
    erzhuyijian123
        3
    erzhuyijian123  
       2024-01-26 10:57:35 +08:00
    bug, 困扰很久了
    Yzzm
        4
    Yzzm  
       2024-01-26 11:00:23 +08:00
    原来是 bug 啊,我就说每次都要重新设置音量
    kneep
        5
    kneep  
       2024-01-26 11:00:29 +08:00
    Sonoma 引入的 bug
    QuantumRose9
        6
    QuantumRose9  
       2024-01-26 11:05:22 +08:00
    目前用 Hammerspoon ,设置成连接耳机自动调整音量,断开耳机再次切换音量。Mac 还可以用 shortery+快捷指令实现。iOS 单独用快捷指令就可以。
    Rin7
        7
    Rin7  
       2024-01-26 11:21:04 +08:00
    @QuantumRose9 可以分享下配置代码吗
    QuantumRose9
        8
    QuantumRose9  
       2024-01-26 12:42:44 +08:00   ❤️ 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  
       2024-01-26 13:57:44 +08:00
    @QuantumRose9 感谢
    seres
        10
    seres  
       2024-01-26 14:13:28 +08:00
    Sonoma “新特性”
    我还碰到升级 ventura 后无法反向充电
    fuwenpei
        11
    fuwenpei  
       2024-01-26 14:43:23 +08:00
    我的 bug 会把音量设置为最大。。。
    lee289
        12
    lee289  
       2024-01-26 15:39:24 +08:00
    库克是👂🐲吗,每次进去都是一半音量
    zhouxuchen
        13
    zhouxuchen  
       2024-01-26 17:40:45 +08:00
    我这不只是重连的时候会聋,有时候用久了调整一下音量都给我跳到一半处
    dangotown
        14
    dangotown  
       2024-01-27 01:43:09 +08:00
    AirPlay 音量调节也有 bug
    ZztGqk
        15
    ZztGqk  
       2024-01-27 10:51:59 +08:00 via iPhone
    windows 记得都比他好
    EricYuan1
        16
    EricYuan1  
       2024-02-20 20:10:46 +08:00
    @lee289 哈哈哈,原来不是我一个人。。。
    yulii
        17
    yulii  
       2024-05-14 20:55:43 +08:00
    我也是。Sonoma 14.4.1 还是没修复这个 BUG 。only apple can do
    washu
        18
    washu  
       2024-07-02 09:27:33 +08:00
    更新到了 Sonoma 14.5 后这个 BUG 依旧存在。耳朵都快被震聋了
    QuincySx
        19
    QuincySx  
       2024-09-10 15:20:38 +08:00
    我忍了一年多了,原来是个 BUG ,我擦。
    Linioi
        20
    Linioi  
       2024-09-26 19:01:21 +08:00
    macOS 15 也还是有这个问题,真无语……
    wh2724
        21
    wh2724  
       2024-10-31 20:05:43 +08:00
    macOS 15.0.1 仍有这个问题,依旧没修复
    littlewing
        22
    littlewing  
       350 天前
    15.1.1 仍然有这个问题
    clevo
        23
    clevo  
       325 天前
    尼玛的果然是 bug 最新依旧
    mais0n
        24
    mais0n  
       316 天前   ❤️ 5
    真的被这个 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  
       312 天前   ❤️ 1
    感谢#24 楼的方法。终究解决这个问题了。

    发布会上还提听力健康,损害听力健康的 BUG 反而 1 年多没去修。 真的是 only apple can do
    Wenfang
        26
    Wenfang  
       300 天前
    补充 #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  
       249 天前
    @ephemeron 妈的 这个回复应该在苹果 newsroom 全球循环置顶六个月
    summerain4ever
        28
    summerain4ever  
       182 天前
    mac 15.3.2 (24D81) 依旧存在这个问题
    Jeff5317
        29
    Jeff5317  
       180 天前
    我使用的是 MacOS 15.5 ,问题仍然存在。我尝试了一种暂时有效的方法(在 iPhone 和 Mac 之间切换 AirPods 时音量保持不变),但不知道在什么情况下会失效。

    不要看菜单栏里的 AirPods 音量,直接进入系统设置调整 AirPods 的输出音量。调整后,重新连接时音量会固定,但菜单栏里的音量可能还是 50%,忽略它,实际音量仍然是之前设置的大小。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   5860 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 06:23 · PVG 14:23 · LAX 22:23 · JFK 01:23
    ♥ Do have faith in what you're doing.