视频编辑自动化工具

通过D-Bus、HTTP REST和MCP协议实现Kdenlive视频编辑器的程序化控制,支持AI代理创建项目、构建时间线、切换多摄像头角度和导出编辑。

  • by jordantaylorfuller
  • C++
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 jordantaylorfuller/kdenlive-mcp

使用说明

kdenlive mcp

可通过D-Bus、HTTP REST和MCP(模型上下文协议)编写AI脚本的Kdenlive。

该项目为程序控制提供了一个完整的堆栈 Kdenlive,开源视频编辑器。AI代理可以创建项目、构建时间线、切换多播角度和导出编辑——所有这些都不需要触摸GUI。

建筑

┌──────────────────┐                    ┌──────────────────────────────────┐
│  AI Agent        │   MCP Protocol     │  mcp-kdenlive/                   │
│  (Claude, etc.)  │◄─────────────────►│  Standalone MCP server            │
└──────────────────┘   stdio            └───────────────┬──────────────────┘
                                                        │
                                        ┌───────────────▼──────────────────┐
                                        │  kdenlive-api/                    │
                                        │  Python D-Bus / HTTP wrapper      │
                                        │  Python scripting wrapper          │
                                        └───────────────┬──────────────────┘
                                                        │ D-Bus or HTTP
                                        ┌───────────────▼──────────────────┐
                                        │  Kdenlive (modified fork)         │
                                        │  kdenlive/  -- C++ with D-Bus +  │
                                        │  embedded HTTP scripting server   │
                                        └──────────────────────────────────┘

Auxiliary:
  kdenlive-server/     C++ HTTP bridge (Boost.Beast) for macOS/Windows
  kdenlive_utils/      Python utilities: .kdenlive XML builder, parser, viewer API

组件

目录 描述
kdenlive/ 修改了带有D-Bus和HTTP脚本端点的Kdenlive C++分支
kdenlive-api/ Python包装器通过D-Bus/HTTP提供脚本API
kdenlive-server/ 适用于没有D-Bus的平台的独立C++HTTP桥(Boost.Beast)
mcp-kdenlive/ MCP服务器,将Kdenlive操作作为AI代理工具公开
kdenlive_utils/ Python实用程序:.kdalive XML生成器、解析器、项目查看器API

快速开始

1.使用HTTP脚本构建Kdenlive

完整的C++构建指南在 docs/BUILDING_KDENLIVE.mdCMake的关键标志是:

cd kdenlive && mkdir build && cd build
cmake .. -DBUILD_SCRIPTING_HTTP=ON -DCMAKE_BUILD_TYPE=Release
cmake --build . -j$(nproc)

2.安装Python包

./setup.sh

3.启动一切

./start.sh              # Kdenlive + MCP server
./start.sh --viewer     # also start the project viewer API on :8081
./start.sh --mcp-only   # MCP server only (Kdenlive already running)

独立使用MCP服务器

cd mcp-kdenlive
pip install -r requirements.txt
python run.py

使用Python API

from kdenlive_utils import KdenliveProject, ProjectState, TimelineClipState

# Build a .kdenlive project programmatically
proj = KdenliveProject(name="My Edit", fps=25.0)
proj.add_media("1", "/path/to/video.mp4", duration=500)
clips = [TimelineClipState(clip_id=1, bin_id="1", track_id=0, position=0, duration=250, name="clip")]
proj.add_sequence("Main Edit", video_clips=clips)
proj.save("/tmp/my_edit.kdenlive")

需求

  • Python 3.10+
  • 诗歌
  • Kdenlive(用于API实时交互)
  • FFmpeg(可选,用于观看者API代码转换)

积分

  • D-Ogi --kdenlive api和修改后的kdenlive fork,带有D-Bus/HTTP脚本
  • KDE/Kdenlive --上游开源视频编辑器

许可证

有关许可证的详细信息,请参阅各个组件目录。Kdenlive分支遵循上游GPL许可证。