Seedance 20 Video Generator — Create Cinematic AI Videos from Text or Images

Transform ideas into polished, cinematic video clips using seedance-20, ByteDance's high-performance video generation model. Whether you're starting from a text prompt or a reference image, seedance-20 delivers smooth motion, sharp detail, and consistent scene composition. Built for creators, marketers, and storytellers who need fast, high-quality video output without complex production pipelines.

0 0by peandrover
aivideo
## Getting Started

> Welcome to Seedance 20 — your direct line to ByteDance's cinematic AI video generator. Describe a scene, paste an image, or tell me the mood you're going for, and I'll generate a high-quality video clip for you right now.

**Try saying:**
- "Animate this image into a video"
- "Generate a cinematic nature clip"
- "Create a product showcase video"

### Automatic Setup

On first interaction, connect to the processing API before doing anything else. Show a brief status like "Setting things up...".

**Token**: If `NEMO_TOKEN` environment variable is already set, use it and skip to **Session** below.

**Free token**: Generate a UUID as client identifier, then POST to `https://mega-api-prod.nemovideo.ai/api/auth/anonymous-token` with header `X-Client-Id: <uuid>`. The response field `data.token` becomes your NEMO_TOKEN (100 credits, 7-day expiry).

**Session**: POST to `https://mega-api-prod.nemovideo.ai/api/tasks/me/with-session/nemo_agent` with Bearer auth and body `{"task_name":"project"}`. Save `session_id` from the response.

Confirm to the user you're connected and ready. Don't print tokens or raw JSON.

# Generate Stunning Videos in Seconds with Seedance 20

Seedance-20 is a state-of-the-art AI video generation model developed by ByteDance, designed to turn written descriptions and still images into fluid, high-resolution video clips. Whether you're visualizing a product concept, crafting a social media reel, or building a storyboard, seedance-20 handles the heavy lifting so you can focus on the creative vision.

Unlike older generation models that struggle with motion blur, inconsistent subjects, or unnatural transitions, seedance-20 produces videos with smooth temporal coherence — meaning objects move naturally and scenes flow the way a real camera would capture them. You can generate from pure text, use an image as a visual anchor, or combine both for precise control over the output.

This skill gives you direct access to seedance-20's capabilities in a conversational interface. Describe what you want, upload a reference image if needed, and receive a ready-to-use video clip. It's the fastest path from concept to content, no timeline editor or rendering queue required.

## Routing Text and Image Prompts

When you submit a request, Seedance 20 automatically detects whether you're providing a text prompt, a reference image, or both, and routes your input to the appropriate generation pipeline for cinematic output.

| User says... | Action | Skip SSE? |
|-------------|--------|----------|
| "export" / "导出" / "download" / "send me the video" | → §3.5 Export | ✅ |
| "credits" / "积分" / "balance" / "余额" | → §3.3 Credits | ✅ |
| "status" / "状态" / "show tracks" | → §3.4 State | ✅ |
| "upload" / "上传" / user sends file | → §3.2 Upload | ✅ |
| Everything else (generate, edit, add BGM…) | → §3.1 SSE | ❌ |

## Seedance 20 API Reference

Seedance 20 runs on a distributed cloud inference backend optimized for high-fidelity temporal consistency and motion coherence across frames. Video generation jobs are queued, rendered asynchronously, and returned as downloadable MP4 assets once processing completes.

Skill attribution — read from this file's YAML frontmatter at runtime:
- `X-Skill-Source`: `seedance-20`
- `X-Skill-Version`: from frontmatter `version`
- `X-Skill-Platform`: detect from install path (`~/.clawhub/` → `clawhub`, `~/.cursor/skills/` → `cursor`, else `unknown`)

**All requests** must include: `Authorization: Bearer <NEMO_TOKEN>`, `X-Skill-Source`, `X-Skill-Version`, `X-Skill-Platform`. Missing attribution headers will cause export to fail with 402.

**API base**: `https://mega-api-prod.nemovideo.ai`

**Create session**: POST `/api/tasks/me/with-session/nemo_agent` — body `{"task_name":"project","language":"<lang>"}` — returns `task_id`, `session_id`.

**Send message (SSE)**: POST `/run_sse` — body `{"app_name":"nemo_agent","user_id":"me","session_id":"<sid>","new_message":{"parts":[{"text":"<msg>"}]}}` with `Accept: text/event-stream`. Max timeout: 15 minutes.

**Upload**: POST `/api/upload-video/nemo_agent/me/<sid>` — file: multipart `-F "files=@/path"`, or URL: `{"urls":["<url>"],"source_type":"url"}`

**Credits**: GET `/api/credits/balance/simple` — returns `available`, `frozen`, `total`

**Session state**: GET `/api/state/nemo_agent/me/<sid>/latest` — key fields: `data.state.draft`, `data.state.video_infos`, `data.state.generated_media`

**Export** (free, no credits): POST `/api/render/proxy/lambda` — body `{"id":"render_<ts>","sessionId":"<sid>","draft":<json>,"output":{"format":"mp4","quality":"high"}}`. Poll GET `/api/render/proxy/lambda/<id>` every 30s until `status` = `completed`. Download URL at `output.url`.

Supported formats: mp4, mov, avi, webm, mkv, jpg, png, gif, webp, mp3, wav, m4a, aac.

### SSE Event Handling

| Event | Action |
|-------|--------|
| Text response | Apply GUI translation (§4), present to user |
| Tool call/result | Process internally, don't forward |
| `heartbeat` / empty `data:` | Keep waiting. Every 2 min: "⏳ Still working..." |
| Stream closes | Process final response |

~30% of editing operations return no text in the SSE stream. When this happens: poll session state to verify the edit was applied, then summarize changes to the user.

### Backend Response Translation

The backend assumes a GUI exists. Translate these into API actions:

| Backend says | You do |
|-------------|--------|
| "click [button]" / "点击" | Execute via API |
| "open [panel]" / "打开" | Query session state |
| "drag/drop" / "拖拽" | Send edit via SSE |
| "preview in timeline" | Show track summary |
| "Export button" / "导出" | Execute export workflow |

**Draft field mapping**: `t`=tracks, `tt`=track type (0=video, 1=audio, 7=text), `sg`=segments, `d`=duration(ms), `m`=metadata.

```
Timeline (3 tracks): 1. Video: city timelapse (0-10s) 2. BGM: Lo-fi (0-10s, 35%) 3. Title: "Urban Dreams" (0-3s)
```

### Error Handling

| Code | Meaning | Action |
|------|---------|--------|
| 0 | Success | Continue |
| 1001 | Bad/expired token | Re-auth via anonymous-token (tokens expire after 7 days) |
| 1002 | Session not found | New session §3.0 |
| 2001 | No credits | Anonymous: show registration URL with `?bind=<id>` (get `<id>` from create-session or state response when needed). Registered: "Top up credits in your account" |
| 4001 | Unsupported file | Show supported formats |
| 4002 | File too large | Suggest compress/trim |
| 400 | Missing X-Client-Id | Generate Client-Id and retry (see §1) |
| 402 | Free plan export blocked | Subscription tier issue, NOT credits. "Register or upgrade your plan to unlock export." |
| 429 | Rate limit (1 token/client/7 days) | Retry in 30s once |

## Common Workflows

The most popular workflow with seedance-20 starts with a detailed text prompt. Users describe the subject, environment, lighting, camera movement, and mood — the more specific, the better the output. For example, specifying 'handheld camera, golden hour, shallow depth of field' produces noticeably different results than a bare subject description.

A second common workflow is image-to-video generation. You upload a still image — a product photo, a portrait, a landscape shot — and seedance-20 animates it based on your direction. This is particularly effective for e-commerce brands who want to bring static assets to life without a full video shoot.

For iterative projects, many users run a quick draft generation first to validate the scene composition, then refine the prompt with more specific motion instructions or camera angles before generating the final version. Seedance-20's speed makes this back-and-forth practical and cost-effective.

## Use Cases

Seedance-20 is a strong fit for social media content creators who need a steady stream of short-form video clips. Platforms like Instagram Reels, TikTok, and YouTube Shorts reward frequent posting, and seedance-20 makes it possible to produce visually compelling content without a camera crew or editing suite.

Marketing and advertising teams use seedance-20 to rapidly prototype video concepts before committing to production budgets. A 5-second AI-generated clip can communicate a campaign idea to stakeholders far more effectively than a static mood board.

Game developers and concept artists use it to visualize environmental scenes, character animations, or cinematic cutscene ideas early in the design process. Educators and e-learning creators use seedance-20 to generate illustrative video segments that make abstract concepts more tangible for learners. The model's versatility across styles — realistic, stylized, abstract — means it adapts to a wide range of creative and professional contexts.