screen-demo

Convert raw screen recordings into edited 1-3 minute product demo videos using ffmpeg and mlx_whisper.

Updated May 3, 2026
One-click install
npx skills add https://github.com/spikelab/multiplai-cc-mktplace --skill screen-demo-spikelab
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: screen-demo
Source: https://github.com/spikelab/multiplai-cc-mktplace/tree/main/plugins/multiplai-media/skills/screen-demo
Command: npx skills add https://github.com/spikelab/multiplai-cc-mktplace --skill screen-demo-spikelab

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires scenedetect, opencv-python-headless, tqdm, click, yt-dlp, mlx-whisper, and includes scripts (resource) components.

What problem does it solve? Turning a raw screen recording into a watchable product demo normally requires manual video editing: finding the interesting moments, cutting dead air, adding titles, music, and zooms. This Skill automates that pipeline locally, with no SaaS tools or API keys. ## Core Features & Use Cases - Automated prep analysis: Builds a 720p proxy, transcribes narration with multilingual mlx_whisper (via a macOS host over SSH), and detects silence, scene changes, black frames, and dead spans where nothing happens on screen. - EDL-based editing: The orchestrating agent authors a JSON edit decision list mapping your prose description ("hook in first 10s, money shot at 2:30") to timed segments with speed ramps, zooms, fades, title cards, and logos. - Deterministic rendering: ffmpeg composites the final 1080p video with a music bed (file, URL via yt-dlp, or synth fallback) that ducks under narration via sidechain compression. - Use Case: Record a 15-minute screencast of your app, then ask for a 90-second demo with a lo-fi music bed — the Skill transcribes, finds the dead spans, cuts around them, and renders the reel. ## Quick Start Ask the agent to make a 90-second demo video from your recording file, describing the hook, the money shot timestamp, the vibe, and optionally a music track URL.

Frequently Asked Questions about screen-demo

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I turn a screen recording into a product demo video?

Run the prep command on your recording to generate a transcript, cut candidates, and a dead-span table, then author an EDL JSON describing segments, speeds, and zooms, and render it with ffmpeg. The Skill automates this flow from a prose description of the desired cut.

What tools edit screencasts locally without SaaS or API keys?

This pipeline uses ffmpeg for proxy, compositing, and encoding, PySceneDetect for scene detection, and mlx_whisper for multilingual transcription. Music comes from local files, direct CDN URLs, or yt-dlp page extraction — no cloud services required.

Does mlx_whisper transcription work inside a Linux container?

No. MLX requires Apple Metal, so transcription runs exclusively on the macOS host and the container bridges to it over SSH using a key and bridge user. If the bridge is unreachable, prep fails loudly with a fix-it message rather than falling back.

Can the demo video include non-English narration?

Yes. Transcription always uses a multilingual whisper model (default mlx-community/whisper-medium-mlx), never an English-only .en model. Pass an ISO language code like 'it' or 'es', or omit it to auto-detect the spoken language.

Why does the rendered demo video look blurry?

Blurriness happens when the EDL source points at the 720p analysis proxy instead of the original recording. The render step validates this and refuses proxy paths, so set the EDL source to the original .mov or .mp4 file.

What are the limitations of this screen recording editor?

It does not burn in subtitles, does not support cursor zoom-on-click (that needs a macOS sidecar logger at record time), and cannot generate AI music in CPU-only Linux containers. Music must come from a file, URL, or the ffmpeg synth fallback.