Awesome-omni-skill video-commercial

Generate 30-second video commercials from a concept. Creates storyboard, generates scene images, adds narration via ElevenLabs, assembles final video. Use when asked to create commercials, promo videos, video ads, or short marketing videos.

install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/content-media/video-commercial" ~/.claude/skills/diegosouzapw-awesome-omni-skill-video-commercial && rm -rf "$T"
manifest: skills/content-media/video-commercial/SKILL.md
source content

Video Commercial Generator

Create short video commercials (~30 seconds) from a concept through a multi-phase pipeline.

Workflow

Phase 1: Concept → Storyboard

Parse the concept into 5-6 scenes. Create

storyboard.json
:

{
  "title": "Project Name",
  "concept": "Original concept text",
  "duration": 30,
  "scenes": [
    {
      "id": 1,
      "duration": 5,
      "visual": "Detailed image generation prompt",
      "motion": "zoom-in|zoom-out|pan-left|pan-right|static",
      "narration": "Voiceover text for this scene",
      "overlay": "Optional text overlay"
    }
  ]
}

Phase 2: Generate Images

For each scene, generate an image using available image tools (nano-banana-pro or openai-image-gen).

Save to:

scenes/scene-{id}.png
Save prompt metadata to:
scenes/scene-{id}.json

Phase 3: Generate Narration

Use ElevenLabs (sag skill) to generate voiceover from combined narration text.

Save to:

audio/narration.mp3

Phase 4: Create Video Clips

Use ffmpeg to create video clips from images with motion effects:

# Zoom in effect (5 seconds)
ffmpeg -loop 1 -i scene-01.png -vf "scale=8000:-1,zoompan=z='min(zoom+0.0015,1.5)':d=150:s=1920x1080" -t 5 -pix_fmt yuv420p clip-01.mp4

# Static with slight zoom
ffmpeg -loop 1 -i scene-01.png -vf "scale=2000:-1,zoompan=z='1.1':d=150:s=1920x1080" -t 5 -pix_fmt yuv420p clip-01.mp4

Phase 5: Assemble Final Video

  1. Concatenate clips
  2. Add narration audio
  3. Add background music (optional)
  4. Add text overlays
  5. Export final video
# Concat clips
ffmpeg -f concat -i clips.txt -c copy combined.mp4

# Add audio
ffmpeg -i combined.mp4 -i narration.mp3 -c:v copy -c:a aac -map 0:v -map 1:a final.mp4

Project Structure

projects/video-commercial/{project-slug}/
├── concept.md           # Original concept
├── storyboard.json      # Scene breakdown
├── scenes/
│   ├── scene-01.png     # Generated images
│   ├── scene-01.json    # Prompt + metadata
│   └── ...
├── audio/
│   ├── narration.mp3    # ElevenLabs voiceover
│   └── music.mp3        # Background (optional)
├── clips/
│   ├── clip-01.mp4      # Individual scene videos
│   └── ...
├── output/
│   └── final.mp4        # Assembled video
└── review.md            # Review notes + iterations

Review Process

After each phase, update

review.md
with:

  • What was generated
  • User feedback
  • Scenes to regenerate
  • Approved scenes (mark with ✓)

Allow regeneration of individual scenes without redoing entire project.

Commands Reference

CommandAction
new commercial "{concept}"
Create project + storyboard
show storyboard
Display current storyboard
generate images
Generate all scene images
regen scene {n}
Regenerate specific scene
preview
Show all scenes with status
narrate
Generate voiceover
render
Assemble final video
status
Show project progress

Notes

  • Projects stored in workspace:
    projects/video-commercial/
  • Image aspect ratio: 16:9 (1920x1080)
  • Default scene duration: 5 seconds
  • Narration voice: Configure in project or use default