关于 Nano Banana Video Generation
Nano Banana Video Generation 是通过 nano-banana CLI 使用 Google Veo 3.1 模型生成视频的技能,面向视频创作者。它可从文本生成视频,也能将现有图片制作成动画,并提供时长、画幅、分辨率和音频选项。
主要功能
- 01根据文本提示生成视频
- 02将图片制作成动画
- 03选择 Veo 模型
- 04设置时长、画幅与分辨率
- 05控制音频生成
适用场景
- 01制作带指定镜头运动的短片
- 02为静态肖像添加动作
- 03快速测试视频提示词
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ the-focus-ai/ nano-banana-cli --skill nano-banana-video-generation安装后在 Claude Code 中输入/nano-banana-video-generation确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
prompting-guide.mdexamples/dialogue-and-audio.mdimage-to-video.mdjson-prompting.mdcinematic-shots.mdscene-extensions.md详细介绍
Nano Banana 视频生成
使用 nano-banana CLI 通过 Google Veo 3.1 模型生成视频。
前提条件
- 必须设置
GEMINI_API_KEY环境变量 - 通过
npx @the-focus-ai/nano-banana安装 CLI
快速参考
# Generate a video from text
nano-banana --video "A sunset over mountains, slow dolly-in, cinematic lighting"
# Animate an existing image
nano-banana --video "The character slowly turns and smiles" --file portrait.png
# Cost-optimized development mode
nano-banana --video "Quick test scene" --video-fast --no-audio --resolution 720p
# Specify output path
nano-banana --video "A cat playing" --output cat-video.mp4
# Full control over settings
nano-banana --video "Dramatic reveal scene" \
--duration 8 --aspect 16:9 --resolution 1080p --seed 42
了解视频请求
生成前,请明确以下视频相关要素:
- 核心场景:主要动作或主体是什么?
- 摄像机运动:静止、推轨、摇摄、跟拍还是升降?
- 风格:电影感、纪录片、商业广告还是休闲风格?
- 音频:对话?音效?环境音?音乐?
- 时长:4、6 还是 8 秒?
- 方向:横屏(16:9)还是竖屏(9:16)?
视频提示词的五部分公式
提示词应包含以下要素:
[Camera Movement] + [Subject] + [Action] + [Environment] + [Audio/Style]
示例——较弱的提示词:
"a person walking"
示例——较强的提示词:
"Slow dolly-in shot. A woman in her 30s, shoulder-length wavy black hair,
green jacket, walks confidently through a sunlit park. Golden hour lighting,
warm color grading. Ambient sounds: birds chirping, distant traffic.
Cinematic, aspirational mood. No subtitles, no text overlay."
工作流
第 1 步:编写提示词
参阅 prompting-guide.md,获取全面的指导。
关键原则:
- 从摄像机运动开始(推轨、摇摄、静止、跟拍)
- 详细描述主体(外貌、服装、表情)
- 指定动作并加入时间提示
- 描述灯光和环境
- 添加音频设计(对话、音效、环境音)
- 始终以:“No subtitles, no text overlay, no captions”结尾
第 2 步:考虑成本
视频生成的成本远高于图像:
| 模型 | 每秒成本 | 8 秒视频 |
|---|---|---|
veo-3.1-generate-001 | $0.40 | $3.20 |
veo-3.1-fast-generate-001 | $0.15 | $1.20 |
开发工作流:
- 使用
--video-fast --no-audio迭代(成本最低) - 使用
--video-fast测试(需要时再添加音频) - 使用默认模型进行最终渲染(高品质)
第 3 步:生成
nano-banana --video "your detailed prompt here"
生成需要 2-4 分钟。进度会显示在终端中。
第 4 步:迭代
如果结果不理想:
- 优化摄像机运动——描述得更明确(例如,“在 8 秒内缓慢向前推轨”)
- 添加负向指引——描述需要避免的内容
- 简化——每个片段聚焦一个主要动作
- 尝试不同的时长——对于快速动作,4 秒或 6 秒可能效果更好
命令
文本生成视频
nano-banana --video "<prompt>"
图像生成视频(动画)
nano-banana --video "<motion description>" --file <input-image>
运动描述应说明图像如何动起来:
- “角色缓缓转头并微笑”
- “场景因微风的轻柔吹拂而焕发生机”
- “拉远镜头,展现完整的风景”
选项
| 选项 | 描述 | 默认值 |
|---|---|---|
--video | 启用视频模式 | (必需) |
--video-model <name> | 使用的 Veo 模型 | veo-3.1-generate-001 |
--video-fast | 使用快速/低成本模型 | (高端模型) |
--duration <sec> | 4、6 或 8 秒 | 8 |
--aspect <ratio> | 16:9 或 9:16 | 16:9 |
--resolution <res> | 720p、1080p 或 4K | 1080p |
--audio | 生成音频 | (已启用) |
--no-audio | 禁用音频 | - |
--seed <number> | 确保可复现的种子 | (随机) |
--output <file> | 输出路径 | output/video-.mp4 |
--file <image> | 要制作动画的输入图像 | - |
摄像机运动参考
使用这些术语来精准控制摄像机:
| 运动 | 描述 | 示例提示词 |
|---|---|---|
| Static | 无运动 | "三脚架固定镜头。咖啡杯冒着热气……" |
| Pan | 水平旋转 | "缓慢向左摇摄,扫过城市天际线……" |
| Tilt | 垂直旋转 | "从脸部向下俯拍至双手……" |
| Dolly In | 摄像机靠近 | "缓慢向前推轨,从中景推至特写……" |
| Dolly Out | 摄像机远离 | "向后拉轨,展现辽阔的风景……" |
| Tracking | 与主体平行移动 | "跟踪镜头,跟随角色行走……" |
| Crane | 垂直扫动 | "摇臂镜头从地面高度向上升起……" |
| Handheld | 逼真的抖动 | "手持摄像机,纪录片风格……" |
重要提示:每个镜头只使用一种主要运动。不要组合多种运动。
对白格式
口语对白请使用冒号格式:
Character description says: "Exact dialogue here."
示例:
"A friendly young woman, excited and cheerful, says: 'Welcome to our store!'
Standing in bright retail environment. Natural lip-sync. No subtitles."
指南:
- 8 秒的对白控制在 6-12 个词
- 描述说话者的语气和情绪
- 始终添加“No subtitles, no text overlay”
音频设计
按层次组织音频:
- 对白(最高优先级)——始终清晰
- 音效——具体、带时间点的动作
- 环境音——最多 3-5 个背景元素
- 音乐——优先级最低,“在对白下方渐弱”
示例:
"Sound effects: Door closing at 2-second mark, footsteps on wood.
Ambient sounds: Quiet office hum, distant typing.
Background music: Soft jazz, low volume, ducks under dialogue."
最佳实践
获得更好的效果
- 将重要信息前置——先写摄像机、主体和动作
- 使用电影术语——“35mm 镜头”“浅景深”“黄金时段”
- 具体描述光线——“左侧柔和的窗光”,而不只是“光线很好”
- 描述氛围——“亲密”“宏大”“悬疑”“振奋人心”
- 加入负面指导——说明需要避免的内容
图生视频
- 匹配图像——描述符合图像内容的运动
- 从细微动作开始——小幅运动比剧烈变化效果更好
- 保持光线一致——不要描述与图像不一致的光线变化
保持多个镜头的一致性
创建多个相关视频时:
- 创建角色描述并准确复用
- 保持光线风格一致
- 使用同一类摄像机运动风格
- 使用
--seed获得更可复现的结果
故障排除
“视频生成超时”
- 生成可能需要 2-4 分钟
- 如果持续超时,请尝试更简单的提示词
- 使用
--video-fast加快生成
质量差或内容不正确
- 添加更具体的描述
- 加入负面指导
- 尝试使用高级模型,而非快速模型
视频中出现字幕
- 始终在提示词中加入“No subtitles, no text overlay, no captions”
- Veo 使用带字幕的视频进行训练,因此往往会添加字幕
音频与视频不匹配
- 更具体地说明声音出现的时间
- 使用“Sound effect: X at Y-second mark”
- 简化音频层次(减少元素)
安全过滤器拒绝请求
- 避免暴力、武器和露骨内容
- 改写有歧义的术语
- 尝试更通用的描述
成本优化
# Development (cheapest): ~$1.20 per video
nano-banana --video "test prompt" --video-fast --no-audio --resolution 720p
# Testing with audio: ~$1.20 per video
nano-banana --video "test prompt" --video-fast
# Production quality: ~$3.20 per video
nano-banana --video "final prompt" --resolution 1080p
提示词示例
完整的提示词示例请参阅 examples/ 目录:
- cinematic-shots.md - 摄像机运动
- dialogue-and-audio.md - 语音和音效
- image-to-video.md - 为图像添加动画
环境配置
确保已设置 GEMINI_API_KEY:
export GEMINI_API_KEY="your-api-key-here"
或者在项目中创建 .env 文件:
GEMINI_API_KEY=your-api-key-here
评论
支持 Markdown