
The Talk Meter — Tunnel Alert
For an evening with just the two of us, I built an app that listens to who is talking and counts each person's time. It learns my voice in 12 seconds, tells mine from the other person's without transcribing anything, and sounds the tunnel alert as soon as one of us goes over 60% of the talking time in a round. I first tested an off-the-shelf service, before writing my own and measuring why it got it wrong.
The round and its verdict
A slider sets the length of a round, from 1 to 15 minutes. The countdown runs down on screen, and only at zero does the app rule on the whole round. If one of us went over 60% of the talking time, the siren sounds and the block turns red. Otherwise, a chime announces a balanced conversation.
🚨 Tunnel alert!
Two-person talking duel, simulated here without a microphone.
automatic demo
🚨 tunnel alert
It runs by itself to show the alert. Touch the phone whenever you like to trigger it yourself, with sound.
The app learns my voice
I record myself for 12 seconds, once, and the app keeps my voice profile on my phone, with no account and no server. During an evening out, it separates my voice from the other person's by texture, never by words: it counts talking time even when nobody understands what is being said. The second person's profile learns itself after 3 seconds of speech.
Voice calibration, once only
The figure that ruled out another tool
I first handed voice separation to an off-the-shelf service. On two similar female voices, it detected only one person speaking. My own method, measured on those same voices, reaches 78.8% accuracy at each measured instant, and 95.5% once the result is smoothed.
Measured on two similar female voices
At each measured instant
0,0 %Once the result is smoothed
0,0 %This figure, obtained with my own method, is what ruled out the off-the-shelf service.
The mic setting
A phone placed on the table always hears its owner louder than the person across from it. A five-notch slider sets the sensitivity, and a white line on the level meter shows the threshold live, even when stopped. I push the slider until the voice across the table goes above the line.
The white line is the threshold: below it, the app hears nothing.
