jub0t/Concat · 上手攻略
- 仓库:jub0t/Concat
- 链接:https://github.com/jub0t/Concat
- 分类:trending / video-editing / capcut-alternative
- 作者:spark
- 更新:2026-08-31
是什么
Concat 是一个本地优先(local-first)的桌面视频剪辑器,对标 CapCut 的核心剪辑体验,主打"无水印、无账号、无订阅、无云上传"。仓库 README 自述其定位是"the free, open-source CapCut replacement"——把 CapCut 里被收费墙挡住或被强加水印的能力(多轨剪辑、自动字幕、本地 TTS、模板复用)打包成一个可在本机直接运行的桌面应用。
技术栈是典型的"重内核 + 薄界面"分层:
- Rust 引擎做重活(解码/合成/导出、调度 ffmpeg 与 whisper.cpp),负责性能关键路径;
- React 前端做剪辑界面,时间轴、效果面板、字幕编辑都跑在这里;
- 本地 AI 能力通过外部进程嵌入——
nix run github:jub0t/Concat注释里明确说"starts the editor with ffmpeg and whisper wired in",说明自动字幕走的是 whisper.cpp,本地推理,不上云。
⚠️ 关于"Concat / WolfCut"命名的不确定:本攻略撰写时(2026-08-31),仓库主名是 jub0t/Concat(README 顶部标题、Logo、品牌徽章都是 Concat),但 Releases 页面的 release note 里出现 "WolfCut is MPL-2.0" 字样和指向 jub0t/WolfCut 的 THIRD_PARTY_NOTICES 链接(commit cad030d / 2a3e99a,v0.2.0-alpha.13/14)。可能是:(a) 项目曾用名 WolfCut,最近改名/合并到 Concat;(b) Release note 文案从 WolfCut 复制粘贴未更新;(c) Concat 是 WolfCut 的新品牌分叉。当前主 README / Logo / Discord 邀请均以 Concat 为准,本攻略统一使用 Concat;如需引用旧资料建议直接看 GitHub 当前 master 分支 README。
解决什么问题
- CapCut 收费墙 / 水印:CapCut 桌面版的很多功能(云端素材库、模板导出、某些 AI 字幕配额)要么付费,要么带尾标。Concat 完全本地化,导出无水印、无订阅。
- 隐私:自动字幕、TTS、滤镜全部在本机跑——README 写明 "your audio never leaves it",对处理敏感素材(采访、内部培训、医疗/法律录音)的人很关键。
- 跨平台一致性:一份代码在 macOS、Windows、Linux 跑同一套界面,免去在三个平台各学一个工具。
- 避免 Electron 重型壳的代价:用 Rust 处理重活、React 处理 UI,对比纯 Electron 项目(如 OpenShot 的某些分支、某些 Kdenlive 旧版),启动更快、内存占用更低(这是项目自述卖点,未独立 benchmark)。
快速安装
⚠️ 当前版本:v0.2.0-alpha.14(pre-release,2026-08-31 当周仍在 alpha)。Alpha 状态意味着 API / 界面 / 数据格式随时可能变,不要拿去做生产交付。
路径 A:直接下载 Release(推荐新手)
# 进入 Releases 页,下载与你平台对应的安装包
# https://github.com/jub0t/Concat/releases
# macOS:注意是 unsigned binary,首次启动会被 Gatekeeper 拦截
xattr -dr com.apple.quarantine /Applications/Concat.app
# Windows:直接双击 .exe / .msi 安装
# Linux:下载 AppImage 或 .deb(具体格式以最新 release 为准)
路径 B:Nix(Linux/macOS,最干净)
仓库本身就是 Nix flake:
# 直接运行(带 ffmpeg + whisper)
nix run github:jub0t/Concat
# 进入开发 shell(包含 npm run app 所需的全部依赖)
nix develop
# 在 dev shell 里跑前端开发服务器
npm run app
路径 C:从源码构建(贡献者)
git clone https://github.com/jub0t/Concat.git
cd Concat
# 具体步骤见仓库的 BUILD / CONTRIBUTING;本攻略撰写时未 fetch 到独立的 BUILD.md
# 建议直接看 https://github.com/jub0t/Concat/discussions/3 的贡献指南讨论帖
⚠️ 未独立验证的项:构建系统是 Tauri 还是 Electron(README 只写"native Rust engine + React",没明确 UI 壳框架);macOS xattr 命令的精确路径参数以你下载的实际 .app 名(可能是 Concat.app / WolfCut.app)为准;Windows 安装包格式(.msi / .exe / portable)以最新 release 为准。
核心用法
按 README 列出的 Highlights(每条都是开箱即用的能力):
1. 多轨时间轴剪辑
时间轴(Timeline)= 多轨 + 多 timeline
Track 1: 视频 A
Track 2: 视频 B / 画中画
Track 3: 字幕
Track 4: 背景音乐
...
一个项目可建多个 timeline,复杂分镜不会塞成一条线。
2. 基础剪辑工具集
✂️ Split → 在时间轴上把一段切成两段(默认快捷键 S,类似 Premiere)
✂️ Trim → 拖动片段端点精确裁剪
✂️ Merge → 把两段相邻片段合并
↔ Speed control → 加速 / 减速(可配曲线,0.25x ~ 4x)
🔀 Transitions → 段间转场
3. 本地自动字幕(whisper.cpp)
💬 Auto-captions 流程:
1. 选中音轨 → 触发 Auto Caption
2. 后端调用 whisper.cpp(本地推理,音频不出本机)
3. 字幕以独立轨出现,可逐句编辑时间戳与文本
4. 导出时烧录(burn-in)或外挂 SRT/VTT(具体导出选项以 UI 为准)
⚠️ whisper 模型大小(tiny/base/small/medium/large)选择 UI 在 Alpha 阶段可能未全部暴露,建议先用 medium 试精度、再决定是否切 large。
4. 本地 TTS
🔊 Text-to-Speech 流程:
1. 在时间轴插入 TTS 片段
2. 输入文本 → 选择本地 TTS 引擎/音色(具体引擎未在 README 列明)
3. 预览 → 落入时间轴
⚠️ TTS 后端引擎(piper / Coqui / espeak-ng / OpenAI-compatible?)README 没明示,需要看源码 src-tauri/ 或 native/ 目录,或进 Discord 问。
5. 模板复用
📦 Templates = 把一段编辑存成模板,下个项目一键套用
Roadmap 里说要建一个"集中式模板注册表"(类似 npm registry 模式),
当前状态:模板系统雏形,跨用户共享模板暂未上线。
6. 跨平台导出
- 导出参数(编码器、码率、分辨率、容器)在 UI 内选;
- 后端调用 ffmpeg(README 说"ffmpeg wired in"),意味着编码参数空间 = ffmpeg 参数空间。
7. Discord 与社区
官方 Discord:https://discord.gg/DVuPfpXfqP
- Alpha 阶段反馈集中地
- bug 截图请去 GitHub Issues,Discord 一般不做技术支持归档
典型适用场景
- YouTube / B站中等长度口播视频:本地字幕 + 本地 TTS + 多轨 + 模板 = 一次搭好、复用多次。
- 播客可视化剪辑:把录音转字幕、叠封面、叠 logo,单机搞定,无需把音频上第三方云。
- 教学/培训内容:教师录屏 + 自动字幕 + TTS 解说,敏感内容不外发。
- 跨平台小团队:Mac 用户 + Windows 用户 + Linux 用户协作同一套工具(界面一致)。
- CapCut 替代品尝鲜:不想被字节系生态绑定,又希望 UI 不要太"工程化"。
⚠️ 不适用场景: - 严肃影视后期(调色、复杂合成、关键帧动画)—— Alpha 阶段功能不够; - 实时直播剪辑——不是 Concat 的定位; - 多机位剪辑同步—— Roadmap 里没看到 multi-cam 字样; - macOS 上未签名应用的严格合规环境—— unsigned binary 在企业 MDM 下分发会卡 Gatekeeper。
坑与注意
- Alpha 状态:v0.2.0-alpha.14,所有功能都可能改、可能崩、可能丢数据。重要项目一定要保留原素材备份,不要在 Concat 里"原地裁剪"原文件。
- macOS Gatekeeper:每次新版本下载都得跑一遍
xattr -dr com.apple.quarantine;企业环境可能根本不让装。 - Windows 平台状态:README 写"tested",但 alpha 阶段 Windows 兼容性最差,建议优先在 macOS/Linux 试用。
- whisper.cpp 模型大小:自动字幕精度 vs 速度的取舍点在大模型,CPU 推理 large 模型可能很慢(取决于 CPU/GPU)。项目说本地推理 = 一切跑在你机器上 = 你机器扛得住才行。
- 导出编码器:依赖 ffmpeg = 你的 ffmpeg 版本和 license 决定可用的编码器。某些 GPL 编解码器在商业项目分发上要注意(仓库 release note 里说"installers bundle GPL-built FFmpeg binaries"——分发场景要注意 GPL 传染)。
- 模板市场未上线:Roadmap 里"centralized registry of templates contributed by users (kinda like npm)"还只是愿望,跨用户模板分发暂无。
- AI 高级能力缺失:与 CapCut 的 AI 贴纸、AI 配音克隆、AI 背景移除相比,Concat 的"AI"只覆盖了字幕 + TTS,其他 AI 功能 Roadmap 没承诺。
- 硬件要求未文档化:Roadmap 里"Hardware analysis: for device-tier detection, checking how good or potato someone's device is"——意思是项目自己也还没做硬件分级,所以你的机器能否流畅跑 whisper medium/large 完全靠试。
- 贡献路径单一:README 说"the best way to contribute is to grab a build from the Release page and test the application"——意思是代码 PR 之外的"测试反馈"是当前最被需要的事。
与同类对比
| 维度 | jub0t/Concat | OpenCut (opencut-app/opencut) | OpenShot | Kdenlive | DaVinci Resolve (免费版) | CapCut 桌面 |
|---|---|---|---|---|---|---|
| 定位 | 本地 CapCut 替代 | 本地 CapCut 替代 | 开源通用剪辑器 | 开源 KDE 剪辑器 | 专业级免费版 | 字节系消费级 |
| 内核 | Rust + React | Rust + Next.js (Web+Desktop via GPUI) | Python + Qt | C++ + Qt | 闭源商业 | 闭源 |
| 自动字幕 | ✅ whisper.cpp 本地 | Roadmap | ❌ 需插件 | ❌ 需插件 | ✅ 内置(云) | ✅ 云 |
| 本地 TTS | ✅ 本地 | ❌ | ❌ | ❌ | ✅(部分) | ✅ 云 |
| 水印 | ❌ 无 | ❌ 无 | ❌ 无 | ❌ 无 | � 无 | ✅ 有 |
| 订阅 | ❌ 无 | ❌ 无 | ❌ 无 | � 无 | ❌ 无 | ✅ 部分付费 |
| 跨平台 | macOS/Win/Linux | Web+Desktop+Mobile | 全平台 | 全平台 | 全平台 | macOS/Win |
| 成熟度 | Alpha (v0.2.0-alpha.14) | Alpha (rewrite) | 稳定多年 | 稳定多年 | 商业级稳定 | 商业级稳定 |
| License | MPL-2.0 | MIT | GPLv3 | GPLv2 | 闭源免费 | 闭源 |
| Stars(参考) | 746+(trending 段) | 45k+ | 9k+ | 4k+ | n/a | n/a |
核心差异:
- vs OpenCut:两家都是 "Rust core + JS 壳" 的本地 CapCut 替代,但 Concat 强调桌面原生(README 说 macOS/Windows/Linux 桌面),OpenCut 强调Web+Desktop+Mobile 三端一份代码;Concat 现在 alpha 但已有可下载的二进制(v0.2.0-alpha.14),OpenCut 主线 README 现在指向 new.opencut.app 的重写版,"to reach for today" 仍是 opencut-classic。
- vs OpenShot / Kdenlive:这两位老牌开源剪辑器稳定 10+ 年但 UI 学习曲线更工程化;Concat 想复制的是 CapCut 的"小白友好"体验。
- vs DaVinci Resolve 免费版:专业级天花板,但资源占用大、新手成本高;Concat 的目标用户根本不是这个圈层。
- vs CapCut 桌面:唯一的"非开源"对照——Concat 的所有差异化卖点(无水印 / 无订阅 / 本地推理)都是 CapCut 不给的。
⚠️ Stars 数据来自 README 顶部徽章与 trending 段,未独立核实;OpenCut 的 45k+ 来自 TheMenonLab.blog 博客文章,未与 GitHub 当前 star 数对齐,引用时标 ⚠️。
一句话推荐结论
如果你的核心需求是"本地、不上传、不水印、不要订阅、还要自动字幕",且愿意吃 alpha 的不稳定性——jub0t/Concat 是当前最像 CapCut 的开源桌面替代品;否则再等 2~3 个 alpha 进入 beta、或回头用 OpenCut classic / OpenShot 稳定版。
来源与不确定处
已使用来源(全部公开内容,未 clone 仓库、未跑代码):
https://github.com/jub0t/Concat(GitHub 主页)https://raw.githubusercontent.com/jub0t/Concat/main/README.md(README 原文)https://github.com/jub0t/Concat/releases(v0.2.0-alpha.13/14 release note)https://github.com/jub0t/Concat/discussions/3(贡献指南讨论,提及但未深读)- Tavily 搜索:
jub0t/Concat open source CapCut alternative Rust React features review 2026、Concat video editor github whisper.cpp TTS auto caption local offline—— 用来交叉验证 OpenCut / 同类项目背景
不确定 / 已标 ⚠️ 的项:
- UI 壳框架(Tauri vs Electron)—— README 未明示;
- macOS
xattr目标 .app 名字(Concat.app / WolfCut.app)—— 以你下载的安装包为准; - TTS 引擎(piper / Coqui / 其他)—— README 未列明;
- whisper.cpp 默认模型大小 —— UI 选项以运行时为准;
- Windows 安装包具体格式 —— 以最新 release 为准;
- "Concat / WolfCut" 命名关系 —— release note 与 README 不一致,倾向以当前 README/Logo 为准;
- OpenCut star 数 45k+ —— 来自二手博客,未与 GitHub 当前数据对齐;
- 仓库构建系统的完整步骤 —— 未抓到独立 BUILD.md,建议直接看 Discussions/3。
未做:未 clone 仓库、未跑 nix run、未跑 whisper 推理、未 benchmark 与 OpenShot/Kdenlive 的渲染速度差异。所有数字与版本均按 README + release 页 + 搜索结果核验;不确定处一律 ⚠️ 标注。