mcpField
J
jimeng-api-video-gen

jimeng-api-video-gen

github.com/wvlvikCreative & media1481 installsUpdated 22w ago
Repository

About jimeng-api-video-gen

A skill for generating videos from text prompts or input images through Volcengine's Jimeng Video 3.0 Pro API. It supports multiple resolutions and modes, with configurable duration, frame rate, and output path.

Key features

  1. 01Text-to-video and image-to-video generation
  2. 02720P, 1080P, and Pro modes
  3. 03Set duration, frame rate, and random seed
  4. 04Submit generation tasks from the CLI
  5. 05Download videos to a chosen path

Use cases

  1. 01Create short videos from text prompts
  2. 02Turn an input image into a video clip
  3. 03Generate video using first and last images
  4. 04Set frame rate and save the resulting MP4

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/wvlvik/toy-skills --skill jimeng-api-video-gen

After installing, type/jimeng-api-video-genin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

.antigravityrules
.cursorrules
.opencode-rules
package.json
README.md
scripts/
generate_video.py
volcengine_signer.py

Details

From the project README

Jimeng API Video Generation

Generate high-quality AI videos using Volcengine's Jimeng Video 3.0 Pro API with text prompts or input images.

Configure Environment Variables

Get Access Key/Secret Key

# ~/.zshrc or ~/.zshenv
export VOLC_ACCESSKEY="your_access_key_id"
export VOLC_SECRETKEY="your_secret_access_key"

Output Behavior (Important)

After video generation succeeds, you MUST display the video directly to the user!

When generation completes, output in the following format:

```markdown Generated Video:

Download Video

Generation Info:

  • Prompt: [User's original prompt]
  • Duration: [Video length in seconds]
  • Mode: [Generation mode used]
  • FPS: [Frames per second]
  • Save Path: [Local file path, if applicable] ```
Example Output

```markdown Generated Video:

Download Video

Generation Info:

  • Prompt: A golden retriever running through a field of sunflowers, warm afternoon sunlight
  • Duration: 5 seconds
  • Mode: t2v_720p
  • FPS: 24
  • Save Path: /generated_videos/dog_sunflowers.mp4

## API Configuration

| Parameter | Value | Description |
|-----------|-------|-------------|
| Endpoint | \`https://visual.volcengineapi.com\` | API base URL |
| Submit Action | \`CVSync2AsyncSubmitTask\` | Submit async generation task |
| Query Action | \`CVSync2AsyncGetResult\` | Query task result |
| Version | \`2022-08-31\` | API version |
| Service | \`cv\` | Service name for signing |
| Region | \`cn-north-1\` | Region for signing |

## Generation Modes

### Pro Version (1080P HD)

| Mode | req_key | Description |
|------|---------|-------------|
| `ti2v_pro` | `jimeng_ti2v_v30_pro` | Text-to-video + Image-to-video (first frame) Pro |

### 1080P Version

| Mode | req_key | Description |
|------|---------|-------------|
| `t2v_1080p` | `jimeng_t2v_v30_1080p` | Text-to-video 1080P |
| `i2v_first_1080p` | `jimeng_i2v_first_v30_1080` | Image-to-video (first frame) 1080P |
| `i2v_first_tail_1080p` | `jimeng_i2v_first_tail_v30_1080` | Image-to-video (first & last frame) 1080P |

### 720P Version

| Mode | req_key | Description |
|------|---------|-------------|
| `t2v_720p` | `jimeng_t2v_v30` | Text-to-video 720P |
| `i2v_first_720p` | `jimeng_i2v_first_v30` | Image-to-video (first frame) 720P |
| `i2v_first_tail_720p` | `jimeng_i2v_first_tail_v30` | Image-to-video (first & last frame) 720P |
| `i2v_recamera_720p` | `jimeng_i2v_recamera_v30` | Image-to-video (camera movement) 720P |

## Command-Line Options

\`\`\`
scripts/generate_video.py PROMPT [OPTIONS]

Arguments:
  PROMPT              Text prompt for video generation (required)

Options:
  --mode MODE         Generation mode (default: t2v_720p)
                      Pro: ti2v_pro
                      1080P: t2v_1080p, i2v_first_1080p, i2v_first_tail_1080p
                      720P: t2v_720p, i2v_first_720p, i2v_first_tail_720p, i2v_recamera_720p
  --duration SECS     Video duration: 4, 5, 6, 8, 10 (default: 5)
  --fps FPS           Frames per second: 24, 25, 30 (default: 24)
  --image URL         Input image URL for image-to-video (first frame)
  --tail-image URL    Tail image URL for first & last frame mode
  --seed INT          Random seed for reproducibility
  --output PATH       Download video to file
  --json              Output raw JSON response

Environment Variables:
  VOLC_ACCESSKEY           Access Key ID (required)
  VOLC_SECRETKEY           Secret Access Key (required)
  JIMENG_VIDEO_API_URL     API endpoint (default: https://visual.volcengineapi.com)
  JIMENG_VIDEO_API_TIMEOUT Request timeout seconds (default: 300)
  JIMENG_VIDEO_POLL_INTERVAL Polling interval seconds (default: 5)
  JIMENG_VIDEO_MAX_POLL_ATTEMPTS Max polling attempts (default: 120)
\`\`\`

## Video Specifications

### Duration Options

| Duration | Use Case |
|----------|----------|
| 4s | Quick clips, social media |
| 5s | Default, general purpose |
| 6s | Short scenes |
| 8s | Medium-length content |
| 10s | Longer narratives |

### FPS Options

| FPS | Use Case |
|-----|----------|
| 24 | Cinematic look (default) |
| 25 | PAL video standard |
| 30 | Smooth motion, NTSC standard |

## Authentication

This skill uses Volcengine IAM v4 signature authentication (HMAC-SHA256). The signing process:

1. Build canonical request with headers: \`content-type;host;x-content-sha256;x-date\`
2. Calculate SHA256 hash of canonical request
3. Derive signing key: secret_key → date → region → service → "request"
4. Sign the string-to-sign with derived key
5. Add \`Authorization\` header to request

Reference: [HTTP请求示例](https://www.volcengine.com/docs/6444/1390583)

## Error Codes

| Code | Message | Description |
|------|---------|-------------|
| 10000 | Success | Request successful |
| 50411 | Pre Img Risk Not Pass | Input image failed content check |
| 50511 | Post Video Risk Not Pass | Output video failed content check |
| 50412 | Text Risk Not Pass | Input text failed content check |
| 50429 | Request Has Reached API Limit | Rate limit exceeded, retry later |
| 50500 | Internal Error | Server error |
| timeout | Request timeout | Increase JIMENG_VIDEO_API_TIMEOUT |

## Input/Output Limits

**Input Images (for image-to-video):**
- Format: JPEG, PNG only
- Max size: 15MB per image
- Max resolution: 4096×4096

**Output:**
- Format: MP4
- URL validity: 24 hours
- Generation time: 2-10 minutes depending on duration and mode

## Reference Documentation

- [Jimeng Video 3.0 Pro API Documentation](https://www.volcengine.com/docs/85621/1777001)
- [Jimeng Video 3.0 720P API](https://www.volcengine.com/docs/85621/1792710)
- [Jimeng Video 3.0 1080P API](https://www.volcengine.com/docs/85621/1792711)
- [HTTP Request Example](https://www.volcengine.com/docs/6444/1390583)
- [Volcengine Console](https://console.volcengine.com)
- [API Key Management](https://console.volcengine.com/iam/key_manage/)

Comments

Markdown supported