Skip to content
Kehn-MarvPublic

About

Transform RSS podcasts feeds and YouTube videos into searchable, beautiful PDF eBooks using AI transcription with OpenAI Whisper

Topics

Resources

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Latest commit

Β 

History

1 Commit

Folders and files

Repository files navigation

🎧 Podlr - Transform Podcasts & YouTube to eBooks

Python License Platform AI Web UI

Convert podcasts and YouTube videos into beautifully formatted eBooks using AI transcription

Perfect for accessibility, learning, and reading on the go. Transform hours of audio content into searchable, portable PDF eBooks with professional formatting.

Podlr Screenshot

✨ Features

🧠 AI-Powered Transcription

  • OpenAI Whisper integration with multi-language support
  • Smart device detection - automatically uses GPU when available
  • Quality modes: Fast, Balanced, or Best Quality processing
  • Real-time progress tracking with system monitoring

🎯 Multi-Source Support

  • RSS Podcast Feeds - Any podcast with RSS feed
  • YouTube Videos - Single videos or entire playlists
  • YouTube Channels - Convert channel content
  • Batch Processing - Process multiple URLs from file

πŸ“š Beautiful eBook Generation

  • Professional PDF formatting with covers and chapters
  • Automatic metadata extraction (title, author, thumbnails)
  • Custom licensing and copyright information
  • Chapter organization with proper formatting

🌐 Modern Web Interface

  • One-command setup - Just run and go!
  • Real-time progress monitoring with live updates
  • Responsive design - Works on desktop and mobile
  • Drag & drop URL input with auto-detection

β™Ώ Accessibility First

  • Perfect for deaf/hard of hearing users
  • Reading-preferred content consumption
  • Searchable text format for easy navigation
  • Screen reader compatible PDF output

πŸ”’ Privacy & Performance

  • 100% local processing - No data sent to external servers
  • Parallel processing - Multi-threaded for speed
  • Smart resume - Continue interrupted conversions
  • System optimization - Automatic hardware detection

πŸš€ Quick Start

Prerequisites

  • Python 3.8+ (Download from python.org)
  • Node.js (Download from nodejs.org) - Required for YouTube downloads

One-Command Installation & Launch

# 1. Clone the repository
git clone https://github.com/Kehn-Marv/Podlr.git
cd Podlr

# 2. Start the web interface (handles everything automatically!)
cd web-ui
python start_server.py

That's it! πŸŽ‰ The web browser will automatically open to http://localhost:5000

The setup script automatically:

  • βœ… Creates virtual environment
  • βœ… Installs all Python dependencies
  • βœ… Downloads and configures FFmpeg
  • βœ… Starts the web server
  • βœ… Opens your browser

πŸ“– Usage Guide

Web Interface (Recommended)

  1. Open your browser to http://localhost:5000
  2. Paste your URL - RSS feed or YouTube link
  3. Configure options - Quality, language, range
  4. Start conversion - Watch real-time progress
  5. Download your eBook - Professional PDF ready!

Command Line Interface

# Convert a podcast RSS feed
python podlr.py "https://feeds.example.com/podcast.rss"

# Convert YouTube video/playlist
python podlr.py "https://youtube.com/watch?v=VIDEO_ID"

# Advanced options
python podlr.py "https://podcast.rss" \
  --start 1 --end 5 \
  --preference quality \
  --language auto \
  --workers 4

# Preview content before converting
python podlr.py --info "https://youtube.com/playlist?list=PLAYLIST_ID"

# Check system dependencies
python podlr.py --check

Batch Processing

Create a text file with URLs (one per line):

# batch_urls.txt
https://feeds.example.com/podcast1.rss
https://youtube.com/watch?v=VIDEO1
https://youtube.com/playlist?list=PLAYLIST1
python podlr.py --batch batch_urls.txt

βš™οΈ Configuration Options

Quality Settings

  • Fast ⚑ - Quick processing, basic accuracy
  • Balanced βš–οΈ - Good speed/quality balance (default)
  • Quality 🎯 - Best accuracy, slower processing

Language Modes

  • English Optimized πŸ‡ΊπŸ‡Έ - Faster for English content
  • Multilingual 🌍 - Supports 99+ languages

Advanced Options

  • Parallel Workers - Multi-threaded processing (1-8 workers)
  • Custom License - Add copyright/license text
  • Resume Support - Continue interrupted conversions
  • Range Selection - Process specific episodes/videos

πŸ› οΈ Technical Details

System Requirements

  • Python 3.8+ with pip
  • Node.js (for YouTube downloads)
  • 2GB+ RAM (4GB+ recommended)
  • Internet connection for downloads

Supported Formats

  • Input: RSS feeds, YouTube (videos/playlists/channels)
  • Output: PDF eBooks with embedded metadata
  • Audio: MP3, M4A, WebM (auto-converted)

AI Models

Podlr automatically selects the best Whisper model based on your hardware:

Model Parameters Memory Speed Quality
tiny 39M ~1GB 10x Minimal
base 74M ~1GB 7x Basic
small 244M ~2GB 4x Decent
medium 769M ~5GB 2x Good
large 1550M ~10GB 1x Best

πŸ“ Project Structure

Podlr/
β”œβ”€β”€ πŸ“„ podlr.py              # Main CLI application
β”œβ”€β”€ πŸ“„ requirements.txt      # Python dependencies
β”œβ”€β”€ πŸ“„ install.py           # Complete installation script
β”œβ”€β”€ πŸ“„ setup_ffmpeg.py      # FFmpeg auto-installer
β”œβ”€β”€ 🌐 web-ui/              # Web interface
β”‚   β”œβ”€β”€ πŸ“„ start_server.py  # One-command launcher
β”‚   β”œβ”€β”€ πŸ“„ api.py           # Flask backend API
β”‚   β”œβ”€β”€ πŸ“„ index.html       # Web interface
β”‚   β”œβ”€β”€ πŸ“„ script.js        # Frontend logic
β”‚   β”œβ”€β”€ πŸ“„ styles.css       # UI styling
β”‚   └── πŸ–ΌοΈ assets/          # Images and logos
β”œβ”€β”€ πŸ“ docs/                # Documentation
└── πŸ“ venv/                # Virtual environment (auto-created)

πŸ”§ Troubleshooting

Common Issues

"No JavaScript runtime found"

# Install Node.js from https://nodejs.org/
# Or use package manager:
# Windows: winget install OpenJS.NodeJS
# macOS: brew install node
# Ubuntu: sudo apt install nodejs npm

"FFmpeg not found"

# Run the FFmpeg installer
python setup_ffmpeg.py

"Permission denied" on Windows

# Run as Administrator for FFmpeg installation
# Right-click Command Prompt β†’ "Run as administrator"

Slow processing

  • Use --preference fast for speed
  • Reduce --workers if system struggles
  • Check available RAM and disk space

Getting Help

  1. Check dependencies: python podlr.py --check
  2. View logs in the web interface
  3. Check issues on GitHub
  4. Read documentation in the docs/ folder

πŸ—ΊοΈ Roadmap

πŸ”„ Next Update (v1.3.0)

  • Better error handling for RAM/PC specs detection
  • RSS.com support for podcast hosting platform
  • Conversion modal UI processing improvements
  • Enhanced PDF formatting with better styling
  • About documentation section in web UI
  • Demo video integration
  • Toast notification improvements
  • Legal notice display fixes
  • Parallel worker limits based on system specs
  • Automatic cleanup of processed folders
  • Diarization support for speaker identification
  • Separate eBook folders for better organization

πŸš€ Future Features

  • Multiple output formats (EPUB, MOBI)
  • Cloud storage integration (Google Drive, Dropbox)
  • Advanced PDF styling with themes
  • Audio chapter detection and splitting
  • Subtitle/caption extraction support
  • Mobile app for iOS/Android
  • Plugin system for extensibility

🀝 Contributing

We welcome contributions! Please see our Contributing Guide for details.

Development Setup

git clone https://github.com/Kehn-Marv/Podlr.git
cd Podlr
python -m venv venv
source venv/bin/activate  # or venv\Scripts\activate on Windows
pip install -r requirements.txt

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

  • OpenAI Whisper - State-of-the-art speech recognition
  • yt-dlp - Robust YouTube downloading
  • ReportLab - Professional PDF generation
  • Flask - Lightweight web framework
  • FFmpeg - Universal media processing

βš–οΈ Legal Notice

Important: This tool is for personal use and educational purposes. Please ensure you have the right to download and convert content. Respect copyright laws and content creators' rights. YouTube's Terms of Service may prohibit downloading videos.


Made with ❀️ for accessibility and learning

🌟 Star this repo β€’ πŸ› Report Bug β€’ πŸ’‘ Request Feature

About

Transform RSS podcasts feeds and YouTube videos into searchable, beautiful PDF eBooks using AI transcription with OpenAI Whisper

Topics

Resources

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages