Agent-JAE/default-skills/venice-video-generate/README.md
jae 19b25341bd
Some checks are pending
CI / build-check-test (push) Waiting to run
feat: add 11 Venice AI skills as bundled defaults
Skills included:
- venice-chat: Chat with Venice LLM models, vision, reasoning
- venice-chat-benchmark: Benchmark chat models with infographics
- venice-image-gen: Generate images via Venice API
- venice-list-image-models: List available image models
- venice-list-text-models: List available text models
- venice-list-video-models: List available video models
- venice-tts: Text-to-speech via Venice API
- venice-video-generate: Generate videos from text/images
- venice-video-queue: Queue video generation jobs
- venice-video-quote: Get video generation cost quotes
- venice-video-retrieve: Retrieve completed videos

All rebranded from Agent Zero paths to Agent JAE (~/.jae/agent/skills/).
Requires VENICE_API_KEY environment variable.
2026-03-23 18:46:23 +01:00

3.1 KiB

Venice Video Generate

Full-lifecycle video generation using Venice.ai. Combines queue, poll, retrieve, and save into a single operation with progress logging. This is the recommended approach for video generation.

Features

  • Single-call generation -- queue + poll + retrieve + save in one operation
  • Progress logging every 20 seconds with progress bars and ETAs
  • Text-to-video and image-to-video support
  • Auto-save to disk with configurable output paths
  • Timeout protection -- configurable max wait (default: 15 minutes)
  • Handles both JSON status responses and binary video data

Prerequisites

pip install requests
export VENICE_API_KEY="your_venice_api_key"

Usage

Basic text-to-video

python scripts/generate_video.py "A cat playing piano"

With options

python scripts/generate_video.py "Ocean waves at sunset" \
  --model kling-2.6-pro-text-to-video \
  --duration 10s \
  --resolution 1080p \
  --aspect-ratio 16:9

Image-to-video

python scripts/generate_video.py "Make this image come alive" \
  --image /path/to/image.png \
  --model wan-2.5-preview-image-to-video

Custom output

python scripts/generate_video.py "Dancing robot" --output ./my_video.mp4

Options

Option Short Default Description
prompt -- (required) Text description of the video
--model -m wan-2.5-preview-text-to-video Model ID
--duration -d 5s Duration (e.g., 5s, 10s)
--resolution -r 720p Resolution (e.g., 720p, 1080p)
--aspect-ratio -a 16:9 Aspect ratio (e.g., 16:9, 9:16, 1:1)
--audio -- off Enable audio generation
--no-audio -- -- Explicitly disable audio
--negative-prompt -n None What to avoid
--image -i None Input image for image-to-video
--output -o auto Output file path
--output-dir -- /root/venice_videos Output directory
--max-wait -- 900 Max wait seconds (15 min)
--quiet -q off Suppress progress output

Common Models

Text-to-Video

Model Quality Speed
wan-2.5-preview-text-to-video Good Fast (30-60s for 5s video)
kling-2.6-pro-text-to-video Higher Slower (60-120s)
veo3.1-full-text-to-video Excellent Slowest (90-180s)

Image-to-Video

Model Notes
wan-2.5-preview-image-to-video Fast, reliable
veo3.1-full-image-to-video Premium quality

Python Import

from generate_video import generate_video

result = generate_video(
    prompt="A beautiful sunset over mountains",
    model="wan-2.5-preview-text-to-video",
    duration="5s",
    verbose=True
)

if result.success:
    print(f"Video saved: {result.video_path}")
    print(f"Took: {result.elapsed_seconds:.1f}s")
else:
    print(f"Failed: {result.error}")

Environment Variables

Variable Required Description
VENICE_API_KEY Yes Venice.ai API key