会搏动的节拍器
2026年9月
概述
屏幕中央的圆与咔哒声在同一瞬间、以相同强度搏动。我制作了一款没有广告、没有账号、没有设置页面的 iPhone 节拍器。
这是为自己练习次中音萨克斯而做的工具。打开就能开始,即使声音不易听清,也能看见节拍。从策划、设计,到 SwiftUI 实现与点击音合成,都由我独立完成。
操作——直接触碰想改变的东西
屏幕上只有节拍的点、圆和速度数字。没有菜单,也没有说明文字;想改变什么,就直接触碰它。
- ⓘ
- 打开支持页面。
- 点
- 轻点增加一拍(1–7拍),也可以滑动增减。
- 圆
- 轻点开始或停止。长按后,可跟着歌曲敲击来设定速度。
- 数字
- 拖动调快或调慢;慢慢移动可精细调整。−/+每次调整1。
搏动——同一瞬间,相同强度
圆在声音传到耳朵的瞬间膨胀,而不是在声音发出的瞬间。蓝牙耳机会产生约0.1–0.3秒延迟,应用利用 iOS 报告的输出延迟加以补偿。膨胀幅度与点击音的音量成正比:第一拍音调更高、音量更大,圆也明显膨胀得更大。
每一拍的时刻由音频线程以采样为单位确定。计算方式不会累积误差,即使连续播放一小时,偏差也保持在0.5个采样以内。
敲击测速——敲击时保持安静
长按圆,它就会像果冻一样颤动。跟着歌曲或脑海中的速度敲击,触碰的位置会凹下去,晃动后弹回。速度通过振动反馈给你。
敲击时刻意不发声。若敲下去就返回声音,蓝牙会让它延迟传来,并与节拍器的声音重叠。停止敲击后,该速度的点击音从几乎听不见开始,在6秒内升至正常音量。
声音——用耳朵选出不被萨克斯淹没的音高
点击音由正弦波合成,不使用音频文件。我制作了试听比较页面,一边吹次中音萨克斯,一边通过 iPhone 扬声器进行了3轮比较,最终选择1875 Hz和1250 Hz,即原始频率的1.25倍。它们高于萨克斯能量最集中的频段,又低于容易刺耳的频段。
音调更高、时长更长或增加泛音的候选声音确实更容易听见。即便如此,我仍选择了能保留柔和、中性电子音质感的范围。
做减法——没有加入的东西
不放入让人犹豫的东西。逐一确认少了它是否仍能成立,再将它去掉。
- 广告、追踪与账号
- 一开始就确定的事。应用不会主动联网。
- 设置页面
- 所有操作在一个屏幕内完成。
- 音色选择
- 强拍、弱拍两种声音就够了。选项会带来犹豫。
- 音量滑块
- 设备本身的音量键已经足够。
- 浅色模式
- 只保留一个黑色画面。
- 8拍及以上
- 12/8拍按4拍数,9/8拍按3拍数。
- 细分节拍(八分、三连音、十六分)
- 不是应用成立的必要条件,留作优先考虑的新增功能。
- 输入速度数值
- −/+和拖动已经足够。
使用 SwiftUI 实现,无外部库。支持运行 iOS 17及以上版本的 iPhone。英文名为 No Ads Simplest Metronome,正在准备于 App Store 发布(2026年9月)。完整使用说明与隐私政策见支持页面(英语)。