agentleFS
notquenotque/claude-code-toolkit/skills/content/image-to-video/SKILL.md

image-to-video

Skill444 starsChanged 9 days agoMITView on GitHub

FFmpeg-based video creation from image and audio.

  • Installs packages

We split this skill into the rules it gives an agent

3 rules. 0 are common, 0 are distinctive, and 3 are very specific to this project.

  • 0

    Common

    Most of the 11 edited versions we read keep these.

  • 0

    Distinctive

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Check FFmpeg: ffmpeg -version.

    line 43
  2. Very specific:

    Verify both input files exist with absolute paths and non-zero size.

    line 44
  3. Very specific:

    Use the user's output path or derive from audio filename (/same/dir/filename.mp4).

    line 60

“Common” is measured: kept by at least 6 in 10 of the 11 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Image to Video Skill

Combine a static image with an audio file to produce an MP4 via FFmpeg. Supports resolution presets, audio visualization overlays, and batch processing. For image generation, use image-gen.

Deep References

SignalLoadWhy
FFmpeg filter graphs for visualization modesreferences/ffmpeg-filters.mdScale/pad, showwaves, showspectrum, overlay filters

Phase 1: VALIDATE

  1. Check FFmpeg: ffmpeg -version. If missing, stop with install instructions.
  2. Verify both input files exist with absolute paths and non-zero size. Supported: PNG/JPG/JPEG/GIF/WEBP/BMP (image), MP3/WAV/M4A/OGG/FLAC (audio).
  3. Determine parameters from the user's request -- do not default to static when the user requested a visualization.
PresetDimensionsPlatform
1080p1920x1080YouTube HD (default)
720p1280x720Standard HD
square1080x1080Instagram, social
vertical1080x1920Stories, Reels, TikTok

Visualization modes (off unless requested): waveform, spectrum, cqt, bars.

Gate: FFmpeg installed, both files exist, parameters resolved.

Phase 2: PREPARE

Use the user's output path or derive from audio filename (/same/dir/filename.mp4). Verify directory is writable.

Phase 3: ENCODE

Defaults: libx264 preset medium, CRF 23, yuv420p, 192k AAC.

python3 $HOME/vexjoy-agent/skills/content/image-to-video/scripts/image_to_video.py \
  --image /path/to/image.png --audio /path/to/audio.mp3 \
  --output /path/to/output.mp4 --resolution 1080p --visualization static

Batch mode (matched pairs in workspace/input/):

python3 $HOME/vexjoy-agent/skills/content/image-to-video/scripts/image_to_video.py \
  --process-workspace --visualization waveform

Gate: Script exits 0.

Phase 4: VERIFY

FFmpeg can exit 0 but produce a corrupt file. Always probe:

ffprobe -v error -show_entries format=duration,size -show_entries stream=codec_name,width,height \
  -of default=noprint_wrappers=1 /path/to/output.mp4

Confirm video duration matches audio (within 1s). Report: file path, size, duration, resolution, visualization mode.

Error Handling

ErrorCauseSolution
FFmpeg not foundNot installedapt install ffmpeg or brew install ffmpeg
Image/audio not foundWrong or relative pathUse absolute paths; check with ls -la
FFmpeg filter errorsMinimal build lacks showwaves/showcqtInstall full FFmpeg; fall back to --visualization static
Cannot determine audio durationCorrupted audio fileTest with ffprobe; convert: ffmpeg -i input -acodec pcm_s16le output.wav

Download now (ZIP)

  • Other versions14 projects use a version of this.

    Word for word · 1

    1. notque/vexjoy-agent★ 444100% same

    Edited · 0

    None found.

    Wrote their own version · 13

    1. eachlabs/skills★ 46same name
    2. prime-skills/runcomfy-agent-skills★ 41same name
    3. meitu/meitu-skills★ 33same name
    4. genmedia-labs/skills★ 26same name
    5. PrunaAI/pruna-skills★ 20same name
    6. aiagentwithdhruv/skills★ 16same name
    7. runcomfy-com/skills★ 16same name
    8. agentspace-so/runcomfy-skills★ 4same name
    9. SamurAIGPT/muapi-claude-code★ 4same name
    10. 439436269-ctrl/video-pipeline-skills★ 1same name

    3 more not listed

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

  • Used alongsideProjects with it also use image-inpainting, flux-2-klein and 10 more.

    Other files people use alongside this one.

    Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
    • prime-skillsSkill

      image-inpainting

      Mask-driven image inpainting on RunComfy via the `runcomfy` CLI. Routes to Tongyi MAI Z-Image Turbo Inpainting (the dedicated inpainting endpoint with mask, strength, and control-scale) and to identity-preserving edit models (Nano Banana 2 Edit, GPT Image 2 Edit, FLUX Kontext Pro) when a mask isn't available and the region must be described instead. Use for object removal, watermark removal, region replacement, blemish cleanup, and any controlled local edit where a binary mask defines the target area. Triggers on "inpaint", "inpainting", "image inpaint", "remove from image", "fill region", "mask-driven edit", "remove watermark", "remove object", "patch the photo", "fill the hole", or any explicit ask to edit a specific masked region of a still.

      Also in 4 projects that use this

    • agentspace-soSkill

      flux-2-klein

      Generate images with Flux 2 Klein (Black Forest Labs' distilled fast variant of Flux 2) on RunComfy — bundled with the model's documented prompting patterns so the skill gets sharper output than naive prompting against the same model. Documents Flux 2 Klein's strengths (sub-second latency, multi-reference brand styling, declarative subject-first prompts), the step-count strategy (4–8 for fast iteration, ~25 for polish), the 9B vs 4B variant trade-off, and when to route to Flux 2 Pro / Seedream 5 / GPT Image 2 instead. Calls `runcomfy run blackforestlabs/flux-2-klein/9b/text-to-image` (or `/4b/`) through the local RunComfy CLI. Triggers on "flux 2 klein", "flux-2-klein", "flux klein", "BFL flux 2", or any explicit ask to generate with this model.

      Also in 4 projects that use this

    • agentspace-soSkill

      flux-kontext

      Edit images with Flux 1 Kontext Pro (Black Forest Labs' precise local image-edit model) on RunComfy — bundled with the model's documented prompting patterns so the skill gets sharper output than naive prompting against the same model. Documents Flux Kontext's strengths (single-reference precise local edits, strong prompt control, consistent high-fidelity outputs), the schema (single image + prompt), and when to route to Nano Banana Edit / GPT Image 2 edit / Flux 2 Klein instead. Calls `runcomfy run blackforestlabs/flux-1-kontext/pro/edit` through the local RunComfy CLI. Triggers on "flux kontext", "flux-kontext", "flux 1 kontext", "kontext", "BFL kontext", or any explicit ask to edit with this model.

      Also in 4 projects that use this

    • prime-skillsSkill

      ace-step

      Generate, inpaint, and outpaint music with ACE Step on RunComfy via the `runcomfy` CLI. ACE Step is StepFun-AI's open-weights music foundation model — tag-driven composition (genre, mood, instruments), multilingual lyrics with section markers, 5 s to 4 min stereo output, $0.0002–0.0003 per second (≈ 27× cheaper than ElevenLabs Music). Four endpoints: ACE Step text-to-audio (the default), ACE Step 1.5 text-to-audio (50+ language lyrics, refined structured-lyric handling), ACE Step audio-inpaint (regenerate a time range inside an existing track), ACE Step audio-outpaint (extend an existing track before or after). Triggers on "ace step", "ace-step", "acestep", "ACE music", "open music model", "cheap AI music", "inpaint audio", "audio inpaint", "extend music", "audio outpaint", "lengthen track", "music with tags", or any explicit ask to generate or edit music with ACE Step.

      Also in 3 projects that use this

    • +3 more from agentspace-so
    • +5 more from prime-skills
  • In this repository64 other files it gives its agents.

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.