一个简单的系统托盘工具,通过定时发送 40Hz 低频音 防止 JBL 等品牌电脑音响自动进入休眠状态。音频持续时间、音量和间隔时间均可自定义。
A simple system tray utility that prevents JBL and other brand speakers from auto-sleeping by sending periodic low-frequency audio (40Hz). Fully customizable interval, duration, and volume.
本项目完全免费开源,MIT 许可证
Why / 为什么需要这个
JBL 等品牌的电脑音响为了省电,会在一段时间没有音频输出后自动进入休眠状态。当有新的声音时,音响需要"唤醒",这会导致声音开头的一小段被吃掉,影响体验。
这个工具通过定期发送人耳几乎听不到的低频音 (40Hz),让音响保持活动状态,避免休眠。
Features / 功能
- 定期发送低频音 (40Hz) 保持音响活动状态
- 系统托盘图标显示当前状态(运行/暂停)
- 可自定义间隔时间、持续时间、音量
- 支持播放测试音
- 支持开机自启动
- 右键菜单快速操作
Parameters / 可配置参数
| 间隔时间 |
两次心跳之间的间隔,5-300 秒,默认 60 秒 |
| 持续时间 |
每次心跳的持续时间,0.5-10 秒,默认 2 秒 |
| 音量 |
心跳声音的音量,10%-100%,默认 70% |
Tech Stack / 技术栈
C++
Win32 API
CMake
winmm.lib
- C++ / Win32 API - 原生 Windows 开发,无依赖
- winmm.lib - Windows 多媒体 API,用于生成音频
- Shell_NotifyIcon - 系统托盘图标实现
- CMake - 跨编译器构建系统
Build / 构建
使用 CMake 构建:
mkdir build
cd build
cmake ..
cmake --build .
或使用 Visual Studio 开发者命令提示符直接编译
Requirements / 系统要求
- Windows 7 或更高版本
- 支持音频输出的设备