get_lesson_slides
Automatically detect slide changes in lesson videos and capture one frame per slide, returning timestamps and images for note-taking.
Instructions
Auto-detect slide changes in a lesson video and return one frame per slide.
Args:
course_slug: from list_enrolled_courses.
lesson_slug: from list_lessons.
threshold: 0..1 scene-change sensitivity. 0.3 catches slide changes;
raise to 0.5+ to only cut on very distinct visuals.
max_frames: cap total frames returned. Prevents very long lectures
from swamping the response.
min_gap_seconds: skip candidates that fall within this many seconds
of the previously kept frame — suppresses near-duplicates from
small on-camera movements while the slide hasn't changed. 0
disables the dedup.
save_dir: if set, write each JPEG to this directory (created if
missing). Filenames are
"{course_slug}--{lesson_slug}--{index:03d}-{seconds}s.jpg".
Absolute saved paths are included in the JSON summary so
downstream tools can reference them.
include_images: default True. Set False to get only timestamps +
saved paths (structured data), skipping inline image content —
useful for building a chapter index without image tokens.
Returns a JSON summary block first (course/lesson/frame list with timestamps and saved paths), then per-frame caption + inline image unless include_images=False. Requires ffmpeg.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| save_dir | No | ||
| threshold | No | ||
| max_frames | No | ||
| course_slug | Yes | ||
| lesson_slug | Yes | ||
| include_images | No | ||
| min_gap_seconds | No |