Skip to main content

Transform video ideas into complete videos using AI agent teams

Project description

sip-videogen

CLI tool that transforms vague video ideas into complete videos using an AI agent team.

How It Works

User Idea → AI Agent Script Team → Reference Images → Video Clips → Final Video
  1. You provide a video idea (e.g., "A cat astronaut explores Mars")
  2. AI agents collaborate to write a script with scenes and shared visual elements
  3. Reference images are generated for visual consistency (characters, props, environments)
  4. Video clips are generated for each scene using Google VEO 3.1
  5. Clips are assembled into a final video with FFmpeg

Quick Start

# 1. Copy and fill in your API keys
cp .env.example .env

# 2. Run (installs everything automatically on first run)
./start.sh

That's it! The script handles Python environment setup and dependency installation.

Prerequisites

  • Python 3.11+ (brew install python@3.11 on macOS)
  • FFmpeg (brew install ffmpeg on macOS)

API Keys Required

Get these and add them to your .env file:

Key Where to get it
OPENAI_API_KEY OpenAI Platform
GEMINI_API_KEY Google AI Studio
GOOGLE_CLOUD_PROJECT Google Cloud Console
SIP_GCS_BUCKET_NAME Create via gsutil mb -l us-central1 gs://your-bucket

Google Cloud Setup (one-time)

gcloud auth login
gcloud auth application-default login
gcloud config set project YOUR_PROJECT
gcloud services enable aiplatform.googleapis.com storage.googleapis.com
gsutil mb -l us-central1 gs://YOUR_BUCKET_NAME

Usage

Interactive Menu

sipvid

This launches an interactive menu with arrow-key navigation. Use ↑/↓ to navigate and Enter to select.

Direct Commands

# Generate a video
sipvid generate "A cat astronaut explores Mars"

# Regenerate videos from an existing run (reuse saved script + images)
sipvid resume output/sip_20251210_123855_e9a845e4

# Generate with specific number of scenes
sipvid generate "Epic space battle" --scenes 5

# Dry run (script only, no video generation)
sipvid generate "Underwater adventure" --dry-run

# Skip cost confirmation
sipvid generate "Robot dance party" --yes

# Check configuration status
sipvid status

Architecture

The tool uses a hub-and-spoke agent pattern:

  • Showrunner (orchestrator) - Coordinates the script development process
    • Screenwriter - Creates scene breakdown with narrative arc
    • Production Designer - Identifies shared visual elements
    • Continuity Supervisor - Validates consistency and optimizes prompts

Seamless Scene Flow

Video clips are generated in parallel for speed, but the system ensures smooth transitions between clips:

  • VEO Prompt Context: Each clip receives position-aware instructions (first/middle/last scene) to avoid awkward pauses at clip boundaries
  • Agent Guidelines: Screenwriter and Continuity Supervisor are instructed to create scenes that flow seamlessly:
    • First scene: May open naturally, must end with action in progress
    • Middle scenes: Must begin AND end mid-action (no pauses at either end)
    • Last scene: Must begin mid-action, may conclude naturally

This prevents the "breathing space" effect where assembled clips have noticeable gaps between scenes.

Development

# Run tests
python -m pytest

# Run specific test
python -m pytest tests/test_models.py -v

# Lint and format
ruff check .
ruff format .

# Type check
mypy src/

Cost Estimation

Before generating videos, the tool displays estimated costs:

  • Gemini image generation: ~$0.13-0.24 per image
  • VEO video generation: Check current Vertex AI pricing

Use --yes to skip the cost confirmation prompt.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sip_videogen-0.1.0.tar.gz (119.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sip_videogen-0.1.0-py3-none-any.whl (112.2 kB view details)

Uploaded Python 3

File details

Details for the file sip_videogen-0.1.0.tar.gz.

File metadata

  • Download URL: sip_videogen-0.1.0.tar.gz
  • Upload date:
  • Size: 119.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for sip_videogen-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b64a407cf0252a5aa74e70e32ada1617f94b459e0c810f63ff807d75ed59e802
MD5 400c67371bbe633840486ec97fc84954
BLAKE2b-256 25febc81736e2c01428c516f80d53a0db0b713bdd0be88aa769a7946b4431453

See more details on using hashes here.

File details

Details for the file sip_videogen-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: sip_videogen-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 112.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for sip_videogen-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 173b81f38c4103d1ddcc0d8e9b97bac5db8cc5f9b9287b985e240a6dbaa40718
MD5 dc6d252f2a1dc48eb12c9c4a3f6c80c9
BLAKE2b-256 ef5c11b7530e097ee90fb75628cd1eeaaa26118da68f74a4625f2e85ffff48d6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page