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.
140 lines
4 KiB
Markdown
140 lines
4 KiB
Markdown
---
|
|
name: "venice-video-generate"
|
|
description: "Generate complete video from prompt to saved file in single operation. Handles queue, poll, retrieve, save with progress logging."
|
|
version: "1.0.0"
|
|
author: "Agent JAE"
|
|
tags:
|
|
- venice
|
|
- api
|
|
- video
|
|
- generation
|
|
- complete
|
|
- text-to-video
|
|
- image-to-video
|
|
trigger_patterns:
|
|
- "generate video"
|
|
- "create video"
|
|
- "make video"
|
|
- "video from prompt"
|
|
- "text to video"
|
|
- "image to video"
|
|
---
|
|
|
|
# Venice Video Generate (Full Lifecycle)
|
|
|
|
Generate complete video from prompt to saved file in a single operation.
|
|
|
|
## When to Use
|
|
|
|
Use this skill when you need to:
|
|
- Generate video from text prompt (text-to-video)
|
|
- Generate video from image (image-to-video)
|
|
- Complete video generation with automatic polling and saving
|
|
|
|
**This is the recommended approach** - it combines queue + poll + retrieve + save into one call.
|
|
|
|
## Usage
|
|
|
|
### Quick Start (Text-to-Video)
|
|
```bash
|
|
python ~/.jae/agent/skills/venice-video-generate/scripts/generate_video.py "A cat playing piano"
|
|
```
|
|
|
|
### With Options
|
|
```bash
|
|
python ~/.jae/agent/skills/venice-video-generate/scripts/generate_video.py "Ocean waves at sunset" \
|
|
--model kling-2.6-pro-text-to-video \
|
|
--duration 10s \
|
|
--resolution 1080p
|
|
```
|
|
|
|
### Image-to-Video
|
|
```bash
|
|
python ~/.jae/agent/skills/venice-video-generate/scripts/generate_video.py "Make this image come alive" \
|
|
--image /path/to/image.png \
|
|
--model wan-2.5-preview-image-to-video
|
|
```
|
|
|
|
## Progress Logging (Every 20 Seconds)
|
|
|
|
```
|
|
[14:32:15] START: Queueing video generation with model: wan-2.5-preview-text-to-video
|
|
[14:32:15] CONFIG: duration=5s, resolution=720p, aspect_ratio=16:9
|
|
[14:32:16] QUEUED: queue_id=abc123-def456
|
|
[14:32:36] PROGRESS: 20s elapsed | [====----------------] 25% | ETA: 45s | status: processing
|
|
[14:32:56] PROGRESS: 40s elapsed | [==========----------] 55% | ETA: 25s | status: processing
|
|
[14:33:16] PROGRESS: 60s elapsed | [================----] 85% | ETA: 8s | status: processing
|
|
[14:33:21] COMPLETE: Video saved to /root/venice_videos/video_20260131_143321_abc123.mp4
|
|
```
|
|
|
|
## Result Output
|
|
|
|
```
|
|
======================================================================
|
|
RESULT: SUCCESS
|
|
VIDEO_PATH: /root/venice_videos/video_20260131_143321_abc123.mp4
|
|
ELAPSED_SECONDS: 65.3
|
|
QUEUE_ID: abc123-def456-...
|
|
MODEL: wan-2.5-preview-text-to-video
|
|
======================================================================
|
|
```
|
|
|
|
## Common Options
|
|
|
|
| Option | Default | Description |
|
|
|--------|---------|-------------|
|
|
| --model, -m | wan-2.5-preview-text-to-video | Venice model ID |
|
|
| --duration, -d | 5s | Video duration (5s, 10s, etc.) |
|
|
| --resolution, -r | 720p | Video resolution |
|
|
| --aspect-ratio, -a | 16:9 | Aspect ratio (16:9, 9:16, 1:1) |
|
|
| --audio | off | Enable audio generation |
|
|
| --image, -i | none | Input image (for image-to-video) |
|
|
| --output, -o | auto | Custom output path |
|
|
| --max-wait | 900 | Max wait seconds (15 min) |
|
|
|
|
## Model Selection
|
|
|
|
### Text-to-Video
|
|
- `wan-2.5-preview-text-to-video` - Default, fast, good quality
|
|
- `kling-2.6-pro-text-to-video` - Higher quality, slower
|
|
- `veo3.1-full-text-to-video` - Google Veo, excellent but expensive
|
|
|
|
### Image-to-Video
|
|
- `wan-2.5-preview-image-to-video` - Fast, reliable
|
|
- `veo3.1-full-image-to-video` - Premium quality
|
|
|
|
## Expected Generation Times
|
|
|
|
| Model Type | 5s Video | 10s Video |
|
|
|------------|----------|----------|
|
|
| Wan 2.5 | 30-60s | 60-120s |
|
|
| Kling 2.6 Pro | 60-120s | 120-240s |
|
|
| Veo 3.1 | 90-180s | 180-360s |
|
|
|
|
## Python Import
|
|
|
|
```python
|
|
import sys
|
|
sys.path.insert(0, '~/.jae/agent/skills/venice-video-generate/scripts')
|
|
from generate_video import generate_video, GenerationResult
|
|
|
|
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}")
|
|
else:
|
|
print(f"Failed: {result.error}")
|
|
```
|
|
|
|
## Default Output Directory
|
|
|
|
`/root/venice_videos/` (auto-created)
|
|
|
|
## Requirements
|
|
|
|
- `VENICE_API_KEY` environment variable
|