Building SOUND SPACE on Windows, with AI
A first iOS app, written on a Windows PC without a Mac, and shipped to the App Store. This is a short account of what was built, what was measured, and what was thrown away.
What the app does
SOUND SPACE plays meditation music and lets you layer recorded ambient sound over it: rain, waves, a river, a forest, a campfire, a singing bowl, a wind chime measured at 526.6 Hz, and a binaural beat. You pick one tone and one ambient sound, set a length, and start. The music is never processed — layers are added beside it.
A second, separate mode called Gamma 40 plays a fixed stimulus tone, measured at 39.999 Hz with 100% modulation depth. It is a standalone tool, not music, and it is never mixed with the meditation tracks.
Two measurements decided the architecture
Amplitude modulation at 40 Hz sits in the auditory roughness band, so modulating music at that rate always sounds gritty. No parameter avoided it. Placing an unmodulated track beside the modulated bed was tried next and measured worse: with music at 70% of the mix, the app's own analyzer could no longer detect the 40 Hz at all, because unmodulated sound fills the troughs.
So the two ideas were separated into two modes instead of being blended. Binaural beats are used below 30 Hz, amplitude modulation above it, because a binaural beat stops being perceived as a beat at higher rates. The app shows which method it chose and why.
Nothing here is a health claim. The app is not a medical device, and no specific effect is guaranteed.
Where AI helped, and where it could not
- Music (Suno AI). Twenty tracks were generated under a paid plan. Prompt wording turned out to matter less than expected: the spread between prompts was about 12–15 Hz of spectral centroid, while the spread within one prompt was 91 Hz. Generating many takes and listening beat refining the prompt.
- UI review (Claude Design). Screenshots of the shipped 1.0 were reviewed and returned as a prioritized list of problems with a written spec. That spec became version 1.1.0: a dedicated playing screen, four tabs instead of five, and a calmer palette.
- Implementation (Claude Code and Codex). Audio measurement, the App Store submission scripts, the iOS bridge, and the release automation.
- Builds (GitHub Actions). No Mac was ever used. macOS runners are billed at ten times the rate of Linux, which is the single most important thing to know before automating iOS builds.
- What AI could not do. Choosing which track to ship. Every candidate was listened to by a person; measurement narrowed the field but never decided it.
App Review
The first version was rejected twice: once for missing information, once because the free-trial terms were not shown clearly enough on the purchase screen. Both were fixable by separating the cause from the symptom and rewriting the screen and the notes. The third submission was approved.
What shipped
- 1.1.0 — the redesigned screens, plus iPad support.
- 1.1.1 — a fix for the binaural layer, which was selected in the UI but silently not generated on the native playback path.
- 1.2.0 — English, and distribution in the United States, United Kingdom, Canada, Australia, New Zealand and Singapore alongside Japan.
The full account, with the measurements and the dead ends in detail, is written in Japanese.