2025-5-12
Words 987Read Time 3 min
Score:85

基于MCP协议的短视频生成工具,支持TikTok、Instagram Reels和YouTube Shorts,提供文本转语音、自动字幕、背景视频和音乐合成功能。

TypeScript

短视频生成器

一个开源的自动化视频创作工具,用于生成短视频内容。短视频生成器结合了文本转语音、自动字幕、背景视频和音乐,能够从简单的文本输入中生成引人入胜的短视频。
该项目由 AI Agents A-Z YouTube 频道 开源。我们鼓励您访问该频道,获取更多与 AI 相关的内容和教程。

硬件要求

  • CPU:建议至少 2 核
  • RAM:至少需要 2 GB,建议 4 GB。使用 Docker 时,可以通过 CONCURRENCY 环境变量限制内存使用(见下文)
  • GPU:可选,可以显著加快字幕生成速度(Whisper.cpp)并略微加快视频渲染速度

软件要求

使用 npx 运行时需要:
  • ffmpeg
  • build-essential、git、cmake、wget(用于构建 Whisper.cpp)

观看官方视频:如何使用 n8n 生成视频

运行项目

使用 NPX(推荐)

这是最简单的方式,支持 GPU 开箱即用:

使用 Docker

[!IMPORTANT] 为避免内存问题,我已将用于渲染的 Chrome 标签页并发数限制为 1。如果您有更多内存,可以尝试找到适合您机器/VPS 的最佳配置。

CPU 镜像

为了提高性能,我已将 Whisper 模型设置为 base.en。该模型比 medium.en 更小、更快,但准确性稍低。
使用 2 个 vCPU 时,Kokoro 生成 10 秒音频大约需要 7 秒,Whisper 生成一个场景的字幕大约需要 2 秒。

NVIDIA GPU

获取帮助

加入我们的 Discord 社区,获取支持并参与讨论。

环境变量

变量
描述
PEXELS_API_KEY
用于背景视频源的 Pexels API 密钥
PORT
API/MCP 服务器的端口(默认:3123)
LOG_LEVEL
服务器的日志级别(默认:info,选项:trace, debug, info, warn, error)
WHISPER_VERBOSE
Whisper 的详细模式(默认:false)
CONCURRENCY
用于渲染视频的 Chrome 标签页数量。用于限制 Docker 容器中的内存使用(默认:未定义)
VIDEO_CACHE_SIZE_IN_BYTES
帧的缓存 - 用于防止 Docker 镜像中的内存相关崩溃(默认:未定义)

示例

功能

  • 从文本提示生成完整的短视频
  • 文本转语音
  • 自动生成并样式化字幕
  • 通过 Pexels 搜索和选择背景视频
  • 支持按流派/情绪选择背景音乐
  • 同时作为 REST API 和模型上下文协议(MCP)服务器

工作原理

短视频生成器接收简单的文本输入和搜索词,然后:
  1. 使用 Kokoro TTS 将文本转换为语音
  1. 通过 Whisper 生成准确的字幕
  1. 从 Pexels 查找相关背景视频
  1. 使用 Remotion 组合所有元素
  1. 渲染出带有完美同步字幕的专业短视频

视频生成的依赖项

依赖项
版本
许可证
用途
^4.0.286
视频合成与渲染
v1.5.5
MIT
字幕的语音转文本
^2.1.3
LGPL/GPL
音频/视频处理
^1.2.0
MIT
文本转语音生成
N/A
背景视频

如何贡献?

欢迎提交 PR。有关如何设置本地开发环境的说明,请参阅 CONTRIBUTING.md 文件。

API 使用

REST API

提供以下 REST 端点:
  1. GET /api/short-video/:id - 按 ID 获取视频,也可以通过以下方式下载:
    1. curl -o output.mp4 http://localhost:3123/api/short-video/<videoId>
  1. POST /api/short-video - 创建新视频
    1. DELETE /api/short-video/:id - 按 ID 删除视频
    1. GET /api/music-tags - 获取可用的音乐标签

    模型上下文协议 (MCP)

    该服务还实现了模型上下文协议:
    1. GET /mcp/sse - MCP 的服务器发送事件
    1. POST /mcp/messages - 向 MCP 服务器发送消息
    可用的 MCP 工具:
    • create-short-video - 从场景列表创建视频
    • get-video-status - 检查视频创建状态

    许可证

    该项目基于 MIT 许可证 授权。

    致谢

    • ❤️ Remotion - 用于程序化视频生成
    • ❤️ Whisper - 用于语音转文本
    • ❤️ Pexels - 用于视频内容
    • ❤️ FFmpeg - 用于音频/视频处理
    • ❤️ Kokoro - 用于文本转语音
    上一篇
    pgsql-mcp-server
    下一篇
    me2ai_mcp