{"id":13341918,"url":"https://github.com/neonwatty/bleep-that-shit","last_synced_at":"2025-10-18T09:10:40.270Z","repository":{"id":243437058,"uuid":"812420405","full_name":"neonwatty/bleep-that-shit","owner":"neonwatty","description":"Automatically filter, censor, and replace profanity, swear words, curse words, or custom terms in audio and video with a beep or bleep sound effect.  Built to self-host with Python, AI, Streamlit, and Docker.  Free and open source.","archived":false,"fork":false,"pushed_at":"2025-01-24T21:20:09.000Z","size":18481,"stargazers_count":21,"open_issues_count":1,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-24T21:27:19.750Z","etag":null,"topics":["artificial-intelligence","audio-processing","machine-learning","python","self-hosted","youtube"],"latest_commit_sha":null,"homepage":"https://bleepthatsht.xyz/","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/neonwatty.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-08T20:57:15.000Z","updated_at":"2025-01-24T21:20:09.000Z","dependencies_parsed_at":"2025-01-24T21:34:32.410Z","dependency_job_id":null,"html_url":"https://github.com/neonwatty/bleep-that-shit","commit_stats":{"total_commits":53,"total_committers":2,"mean_commits":26.5,"dds":0.339622641509434,"last_synced_commit":"94a4dbdf95d4f89665aa2bb3b0bd8e6c264ab5ab"},"previous_names":["jermwatt/bleep_that_sht","neonwatty/bleep_that_sht","neonwatty/bleep-that-shit"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neonwatty%2Fbleep-that-shit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neonwatty%2Fbleep-that-shit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neonwatty%2Fbleep-that-shit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neonwatty%2Fbleep-that-shit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neonwatty","download_url":"https://codeload.github.com/neonwatty/bleep-that-shit/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237821581,"owners_count":19371789,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["artificial-intelligence","audio-processing","machine-learning","python","self-hosted","youtube"],"created_at":"2024-07-29T19:26:40.964Z","updated_at":"2025-10-05T05:37:24.877Z","avatar_url":"https://github.com/neonwatty.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ca href=\"https://www.producthunt.com/posts/bleep-that-sh-t?embed=true\u0026utm_source=badge-featured\u0026utm_medium=badge\u0026utm_souce=badge-bleep\u0026#0045;that\u0026#0045;sh\u0026#0042;t\" target=\"_parent\"\u003e\u003cimg src=\"https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=470378\u0026theme=light\" alt=\"Bleep\u0026#0032;That\u0026#0032;Sh\u0026#0042;t\u0026#0033; - A\u0026#0032;whisper\u0026#0032;app\u0026#0032;that\u0026#0032;bleeps\u0026#0032;out\u0026#0032;chosen\u0026#0032;words\u0026#0032;in\u0026#0032;YouTube\u0026#0032;videos | Product Hunt\" style=\"width: 250px; height: 45px;\" /\u003e\u003c/a\u003e\n\n# Bleep That Sh\\*t! — In-Browser Audio \u0026 Video Censorship Tool\n\nMake someone sound naughty 😈 or make your content more Ad-friendly.\n\n**Bleep That Sh\\*t!** lets you instantly transcribe and censor words in your audio or video files, with full control over what gets bleeped. No uploads, no servers, no installs — everything happens right in your browser.\n\n**The current in-browser implementation works for clips of length 10 minutes or less.**\n\n---\n\n## How it works\n\n1. **Upload** your audio (MP3) or video (MP4) file.\n2. **Transcribe** using Whisper ONNX models (transformers.js) — all in-browser.\n3. **Censor**: Pick words to bleep (exact, partial, or fuzzy match).\n4. **Preview \u0026 Download**: Hear the result and save your censored file.\n\nAll processing is done locally in your browser. Your media and transcripts stay private — nothing is sent to a server.\n\n---\n\n## Examples\n\nSome examples of the end product (make sure to turn volume on, its off by default).\n\nhttps://github.com/user-attachments/assets/da50f8a9-27ba-4747-92e0-72a25e65175c\n\nLet's look more closely at the last example above - below is a short clip we'll bleep out some words from using the pipeline in this repo. (make sure to turn on audio - its off by default)\n\nhttps://github.com/neonwatty/bleep-that-shit/assets/16326421/fb8568fe-aba0-49e2-a563-642d658c0651\n\nNow the same clip with the words - \"treetz\", \"ice\", \"cream\", \"chocolate\", \"syrup\", and \"cookie\" - bleeped out\n\nhttps://github.com/neonwatty/bleep-that-shit/assets/16326421/63ebd7a0-46f6-4efd-80ea-20512ff427c0\n\n---\n\n## Using the App\n\nJust open the app in any modern browser — **no installation or setup required**.\n\n### Live Demo\n\nVisit the deployed app at [https://neonwatty.github.io/bleep-that-shit/](https://neonwatty.github.io/bleep-that-shit/) or run it locally.\n\n---\n\n## App Features\n\n### Main Workflow (`/bleep`)\n\n- Upload audio or video files\n- Select language and Whisper model\n- Transcribe to generate word-level timestamps\n- Enter words to censor with multiple matching modes (exact, partial, fuzzy)\n- Choose from different bleep sounds\n- Preview and download the censored result\n\n### Model Comparison (`/sampler`)\n\n- Compare transcription accuracy across different Whisper models\n- Test processing speeds\n- Find the best model for your needs\n\n---\n\n## Running Locally\n\n### Prerequisites\n\n- Node.js 18+\n- npm or yarn\n\n### Installation\n\n1. Clone the repository:\n\n   ```bash\n   git clone https://github.com/neonwatty/bleep-that-shit.git\n   cd bleep-that-shit\n   ```\n\n2. Install dependencies:\n\n   ```bash\n   npm install\n   ```\n\n3. Start the development server:\n\n   ```bash\n   npm run dev\n   ```\n\n4. Open [http://localhost:3000](http://localhost:3000) in your browser\n\n---\n\n## Available Scripts\n\n```bash\nnpm run dev          # Start development server\nnpm run build        # Build for production\nnpm run start        # Start production server\nnpm test            # Run Playwright tests\nnpm run test:ui     # Run tests with UI\n```\n\n---\n\n## Browser Requirements\n\n- Modern browser with WebAssembly support\n- Web Workers support\n- Sufficient RAM for model loading (varies by model size)\n\n---\n\n## Available Whisper Models\n\n- **Tiny** (39 MB): Fastest, good for quick processing\n- **Base** (74 MB): Better accuracy, still fast\n- **Small** (242 MB): Best accuracy, slower processing\n\nBoth English-only and multilingual variants are available.\n\n---\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n---\n\n## License\n\nThis project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details.\n\n---\n\n## Acknowledgments\n\n- [Transformers.js](https://github.com/xenova/transformers.js) for WebAssembly Whisper models\n- [FFmpeg.wasm](https://github.com/ffmpegwasm/ffmpeg.wasm) for media processing\n- [OpenAI Whisper](https://github.com/openai/whisper) for the original models\n\n---\n\n## Support\n\nFor issues and questions, please open an issue on [GitHub](https://github.com/neonwatty/bleep-that-shit/issues).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneonwatty%2Fbleep-that-shit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fneonwatty%2Fbleep-that-shit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneonwatty%2Fbleep-that-shit/lists"}