ttlequals0/MinusPod
MinusPod is a self-hosted server that removes ads before you ever hit play
What it solves
MinusPod is a self-hosted server that automatically removes advertisements from podcasts. It eliminates the need to manually skip ads by detecting and cutting them out of the audio before the user hits play, providing a clean, ad-free listening experience.
How it works
The system uses a multi-stage pipeline to identify and remove ads:
- Transcription: The audio is transcribed using Whisper (locally via GPU/CPU or via remote API).
- Detection: An LLM (such as Claude, Ollama, or OpenAI-compatible models) analyzes the transcript in sliding windows to identify ad segments.
- Refinement: The system employs audio-side signals (loudness analysis, VAD-gap detection, and audio cues like jingles) and a verification pass to refine the cuts.
- Processing: FFmpeg cuts the identified segments, and Flask serves the modified audio via a regenerated RSS feed.
- Learning: The system learns ad patterns from user corrections, creating a database of sponsors and patterns to catch repeat ads without needing to re-query the LLM.
Who it’s for
Podcast listeners who want an automated, self-hosted way to remove ads from their favorite shows, as well as users who prefer to have full control over their AI providers and data.
Highlights
- Flexible AI Integration: Supports a wide range of LLM providers (Anthropic, OpenRouter, Ollama) and transcription backends (faster-whisper, Groq, OpenAI).
- Pattern Learning: Learns from user corrections to identify repeat sponsors across episodes and networks.
- Advanced Audio Analysis: Uses loudness, DAI transitions, and per-feed audio cues to snap cuts to specific show markers.
- Podcasting 2.0 Support: Regenerates transcripts and chapters while maintaining value-for-value tags.
- Comprehensive Management: Includes a web UI with a waveform ad editor, cost analytics for token usage, and a full REST API.
Related
- Project
- Project
- Project
- Project
- Project