Veo 3 Video Generation (Gemini API)
Use the bundled script to generate an MP4 from a text prompt.
Generate (text → video)
CODEBLOCK0
Generate a longer video by stitching segments
Veo commonly outputs ~8s clips per request. Use --segments to generate multiple clips and concatenate them with ffmpeg.
Important: This skill sends one prompt per segment (one Veo request per segment). Use --base-style to keep style consistent across segments.
CODEBLOCK1
Options:
- -
--base-style "...": prepended to every segment prompt (recommended). - INLINECODE3 (repeatable): provide one prompt per segment (overrides
--prompt). - INLINECODE5 (default): appends continuity instructions per segment (only when using
--prompt). - INLINECODE7 : uses the exact same prompt for each segment (only when using
--prompt). - INLINECODE9 : for segment >=2, extract previous segment last frame and pass it as
lastFrame for continuity. - INLINECODE11 : print
MEDIA: for each segment as it finishes (useful for progress). - INLINECODE13 : keep intermediate
*.segXX.mp4 files. - INLINECODE15 (repeatable): guide generation with product/style references.
Requirements
- -
GEMINI_API_KEY env var (or --api-key). - INLINECODE18 on PATH when using
--segments > 1.
Troubleshooting
- - 429/RESOURCE_EXHAUSTED: API key has no quota/billing for video.
- 503/UNAVAILABLE: model overloaded; retry later.
Rate Limits & Fallback
- - Veo 3.1 has per-minute quota — on 429, wait 60s and retry
- Fallback to Runway Gen4 Turbo when rate-limited (use skill-runway-video-gen)
- Key location: GEMINIAPIKEY env var (second key in openclaw.json)
Rate Limits & Fallback
- - Veo 3.1 has per-minute quota — on 429, wait 60s and retry
- Fallback to Runway Gen4 Turbo when rate-limited (use skill-runway-video-gen)
- Key location:
GEMINI_API_KEY env var
Veo 3 视频生成(Gemini API)
使用捆绑脚本从文本提示生成MP4文件。
生成(文本 → 视频)
bash
uv run {baseDir}/scripts/generate_video.py \
--prompt 特写镜头... \
--filename out.mp4 \
--model veo-3.1-generate-preview \
--aspect-ratio 9:16 \
--poll-seconds 10
通过拼接片段生成长视频
Veo通常每次请求输出约8秒的片段。使用--segments生成多个片段并通过ffmpeg拼接。
重要提示: 此技能为每个片段发送一个提示词(每个片段对应一个Veo请求)。使用--base-style保持各片段风格一致。
bash
uv run {baseDir}/scripts/generate_video.py \
--prompt 相同场景,风格一致... \
--filename out-24s.mp4 \
--model veo-3.1-generate-preview \
--aspect-ratio 9:16 \
--segments 3 \
--segment-style continuation
选项说明:
- - --base-style ...:在每个片段提示词前添加(推荐使用)。
- --segment-prompt ...(可重复):为每个片段单独提供提示词(覆盖--prompt)。
- --segment-style continuation(默认):为每个片段附加连续性指令(仅在使用--prompt时生效)。
- --segment-style same:每个片段使用完全相同的提示词(仅在使用--prompt时生效)。
- --use-last-frame:对于第2个及之后的片段,提取前一帧作为lastFrame参数以保证连续性。
- --emit-segment-media:每个片段完成时打印MEDIA:信息(用于进度追踪)。
- --keep-segments:保留中间生成的*.segXX.mp4文件。
- --reference-image path.jpg(可重复):使用产品或风格参考图引导生成。
前置要求
- - 设置GEMINIAPIKEY环境变量(或使用--api-key参数)。
- 使用--segments > 1时,需在PATH中配置ffmpeg。
故障排除
- - 429/RESOURCE_EXHAUSTED:API密钥无视频配额或未开通计费。
- 503/UNAVAILABLE:模型过载,请稍后重试。
速率限制与备用方案
- - Veo 3.1有每分钟配额限制——遇到429错误时,等待60秒后重试
- 速率受限时回退至Runway Gen4 Turbo(使用skill-runway-video-gen技能)
- 密钥位置:GEMINIAPIKEY环境变量(openclaw.json中的第二个密钥)