A hearing check for the living room, on Fire TV
You passed the hearing test and you still can't hear the television.
Earshot measures how far past a programme's dialogue you are listening, screens your hearing in noise with the remote, and hands you one page for the doctor.
The test on your phone plays tones in a quiet room. What you actually struggle with is speech with other sound behind it, and those are not the same measurement. People with ordinary results on the first one routinely cannot follow dialogue.
- 80%
- of people with hearing loss do not know they have it
- 7 years
- the wait between noticing and asking anybody
- No. 1
- modifiable risk factor for dementia from midlife, tied with cholesterol (Lancet, 2024)
The check
A minute or two, with your own speakers
You will hear three digits at a time with noise behind them, and type back what you heard. It gets harder while you are getting them right and easier when you are not, until it finds the point where you get about half of them.
Use whatever you normally listen with, in the room you normally sit in. The test measures a ratio rather than a level, so it does not need calibrated equipment, but it does need to be somewhere you can hear.
Whatever it finds
These are the only three things it can say.
No result names a condition, promises anything, or calls a run that did not work good news. A test fails the build if one ever does. The worst it can say is that a hearing test is worth booking, and that some causes are straightforward to treat, which is true.
If you hear well
You picked out speech in noise about as well as most adults do.
Nothing to do. If following television still takes effort, that is worth mentioning to a doctor anyway, because this test only looks at one part of hearing.
If you are near the line
You needed speech a little louder than the noise than most adults do.
Worth repeating in a week. If it comes out the same, a hearing check is a reasonable thing to ask for at your next appointment.
If you struggle
You needed speech much louder than the noise than most adults do.
This is a good reason to book a hearing test. A screen like this cannot say what is causing it, and some causes are straightforward to treat.
In one screen
What it is, why it exists, and how it runs.
What
A hearing check of a minute or two that you take with a television remote. Three spoken digits play with noise behind them, it gets harder while you are right and easier while you are wrong, and it ends on the ratio at which you get half of them. That ratio is your speech reception threshold. It measures speech in noise, which a tone test does not.
Why
Eighty percent of people with hearing loss do not know. The ones who notice wait about seven years. And a television is where the difficulty shows first: a published paper found that turning the set up predicts hearing loss with 81 percent sensitivity, collected by asking patients in a clinic. The television knows the real number every night and has never been asked.
How
A React Native app on Fire OS, sideloaded as an APK and driven entirely by the remote. It plays a film whose dialogue loudness was measured with Amazon Transcribe and ffmpeg, records the level you settle on, and offers the check only after months of the same pattern. An MCP server lets Alexa+ explain what the television watches and prepare the page for a doctor. The check you can take on this page is the same engine.
How it works on a television
Notice, ask rarely, and help either way.
It would notice
Comparing how loud a programme's dialogue actually is against the volume you chose for it. Not whether you turned it up, but how far past the programme you are listening.
No app on Fire TV can do this for other apps, including ours. Reading what another app is playing needs a permission Amazon does not grant to third parties. So Earshot measures the programmes it plays itself, and the model is built, tested, and waiting on an API only the platform can provide.
It asks, rarely
Only after months, never mid-programme, never twice in a season, and if you say no twice it never asks again. A health prompt that keeps coming back is a thing people learn to dread.
It helps either way
Fire TV already ships Dialogue Boost, hearing-aid pairing and direct streaming to cochlear implants. All of it is for people who already know. Earshot points at the first one and gives you one page to take to a doctor.
Why a television
Because it already has the evidence.
Someone who turns the set up has a 68 percent chance of already having hearing loss of 25 dB or more.
For news programmes, where the content is nearly all speech, the average loss among those viewers was 41 dB. They collected it by asking patients in a clinic. The television knows the real number every night and has never been asked.
Why it is worth catching: about 80 percent of people with hearing loss do not know, those who notice wait roughly seven years before asking anyone, and the 2024 Lancet standing Commission puts hearing loss level with high cholesterol as the largest modifiable risk factor for dementia from midlife.
Who it is for: by the NIDCD's count from national survey data, 22 percent of adults aged 65 to 74 and 55 percent of those 75 and older have disabling hearing loss, and of people over 70 who have it, fewer than one in three has ever used a hearing aid. The television is in nearly every one of those homes, and it is where the difficulty shows first.
What a pilot looks like: one audiology clinic. Patients due for a routine hearing check take this screen on their own television the week before, and the clinic compares the threshold it read against the speech-in-noise test run in the booth. Two numbers per person, no diagnosis from us, and the first evidence about this interface rather than about the method.
Fire TV
Put it on a television in ten minutes.
Four steps work today with a Fire TV Stick and a laptop on the same network. The fifth, the Appstore listing, is the one a household would take and is the one that waits on review. Each step says which it is.
- 1
Download the app
Works todayEarshot is a React Native app built for Fire OS, the Android-based system on Fire TV Sticks, Cubes and Fire TV Edition sets. It ships as one APK carrying arm64, armeabi-v7a and x86_64, so it installs on real Fire TV hardware and on an emulator.
71.5 MB. The film it plays is inside it, so the check works with the network unplugged.
- 2
Turn on ADB debugging on the television
Works todayOn the Fire TV: Settings, then My Fire TV, then Developer Options, then ADB Debugging on. Note the set's IP address under Settings, My Fire TV, About, Network. That is the whole of the television-side setup.
- 3
Install it from a laptop on the same network
Works todayTwo commands. The first connects to the set over the network; the second installs the app. Fire TV asks once whether to allow the laptop.
adb connect <fire-tv-ip>:5555 adb install earshot-tv-v0.1.2.apk
- 4
Open it and take the check with the remote
Works todayEarshot appears under Your Apps. The home screen says what a television could watch for, a Watch button plays a film while the listening level updates live, reading the set's own volume once a second on televisions whose volume the remote drives, and Check it runs the digits-in-noise screen entirely on the D-pad. Sittings are kept on the set and never uploaded.
- 5
Find it in the Amazon Appstore
Waits on Appstore reviewThis is the step a household would actually take, and it is the one that waits on Appstore review. Everything above is what review would install. Until then, sideloading is the honest route. The demo footage is this APK installed on a Fire TV that Amazon hosts in Appstore Quality Central, its Fire TV simulator, driven only by the D-pad and recorded from the console's stream on 2026-09-30.
What the television does that this page cannot
This page can run the check. Only the television can do the half that comes before it: play a programme whose dialogue loudness was measured, watch the level you settle on, count the times you go back to hear a line, and offer the check only after months of the same pattern. That is the primary track, and it is why the app exists.
It measures its own playback. It cannot see what other apps play, because reading another app's media session needs a permission Amazon does not grant to third parties. That is a platform boundary rather than an omission, it is friction log entry 12, and the feature request it produced is the one this submission most wants read.
Build it yourself
The repository carries the full build: bundle with Metro, then assemble with Gradle from a short path, because a native dependency compiles through CMake and CMake cannot cope with a long path that has spaces in it. Both quirks are written down in tv/README.md with what each failure looks like, so nobody rediscovers them.
Alexa+
An agent that can explain the television and cannot report on it.
An MCP server, spec 2025-11-25 over Streamable HTTP, with five tools and an Agent Skill. It explains what the television watches, records a check that was taken, says whether anything has changed across checks, and prepares one page for a doctor. It holds no viewing data, because that never leaves the set, and a test walks every tool and fails if one ever returns a listening figure.
Live, from this page
Open a session against the deployed server, list its tools, and ask it what the television watches. Every request below is real and timed. The tool chosen is the one that returns no data, because that is the point.
Evidence
What we measured, what we read, and what nobody has done yet.
Written for somebody who came here to find the weak point. The three are kept apart on purpose, because a project that calls everything measured either is not one or has not looked.
Measured here
The procedure run against simulated listeners whose thresholds we chose in advance. Over 2,000 runs it reads a known threshold with a bias of 0.037 dB and a 0.748 dB test-retest spread. Reproduce with npm run validate.
Read from the literature
The paradigm, the procedure parameters, the reliability figures and the cut-points. Published test-retest for this test is 0.7 to 1.2 dB, so the number above is the implementation behaving like the description rather than a result about anybody's ears.
Nobody has done yet
No person has taken this test. Whether the instructions land, whether the volume step works in a real room, whether anybody gives up at trial nine: none of that is known, no paper covers it, and it is about this interface rather than the method.
Against the obvious alternative
Anybody asked to notice somebody turning the television up would track the volume setting. That is what the published paper did by asking, and what a device patent claims. Earshot adds one term, the programme's own dialogue loudness, and this is what that term is worth on 200 households of each kind.
- Volume only, on viewers who merely turned up a quieter mix
- 200 of 200false alarms
- Earshot, on the same viewers
- 0 of 200false alarms
Both models catch every household that really did creep upward, 200 of 200, so the improvement is not bought by going quiet. It is bought by knowing what was playing.
What the cut-off does to a person
Sensitivity and specificity need a population, and inventing a plausible spread of thresholds would be making up the very thing the numbers are supposed to come from. So this is the other question, which needs no such assumption: if somebody really is this hard of hearing, how often does the screen say so.
| True threshold | Against the cut-off | Referred |
|---|---|---|
| -10.0 dB | 6.2 dB better | 0.0% |
| -8.0 dB | 4.2 dB better | 0.0% |
| -6.0 dB | 2.2 dB better | 0.2% |
| -5.0 dB | 1.2 dB better | 4.6% |
| -4.0 dB | 0.2 dB better | 34.2% |
| -3.0 dB | 0.8 dB worse | 83.8% |
| -2.0 dB | 1.8 dB worse | 99.4% |
| -1.0 dB | 2.8 dB worse | 100.0% |
| 0.0 dB | 3.8 dB worse | 100.0% |
The top of that table is the row that decides whether this belongs in a living room. Somebody comfortably inside the normal range is referred about twice in a thousand. A screen that bothers healthy people teaches them to ignore it, and the person who learns to ignore it is the person it exists for.
Around the line itself it is close to a coin toss, and it has to be. A threshold measured with 0.748 dB of noise cannot resolve a line drawn a fraction of a decibel away. That is why there is a borderline band that says to try again in a week rather than offering a verdict.
Developers
Everything here is a test you can run.
Run it
npm install npm test # 214 tests, both runners npm run validate # regenerate every figure on this page npm run web:dev
No AWS account needed for any of that. The procedure, the wording, the listening model and the signal processing are pure functions with tests.
Use the engine
import { Screen, interpret } from "digits-in-noise";
const s = new Screen();
while (!s.finished) {
const t = s.current(); // play t.digits at t.snrDb
s.submit(await typed());
}
interpret(s.result());digits-in-noise is the open-source deliverable: the adaptive screen as a dependency-free TypeScript library, with a simulated listener so the procedure itself can be measured.
Repository · The procedure against the literature · Prior art · Friction log · Agent Skill
Privacy
What it does not do.
There is no microphone.
Not in the television app, not on this page, not anywhere in the project. The only audio that goes to a server is a film's own soundtrack, sent to locate the dialogue so its loudness can be measured.
There is no camera.
Nothing watches the room.
Nothing here is a diagnosis.
A screen can say something is worth getting checked. It cannot say what is wrong, how bad it is, or whether anything can be done, and the wording is tested so it never tries.
It never estimates your hearing from how you watch.
Volume is a reason to ask a question. The answer is the check.