Skip to content

Releases: branchingjade/boot-volume

BootVolume v1.4.0 — 睡眠唤醒修复 + 中英双语面板 / resume fix + bilingual panel

Choose a tag to compare

@branchingjade branchingjade released this 02 Oct 06:39

BootVolume v1.4.0

English below

简体中文

Decky Loader 插件:SteamOS 开机动画播放期间自动压低系统音量,动画结束后恢复原值。
本版本加入了「睡眠唤醒后第一次启动动画」的修复,并把面板做成中英双语(默认中文)。

新增

  • 睡眠唤醒后的第一次启动动画也会被压低。 之前插件只在 Decky 自身加载时、以及
    steamwebhelper 的 pid 变化时触发;而唤醒后那次动画是同一个 Steam UI 进程在放(pid 不变),
    所以插件根本没被触发,表现就是「长时间睡眠后第一次开机动画不响、第二三次才正常」。
    现在通过 time.time() - time.monotonic() 的差值跳变检测 resume,唤醒后立刻开压。
  • 中英双语面板,默认中文,可在面板底部切换,选择会被记住。

优化与修复

  • 开压前不再扫描全部 17 个动画文件(冷缓存下会拖慢约 1 秒),改用加载时测好的时长,
    动画开头几秒不再漏压。
  • 压低期间每秒复查一次音频输出:唤醒后重新枚举出来的 USB / HDMI 设备(满音量)也会被一起压低,
    结束时正确还原。
  • 音频图未就绪时短暂重试,不再直接报 no hardware sinks found 退出。
  • 面板「当前输出」显示真实的默认输出及其音量(带设备名)。

安装

  1. 下载本页的 BootVolume.zip。
  2. Decky → 设置 → 通用 → 从文件安装插件,选择该 zip。
    (也可以解压到 ~/homebrew/plugins/ 后重启 Decky。)

配合 Decky Loader v3.2.10-pre1 实测通过:开机压低 3 路输出到 40%、保持 14.01 秒后原样还原。


English

A Decky Loader plugin that lowers the system volume while the SteamOS boot animation plays and
restores the previous values afterwards. This release fixes the first startup movie after a resume
from sleep and makes the panel bilingual (Chinese by default).

Added

  • The first startup movie after a resume from sleep is ducked. The plugin used to trigger only on
    Decky's own load and on a steamwebhelper pid change, but the movie played right after a resume
    comes from the same Steam UI process, so nothing fired — hence "the first boot animation after a
    long sleep is quiet, the second and third are fine". The resume is now detected from the jump in
    time.time() - time.monotonic() and the duck starts immediately.
  • Bilingual panel (Chinese default, English), switchable at the bottom of the panel and remembered.

Improved / fixed

  • No ffprobe scan on the hot path (it delayed the duck by ~1 s with a cold cache): the duration
    measured at load time is reused, so the first seconds of the animation are covered.
  • The sink list is re-checked once per second during the duck, so USB/HDMI outputs re-enumerated at
    full volume after a resume are ducked too and restored correctly.
  • Briefly retry when the audio graph is not up yet instead of logging no hardware sinks found.
  • The panel's "current output" now shows the real default output and its volume, with the device name.

Install

  1. Download BootVolume.zip from this release.
  2. Decky → Settings → General → Install Plugin from file, pick the zip.
    (Or unzip it into ~/homebrew/plugins/ and restart Decky.)

Verified on-device with Decky Loader v3.2.10-pre1: three outputs ducked to 40 % for 14.01 s on boot,
then restored to their previous volumes.