Inspiration. One word said on stream can get a channel demonetized, and once it's said live there's no taking it back. Chat filters only see what viewers type, and a stream delay only postpones the problem.

What it does. Live Swear Censor holds your microphone back by two seconds. In that window, Whisper, running on your own computer, writes down every word, and anything on your list is replaced with a beep before the audience hears it. You choose the words; the AI does the listening. You can add a word mid-stream, and from then on it's bleeped. Nothing is uploaded.

How we built it. The desktop version runs Whisper large-v3-turbo locally. It re-reads the whole sentence every half second, so words are never cut in half. It keeps the moment before speech starts, and measures the room's noise so silence never turns into words. Each beep starts and ends in the gap between words, at the loudness of the word it covers. The browser version runs the same rules in JavaScript, with Whisper inside the page through WebGPU, and mutes any speech it can't check in time instead of letting it through.

How we know it works. On a scripted recording of my own voice, it caught 13 of 13 swears. A piece-by-piece comparison of the output found no part of any swear played unbleeped, even with the word list changed mid-session. Words that only sound similar, like "class" or "Dickens", pass untouched.

Challenges. Cut-off words, beeps that swallowed neighbouring words, and an in-browser library that reported every word slightly late. We measured each problem against real timings before fixing it.

Limitations. Headphones are needed. The microphone sets the accuracy ceiling. The browser version uses a smaller model, and English only for now.

Built With

Share this project:

Updates

Submission history