Inspect and Safely Concatenate Local Clips
Inspect clip streams and create a concat plan and manifest. Copy compatible clips, or explicitly normalize mismatches and synthesize missing audio.
What it does
Inspect codec, profile, geometry, pixel format, frame-rate metadata, time base, audio parameters, stream order and codec extradata hashes. Generate a JSON plan and escaped ffconcat manifest. Default execution allows stream copy only for conservatively compatible H.264 and optional AAC.
How to use
Start with --dry-run. Remove it to save only the plan and manifest. Add --output joined.mp4 --execute to concatenate. Incompatible clips are blocked unless --normalize is explicit. Normalization scales with padding, sets square pixels and fixed fps, and produces H.264 plus 48 kHz stereo AAC, synthesizing silence for audio-less clips.
Requirements
Python 3.10 or newer and separately installed FFmpeg/ffprobe. No Python packages or binaries are bundled. FFmpeg must provide libx264 and AAC for reencoded exports.
Caveats
No shell, upload or URL downloading. Output files must be new. Normalization is lossy and needs temporary disk space. Only one video, at most one audio and no extra streams are accepted. Metadata matching is not proof of perfect packet timing; inspect joins. Arbitrary codecs are not accepted for copy mode. It does not download arbitrary YouTube URLs.
How to install
- Unzip the downloaded file (it contains a
video-concat-planner/folder withSKILL.md). - Copy the whole folder into your agent's skills folder.
- Claude:
~/.claude/skills/(per project:.claude/skills/) - Hermes Agent:
~/.hermes/skills/ - Codex:
~/.agents/skills// Cursor:~/.cursor/skills/ - Claude app (claude.ai): upload the ZIP in Customize → Skills
- Claude:
- Restart the agent and check that the skill appears in its skill list.
Seller
動画編集の準備から仕上がりの確認まで、毎日の作業を支援するスキルを制作しています。切り出し・字幕づくり・音声調整・文字起こしを、元の素材を残しながら進められるようにします。
10 published skills