11L

← Software

Aircheck

An iOS app that fabricates an hour of 1970s to 1990s radio: jingles, station IDs, ads, DJ patter, and a newscast, with the real songs a station was playing that week pulled from Apple Music.

Swift SwiftUI MusicKit AVFoundation


Pick a station, a city, and a date, and Aircheck plays what that station sounded like: legal ID, sweepers, a local ad or two, the DJ back-announcing the last record, a top-of-hour newscast with headlines from that day, and three or four songs per break drawn from the station’s actual weekly survey. The songs come from Apple Music. Everything else is generated. In radio, an aircheck is a recording of a station’s real output with all the non-music elements left in, which is exactly what this app fakes.

The hard constraint shapes the whole design. Apple Music audio is DRM-protected and plays only through MusicKit’s own player, so it cannot be mixed, ducked, or crossfaded with anything else. Aircheck is therefore a sequencer that hands off between two players: local elements through AVFoundation, songs through the MusicKit player, with the app watching playback state to fire the next element the moment a song ends. No DJ talking over an intro, which is also how most formats sounded by the 80s. Proving that handoff works reliably on a backgrounded iPhone is the first milestone, and nothing else matters until it does.

Song data comes from the Airheads Radio Survey Archive, with Billboard charts as the fallback where no survey exists. Station audio is synthesized from scripts: a language model writes period-style copy, text-to-speech reads it, and music beds go underneath. Real jingle packages are copyrighted, so none are used. Generation runs offline on my own hardware and produces a station pack the app plays back as a hot clock.

Brand new as of September 2026, scaffolded alongside its sibling Casey and sharing its MusicKit code. Ships under the OneOneLogic banner.