easy-jianying
Health Pass
- License — License: NOASSERTION
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Community trust — 104 GitHub stars
Code Pass
- Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Pass
- Permissions — No dangerous permissions requested
No AI report is available for this listing yet.
让 AI 把剪辑做成剪映草稿,你在剪映里接着改 · AI → editable JianYing (剪映) drafts on macOS
Easy 剪映
让 AI 把剪辑做成剪映草稿,你在剪映里接着改。
转场、关键帧、字幕、卡点、口播粗剪,都会变成剪映里正常的轨道和片段,可以拖、可以改,最后在剪映里自己导出。
English · 三分钟上手 · 它是怎么做到的 · CapCut 国际版
这段画面由一份 JSON 计划生成草稿,在剪映 11.7 里打开、播放。
(右上角的小圆圈是画中画加了圆形蒙版,蒙版属于会员资源,见下面「免费用户用免费的,会员用会员的」。)
为什么要做成草稿,而不是直接给成片
AI 剪出来的片子,常常只差一两处:字幕错了一个字,某个镜头长了半秒,音乐想再小一点。
如果拿到的是成片,改这些就得回到 AI 那边重新生成、重新渲染。片子越长,等得越久,每改一次都要再花一次算力,改完还不一定是你想要的。
如果拿到的是剪映草稿,打开剪映,点到那条字幕改掉,把片段拖短一点,在剪映里自己导出就行。
| 想改一个错别字 | 拿到成片 | 拿到剪映草稿 |
|---|---|---|
| 怎么改 | 让 AI 重新生成、重新渲染 | 在剪映里双击字幕,改掉 |
| 要等多久 | 再渲染一遍 | 几秒钟 |
| 算力 | 再花一次 | 不用 |
Easy 剪映做的就是这一步:AI 写剪辑计划 → 生成剪映草稿 → 你在剪映里打开微调。 每段素材、每条字幕、每个转场都是独立的片段,和你自己剪的工程没有区别。粗活交给 AI,细节你自己定。
剪映里看到的就是这样:主轨、转场、变速、画中画、标题、字幕、音乐,各在各的轨道上。
它能做什么
| 能力 | 具体是什么 | |
|---|---|---|
| 🎬 | 生成草稿 | 多轨、切碎、变速、转场、关键帧动画、画中画、文字、字幕、贴纸、特效、滤镜、BGM 淡入淡出、图片/GIF |
| ✂️ | 口播粗剪 | 一条 5 分钟的口播原片,自动剪掉气口、口癖、结巴和说错重来的半句;Agent 再按语义删掉"说了两遍的那句" |
| 💬 | 字幕贴语音 | 本地识别,不上传;生成剪映原生「识别字幕」,在剪映里一键改全部样式 |
| 🥁 | 卡点 | 识别音乐节拍,素材按拍切,再打上剪映原生的踩点标记 |
| 📦 | 批量 | 一个模板 × 一张表格 = N 个草稿,系列视频统一包装 |
| 🎨 | 自动调配 | 转场、特效、字体写 "auto",只在免费资源里挑 |
| 👑 | 会员资源 | 剪映会员声明 --member,就能让 AI 直接用会员转场、蒙版、文字动画 |
| 🌏 | CapCut 国际版 | 同一份计划生成 CapCut 草稿 |
草稿生成后,打开、微调、导出都在剪映 / CapCut 里完成,会员功能照剪映 / CapCut 自己的规则走。
免费用户用免费的,会员用会员的
转场、特效、贴纸、字体这些是剪映自己的资源,草稿里只记它们的名字和编号,效果文件由剪映按编号下载。
剪映在每个草稿文件夹的 key_value.json 里记着用过的资源是不是会员(is_vip)。Easy 剪映据此给内置的 375 个资源都标了记号:免费 175 个(is_vip 为 0,或剪映安装包自带的字体)、会员 67 个、没有记录的 133 个。
- 默认只用免费的:贴纸 116、特效 28、字体 23、转场 5(推近、叠化、闪黑、滑动、翻页)、动画 1、滤镜 1、音效 1。
"auto"也只从这里面挑。 - 你是剪映会员:加
--member(或在计划里写"member": true),会员资源和没有记录的资源就能点名使用,比如会员转场、蒙版、文字动画。生成时会提醒哪些是会员资源。 - 草稿打开后,会员功能照剪映自己的规则走:剪映照常检查会员,jyr 不绕开任何检查。
jyr --member build plan.json --out /tmp/demo --publish
支持哪些版本
jyr 生成的草稿是普通的 JSON 文件,剪映和 CapCut 打开后照常编辑、保存、导出。实测过的版本:
| App | 实测版本 | 生成草稿、放到首页 | 读取 / 导字幕 / 改副本 |
|---|---|---|---|
| 剪映专业版(macOS) | 11.7.0 | ✅ | 只限 jyr 自己生成、剪映还没存过的草稿 |
| CapCut 国际版(macOS) | 9.4.1 | ✅ | ✅(CapCut 草稿是普通 JSON) |
其他版本没有实测。剪映升级后先跑 jyr adapt,再打开一份生成的草稿确认。
CapCut 国际版
同一份计划,加一个 --app capcut,就是一份 CapCut 草稿:
jyr --app capcut doctor
jyr --app capcut build examples/capcut.plan.json --out /tmp/cc-demo --publish --name "我的第一个 CapCut 草稿"
jyr --app capcut inspect "我的第一个 CapCut 草稿" # 读草稿、字幕存成 SRT、改副本都行
只装了一个就自动用它,不写 --app 也行;两个都装时默认剪映。
CapCut 一侧只读写草稿文件:不调用 CapCut 程序里的任何东西,也不操作它的界面。
CapCut 的资源编号和剪映不完全一样,所以它有自己的资源清单。内置的主要是 CapCut 安装包自带的字体;你在 CapCut 里用过的转场、动画、字体,jyr --app capcut catalog scan 扫一遍就能用。规则和剪映一样:默认只用免费的,CapCut Pro 用户加 --member 才能用 Pro 资源;catalog list --free 只列免费的。
三分钟上手
你需要:Mac + 剪映专业版(或 CapCut)、Python 3.10+、ffmpeg。
git clone https://github.com/YeJe-cpu/easy-jianying && cd easy-jianying
pip install -e '.[asr,fonts]' # 只生成草稿的话 pip install -e . 就够
jyr doctor # 检查剪映版本,状态应为 ok
./tools/make_fixtures.sh examples/media
jyr build examples/showcase.plan.json --out /tmp/jyr-demo --publish --name "我的第一个 AI 草稿"
推送时剪映要完全退出。打开剪映,首页第一个就是它。
一份计划长这样,时间用秒,资源直接写剪映界面上的中文名:
{"name": "在路上", "canvas": "16:9",
"tracks": [
{"type": "video", "clips": [
{"src": "雪山列车.mp4", "duration": 4, "transition": "叠化"},
{"src": "牧民.mp4", "duration": 3, "speed": 1.5, "transition": "推近"},
{"src": "小巷.mp4", "duration": 4.5, "keyframes": {"scale": [[0, 1.0], [4.5, 1.25]]}}]},
{"type": "text", "clips": [{"text": "在路上", "duration": 3.4,
"style": {"font": "新青年体", "size": 18, "color": "#FFD400", "stroke": {"color": "#000000"}},
"keyframes": {"opacity": [[0, 0], [0.6, 1]]}}]},
{"type": "subtitle", "clips": [{"text": "雪落下的时候", "duration": 3}]},
{"type": "audio", "clips": [{"src": "bgm.mp3", "volume": 0.7, "fade": {"in": 1, "out": 2}}]}]}
给 Agent 用:把 skills/ 下的 Skill 装进 Claude Code / Codex,直接说"把这条口播粗剪一下放进剪映"就行。
我们做了哪些验证
1. 每个功能都在剪映里看过。
用真实素材生成草稿,在剪映里打开、播放、导出,人工逐项看轨道、时间和效果。验收记录见 docs/acceptance.md。
2. 效果缺了,剪映会自己下载。
实测把转场、字体的缓存删掉,剪映打开草稿时会按编号重新下载回来。
3. 口播粗剪拿人工剪辑做对照。
同一条 316 秒的真实口播,人工粗剪到 232 秒。我们只用规则剪到 250 秒,人工保留的内容我们保留了 99%;再让 Agent 读一遍句子,删掉 3 句重复的,剪到 242 秒。
4. 卡点误差在一帧以内。
用节拍器测 90–150 BPM:速度误差不超过 1.5%,节拍位置平均差 2 毫秒,最多差 5 毫秒。
5. 方便 Agent 使用。
时间用秒,片段不写开始时间就自动接在上一段后面,资源直接写中文名,写错了会列出可用的选项。口播粗剪留了一步给 Agent 判断语义:停顿和口癖按规则剪,"同一句说了两遍"由 Agent 决定删哪句。
边界(先说清楚)
- 只支持 macOS:剪映专业版 11.7、CapCut 国际版 9.4.1 在 Intel Mac 上实测。Apple Silicon 理论可行,暂未实测;Windows 未测试。
- jyr 只生成草稿文件,不操作剪映 / CapCut 的界面。 打开、编辑、导出都由你在 App 里完成。
- 剪映存过的草稿 jyr 不读:要改就改计划重新生成,或者直接在剪映里改。CapCut 的草稿可以读。
- 默认只用免费资源;会员声明
--member才会用到会员资源(见上)。会员功能能不能用、能不能导出,以剪映的规则为准。 - CapCut 缺资源时会不会像剪映一样按编号自动下载,还没在别的机器上验证过。
- 还没做的:裁剪、抠图、调色、曲线变速、花字、音频特效。
- 识别字幕会有错字,可以批量替换,也可以接你自己的识别服务。
- 这不是剪映官方工具,和字节跳动没有任何关系。 剪映 / CapCut 的用户协议依然适用。
致谢
- pyJianYingDraft(Gary Guan)——剪映草稿格式研究的开路者。
- capcut-cli——公开记录了新版剪映接受普通 JSON 草稿的行为。
- Dan Ellis 的动态规划节拍跟踪;faster-whisper。
- 也谢谢逸晨(mcncarl)的 jianying-headless:我们最早是在本机使用并适配它,把它跑通在英特尔 Mac 上,从中学到了很多。它下架后,我们依据自己的实践从头重写了这一版,本仓库不包含它的代码或数据。
写在最后
这个项目开始于一个很朴素的情况:一个大家都在用的工具下架了,而我们手上正好有一路踩坑攒下来的经验。
修预览黑屏的时候,我们一度以为是剪映的问题,最后发现是一首 mp3 里嵌了一张专辑封面。这些弯路都记了下来,也写进了代码和测试里。
它一定还有粗糙的地方。如果你发现剪映某个版本又变了、某个功能不对,欢迎告诉我们,也欢迎把你自己的剪辑套路写成新的 Skill。
协议
PolyForm Noncommercial 1.0.0:个人学习、研究、非商业使用都可以,随便改。不允许商用(包括卖课、做付费服务、接单交付);商用请先联系作者。
联系作者
- 想聊聊 / 反馈问题:X(推特)@leaf_sanren,欢迎私信;也可以直接提 Issue。
- 商业授权与合作:邮件 [email protected]。
- 同作者的另一个开源项目:SeeCut——口播自动精剪成网感动效短视频,也能输出剪映分层草稿。
Reviews (0)
Sign in to leave a review.
Leave a reviewNo results found