Skip to content

htlin222/slides-to-video

Repository files navigation

GitHub stars Last commit License

Slides to Video Pipeline

Convert PDF slides into a narrated video with AI-generated speaker notes and text-to-speech audio.

Pipeline Overview

PDF → Images → Preliminary Notes → Speaker Notes → Audio → Video Clips → Final Video
Step Input Output Tool
1. images input.pdf images/slide*.png ImageMagick
2. preliminary images/ preliminary/slide*.md Claude
3. speaker-note preliminary/ speaker-note/slide*.md Claude
4. audio speaker-note/ audio/slide*.mp3 edge-tts
5. clips images/ + audio/ clips/slide*.mp4 ffmpeg
6. final clips/ final.mp4 ffmpeg

Requirements

Installation (macOS)

brew install imagemagick ffmpeg
uv tool install edge-tts
npm install -g @anthropic-ai/claude-code
cargo install mdbook  # optional, for book export

Usage

# Check all dependencies are installed
make setup

# Run full pipeline
make all PDF=your-slides.pdf

# Run with more parallel jobs
make all PDF=your-slides.pdf MAX_JOBS=5

# Run individual steps
make images PDF=your-slides.pdf
make preliminary
make speaker-note
make audio
make clips
make final

mdBook Export

Generate a static book website from your slides and preliminary notes using mdBook.

# Install mdbook (if not already installed)
cargo install mdbook

# Generate and build book to dist/
make makebook

The output in dist/ is ready to deploy to Netlify, GitHub Pages, or any static hosting.

Cleaning

make clean          # Clean speaker-note/, audio/, clips/, final.mp4
make clean-all      # Clean everything including images/ and preliminary/

License

MIT

About

Automated pipeline to convert PDF slides into narrated videos with Claude AI-generated speaker notes, text-to-speech audio, and video composition via ffmpeg.

Topics

Resources

License

Stars

2 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors