Flyenv Demo Video Post Production
Documentsflyenv-demo-video-post-productionFlyenv Demo Video Post Production is an Agent Skill for documents published in the xpf0000/FlyEnv repository on GitHub: a SKILL.md instruction file an AI agent can load to do this task.
Use when editing recorded FlyEnv screen demos into publishable videos, especially when a raw capture needs continuity-first speed ramping, a clean end cut, burned English subtitles, AI voiceover, thumbnail art, and YouTube or Bilibili upload assets.
How to use this skill
Bring this guide into your coding agent with a prompt tailored to the tool you use.
- Open your project in Codex.
- Copy and paste the prompt below.
- Review files and risks before approving any action.
Inspect the Agent Skill at https://github.com/xpf0000/FlyEnv/blob/HEAD/.codex/skills/flyenv-demo-video-post-production/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/flyenv-demo-video-post-production, but wait for my approval before writing files or running scripts.
Copying this prompt does not install or run the skill. Review third-party files before use.
FlyEnv Demo Video Post Production
Overview
Turn a raw FlyEnv screen recording into a publishable demo package without rebuilding the story from scratch. Favor continuity, speed changes, and targeted trims over aggressive recuts.
Workflow
- Inspect the source video first.
- Run
ffprobefor duration, resolution, frame rate, codec, and audio presence. - If there is no audio, write step captions and narration from the workflow itself. Do not pretend to transcribe speech.
- Run
- Review frames before editing.
- Sample the opening, several middle checkpoints, the browser walkthrough, and the final 30 to 60 seconds.
- Find the last good product frame before any blank transition, unrelated app, or mistake. End the cut there.
- Create a task workspace under
docs/task/<slug>/.- Keep the source untouched.
- Save the render script, subtitles, voiceover, verification frames, thumbnail, and upload notes in the same folder.
- Build a task-local render script.
- Structure it as: base edit -> subtitles -> title card and subtitle burn-in -> voiceover mix -> final mux -> upload assets.
- Reuse
/Users/x/.codex/skills/demo-video-pipeline/scripts/compose_demo_video.pyfor intro and subtitle overlays.
- Edit for continuity first.
- Keep the opening and browser walkthrough at
1.0x. - Use
1.25xto2.1xfor long terminal or waiting sections. - Hard-cut only obvious dead air or a broken tail.
- Keep the opening and browser walkthrough at
- Prefer neural English TTS.
- First choices:
en-US-BrianNeural,en-US-AndrewNeural,en-US-EmmaNeural,en-US-AvaNeural. - Start around
--rate=-6%and adjust only if the read feels rushed. - If
pipis blocked by PEP 668, create a task-local venv underdocs/task/<slug>/.venv. - Use macOS
sayonly as a fallback.
- First choices:
- Keep narration short and spoken.
- Use direct sentences that describe what is happening now.
- Remove abstract filler and “AI summary” phrasing.
- Separate video rebuilds from audio rebuilds.
- If the pacing and cut are already correct, regenerate only the narration and remux the final MP4.
- Do not re-encode the full video just to change the voice.
- Package the publishing assets.
- Use a real product frame for the thumbnail.
- Keep thumbnail copy short and large.
- Write a Markdown upload package with title, description, chapters, tags, and file list.
Project Defaults
- Export
1920x1080,30fps, H.264 video, AAC audio,+faststart. - Keep source recordings in place and write outputs into
docs/task/<slug>/. - Name artifacts consistently:
*_base_edited_1080p.mp4*_en_subtitled.mp4*_en_voiceover.wav*_en_final.mp4*_en_subtitles.srt*_youtube_thumbnail.pngyoutube_upload_package.md
- Use
ffmpeg,ffprobe, andmagickas the default toolchain.
What Worked For FlyEnv
- Preserve the full workflow and compress mainly with speed ramps.
- Downscale 4K screen recordings to a 1080p publishable master.
- Keep terminal-heavy steps faster and browser interaction slower.
- End on the working product page and cut before any unrelated screen.
- Switch from
sayto Edge neural TTS when the voice sounds too synthetic. - Add an audio-only rebuild path so voice improvements stay cheap.
Avoid
- Aggressive cuts that make the demo hard to follow.
- Leaving a broken tail after the final successful browser view.
- Re-encoding the whole video when only narration changed.
- Overlong thumbnail text blocks.
- Creating extra planning or review docs for straightforward post-production passes.
References
- Read references/retrospective.md for the concrete lessons from the July 2026 FlyEnv demo edit.
- If a task-specific render script already exists in the task folder, patch it instead of rewriting it.