podly_pure_podcasts  by jdrbc

CLI tool for ad-blocking podcasts via ad segment removal

created 1 year ago
333 stars

Top 83.6% on sourcepulse

GitHubView on GitHub
Project Summary

Podly is an open-source tool designed to create ad-free podcast RSS feeds by removing advertisements from audio episodes. It targets podcast listeners seeking an uninterrupted experience and leverages AI for ad detection and removal, offering a significant benefit in content consumption.

How It Works

Podly processes podcast episodes by first downloading the audio, then transcribing it using OpenAI's Whisper model. Chat GPT is employed to identify ad segments within the transcript. Finally, these identified ad segments are removed from the audio, and an ad-free version of the podcast is delivered via a new RSS feed. This AI-driven approach automates a previously manual and time-consuming process.

Quick Start & Requirements

  • Install: pip install pipenv, pipenv install, python src/main.py
  • Prerequisites: ffmpeg, Python 3.11, OpenAI API key (or Groq API key). Local Whisper transcription requires sufficient local compute resources.
  • Setup: Configuration involves copying and editing config/config.yml.example.
  • Docs: Usage, Transcription Options, Docker Support

Highlighted Details

  • Supports multiple transcription backends: local Whisper (default), OpenAI hosted, and Groq hosted for flexibility and cost management.
  • Offers Docker support with automatic NVIDIA GPU detection for accelerated processing.
  • Provides options for remote setup with basic authentication and systemd service configuration for Ubuntu.

Maintenance & Community

The project is hosted on GitHub at jdrbc/podly_pure_podcasts. Contribution guidelines are provided, including development setup, running tests via scripts/ci.sh, and code style requirements (black, type hints).

Licensing & Compatibility

The repository does not explicitly state a license in the README. This requires clarification for commercial use or integration into closed-source projects.

Limitations & Caveats

Transcription, especially local Whisper, can be time-consuming (approx. 1 minute per 15 minutes of audio on an M3 MacBook). The effectiveness of ad detection relies on the accuracy of the AI models. The absence of a specified license is a significant caveat for adoption.

Health Check
Last commit

1 month ago

Responsiveness

1 day

Pull Requests (30d)
0
Issues (30d)
0
Star History
50 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.