Skip to content

Repository files navigation

GenVideo - AI Video Generation CLI

统一的视频生成命令行工具,支持文本生成视频 (T2V) 和图片生成视频 (I2V)。

✨ 功能特性

  • 文本生成视频 (T2V) - 从文本描述生成视频
  • 图片生成视频 (I2V) - 从 1-2 张图片生成视频
    • 单张图片:生成动态视频
    • 双张图片:首尾帧过渡效果
  • 智能模型选择 - 根据输入自动选择最佳模型
  • 68+ 模型支持 - 支持 Google Veo 3.1 系列模型
  • 流式下载 - 实时进度显示

📦 安装

环境要求

  • Python 3.10+
  • Windows / Linux / macOS

安装步骤

# 克隆项目
git clone https://github.com/yourusername/GenerateVideo.git
cd GenerateVideo

# 创建虚拟环境
python -m venv venv

# 激活虚拟环境 (Windows)
venv\Scripts\activate

# 激活虚拟环境 (Linux/macOS)
source venv/bin/activate

# 安装依赖
pip install -e .

配置

复制配置模板并填写您的 API 信息:

cp .env.example .env

编辑 .env 文件:

GENVIDEO_API_ENDPOINT=http://your-api-server/v1/chat/completions
GENVIDEO_API_TOKEN=your_api_token

🚀 使用方法

文本生成视频 (T2V)

# 基础用法
genvideo t2v -p "一只小猫在草地上追逐蝴蝶"

# 从文件读取提示词
genvideo t2v -p prompt.txt

# 指定模型
genvideo t2v -p "描述" -m veo_3_1_t2v_fast_landscape

# 指定输出目录
genvideo t2v -p "描述" -o ./videos/

图片生成视频 (I2V)

# 单张图片生成视频
genvideo i2v -i image.jpg -p "图片动起来"

# 双张图片(首尾帧过渡)
genvideo i2v -i start.jpg -i end.jpg -p "从第一张过渡到第二张"

# 指定模型
genvideo i2v -i img.jpg -p "描述" -m veo_3_1_i2v_s_fast_fl

查看可用模型

# 列出所有模型
genvideo models

# 筛选 I2V 模型
genvideo models --filter i2v

# JSON 格式输出
genvideo models --format json

📋 命令参考

genvideo t2v - 文本生成视频

参数 简写 必需 说明
--prompt -p 文本提示词或 .txt 文件路径
--model -m 模型 ID(默认自动选择)
--output -o 输出目录(默认 ./output/)

genvideo i2v - 图片生成视频

参数 简写 必需 说明
--image -i 输入图片(1-2张)
--prompt -p 文本提示词
--model -m 模型 ID(默认自动选择)
--output -o 输出目录

genvideo models - 模型列表

参数 说明
--filter 按类别筛选:t2v, i2v, r2v
--format 输出格式:table, json

🎯 自动模型选择

模式 图片数 自动选择模型
T2V 0 veo_3_1_t2v_fast_landscape
I2V 1 veo_3_1_i2v_s_landscape
I2V 2 veo_3_1_i2v_s_fast_fl

📁 项目结构

GenerateVideo/
├── src/
│   ├── cli/              # CLI 命令
│   │   ├── main.py       # 入口点
│   │   ├── t2v.py        # 文本生成视频
│   │   ├── i2v.py        # 图片生成视频
│   │   └── models.py     # 模型列表
│   ├── models/           # 模型管理
│   │   ├── catalog.py    # 模型目录
│   │   └── selector.py   # 自动选择
│   ├── api_client.py     # API 通信
│   ├── encoder.py        # 图片编码
│   ├── video_saver.py    # 视频保存
│   ├── config.py         # 配置管理
│   └── errors.py         # 异常定义
├── tests/                # 测试文件
├── output/               # 视频输出(已忽略)
├── .env.example          # 配置模板
├── pyproject.toml        # 项目配置
└── README.md

🔧 开发

运行测试

pytest tests/

代码格式化

black src/

📄 许可证

MIT License

🤝 贡献

欢迎提交 Issue 和 Pull Request!

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages