yt2doc  by shun-liang

CLI tool for transcribing online videos/podcasts to Markdown

created 11 months ago
348 stars

Top 80.9% on sourcepulse

GitHubView on GitHub
Project Summary

yt2doc is a command-line tool that transcribes YouTube videos and Apple Podcasts episodes into readable Markdown documents. It focuses on post-processing transcriptions to improve readability, offering features like topic segmentation and chaptering for unchaptered content, making it ideal for researchers, content creators, and anyone needing structured summaries of audio-visual material.

How It Works

yt2doc leverages the Whisper ASR model for initial transcription and optionally integrates with local LLM servers (like Ollama) for advanced post-processing. For unchaptered content, it uses LLMs to segment transcripts into logical topics and generate headings, enhancing readability beyond raw Whisper output. It also supports sentence and paragraph segmentation via the Segment Any Text (SaT) model.

Quick Start & Requirements

  • Install with pipx install yt2doc or uv tool install yt2doc.
  • Requires ffmpeg to be installed and available in the system's PATH.
  • Optional: Local LLM server (e.g., Ollama) for advanced segmentation and chaptering.
  • Official documentation: https://github.com/shun-liang/yt2doc

Highlighted Details

  • Fully local operation, minimizing external API calls.
  • Supports YouTube, Apple Podcasts, and Twitter audio/video sources.
  • Integrates with faster-whisper and optionally whisper.cpp for transcription.
  • LLM-based chaptering and topic segmentation for unchaptered content.
  • Options for timestamping paragraphs and adding tables of contents.

Maintenance & Community

  • Project maintained by shun-liang.
  • Docker image available on ghcr.io.

Licensing & Compatibility

  • License: MIT.
  • Compatible with commercial use and closed-source linking.

Limitations & Caveats

  • Known dependency issue with Python 3.13 on macOS, recommending Python 3.12 as a workaround.
  • Whisper.cpp integration is described as "hacky".
Health Check
Last commit

5 months ago

Responsiveness

1 day

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

Explore Similar Projects

Feedback? Help us improve.