Skip to content

Denlie-code/screen-recording-to-pdf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

screen-recording-to-pdf

Turn a screen recording (or any video) into a multi-page PDF. A Claude Code skill with two modes:

  • --capture-all — scroll-aware capture for continuous content (a scrolling chat-history recording, a long-page scroll). Captures every message (一条不差, no skips) by measuring the scroll and keeping a frame each half-screen, so adjacent pages always overlap.
  • --auto / manual (--scene-threshold, --max-frames, --fps) — key-frame extraction for demos, tutorials, and click-throughs (keeps only the moments that change).
video.mp4 --extract_frames.py--> frame_*.jpg --frames_to_pdf.py--> output.pdf

Install

pip install imageio-ffmpeg Pillow numpy img2pdf
# place this folder at  ~/.claude/skills/screen-recording-to-pdf/

No system ffmpeg needed (imageio-ffmpeg bundles one). Windows / macOS / Linux.

Quick start

# chat-history recording -> PDF (every message captured)
python scripts/extract_frames.py chat.mp4 --capture-all \
  | python scripts/frames_to_pdf.py --json - -o chat.pdf

# demo / tutorial -> PDF (key frames only)
python scripts/extract_frames.py demo.mp4 --auto \
  | python scripts/frames_to_pdf.py --json - -o demo.pdf

Full options (--overlap, --sample-fps, --scene-threshold, quality presets, A4 output, troubleshooting) are in SKILL.md.

License (please read)

This project uses a mixed license — see LICENSE:

  • Original work (scripts/frames_to_pdf.py; the --capture-all / --auto / pause-de-dup / ffmpeg-resolution additions in scripts/extract_frames.py; SKILL.md; this README.md) © 2026 WDenlie, licensed under the PolyForm Noncommercial License 1.0.0. Non-commercial use is free with attribution; commercial use requires a separate license — contact WDenlie via WeChat (ID: WDenlie).
  • Upstream-derived code — the core frame-extraction logic in scripts/extract_frames.py, plus references/video-frames-source.md and references/llm-image-specs.md — is adapted/copied from mugnimaestra/video-frames-skill and remains under the MIT License (commercial use of those portions is permitted by MIT and cannot be revoked).

Runtime dependencies are not bundled and are pip-installed by the user: imageio-ffmpeg (BSD-2-Clause), Pillow (PIL License), numpy (BSD-3-Clause), img2pdf (LGPL-3.0-or-later), and ffmpeg (GPL, invoked only as an external subprocess — never linked or redistributed). See references/THIRD-PARTY-LICENSES.md.

Not legal advice. Have counsel review before commercial use.

About

Claude Code skill: convert screen recordings & chat-history scrolls into PDFs. --capture-all captures every message (一条不差); --auto for key frames. ffmpeg + Pillow + img2pdf.

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages