夜雨聆风学习资料网

ARTICLE · 1295193

AI 自动剪片工具 3060 条测试全绿,142MB 字体却写着微软版权

AI 自动剪片工具 3060 条测试全绿,142MB 字体却写着微软版权

一句话输进去,十分钟后手上多一条竖屏短视频——脚本、配音、字幕、背景音乐、素材拼接全自动。这个叫 MoneyPrinterTurbo 的开源项目有 13.7 万 Star,是 GitHub 上最火的「AI 自动剪片」工具。

我把它的全部测试跑完了(3060 条通过、152 条跳过、零失败),又在自己的机器上真生成了一条 1080×1920 的成片。它确实能出片,而且出得对。但它也是我评测过的项目里,许可证和合规问题最扎手的一个:仓库里塞着微软雅黑的字体文件,背景音乐是作者自己承认从视频网站扒下来的。

它到底做了什么

传统做法是:写文案、找素材、录配音、对字幕、混音、导出,六个软件来回倒。这个项目把六步压成一次点击。

流程是这样串的。先调一个大模型写脚本,从这个脚本里再抽出几个关键词,拿关键词去图库搜视频素材。接着用微软的在线语音服务把文案念出来(这一步不要钱,也不用申请密钥),再让字幕跟着这段语音的节奏走——哪一句在第几秒,全部按配音的实际语速算。最后自动挑一首背景音乐,用视频处理软件拼成一条成片。

三个入口都通:网页界面(用 Streamlit 搭的)、命令行、以及一个标准的接口服务。对普通用户最友好的是 Docker 一键跑,或者 pip install mpt 之后敲一句命令。

规模上,仓库里 333 个 Python 文件、10.07 万行代码,其中测试代码占 5.7 万行,比业务代码还多。13.7 万 Star、2.19 万次分叉、22 个正式版本,最近一个月还提交了 184 次——这是个真在维护的项目,不是发了就走的展示品。

实测一:3060 条测试,零失败

先把环境边界说清楚。我用它的依赖锁定文件装了 131 个包,跑在 Python 3.13 上;没有装 Redis(它支持的可选任务队列),也没有装系统级的视频处理工具(它自带一个)。

然后跑完整测试:3060 条通过、152 条跳过、12874 条子用例通过,零失败,用时 19 分 45 秒。

这个数字本身不稀奇,稀奇的是它测的东西。很多项目的测试是拿假数据糊一遍——把下载、配音、渲染全换成假的,只测「函数被调用了」。这个项目里有 13 个测试文件会真的调用视频工具、真的渲染出视频再检查画面像素。它的覆盖率门槛设在 70%,而且是「分支覆盖」——不只是「这行代码跑过没有」,还包括「这个判断的另一条岔路走过没有」。

测试里也不是全绿到底:有 152 条被跳过。这些跳过的多半是需要真实付费密钥的在线服务(图库、付费语音、付费视频生成),代码里留着这些测试,有密钥就能跑,不是删了了事。

实测二:一条视频真的生成了

光看测试不算数。我用自己造的一段测试画面当素材,加上它默认的免费配音,跑了一条竖屏视频。

结果:时长 6.27 秒、分辨率 1080×1920、视频编码 h264、音频编码 aac、30 帧每秒,字幕两句,时间轴和语音对得上。

有个细节值得说。它先用配音算出「这段话要讲多久」(6.24 秒),再倒推出「需要多少段素材」和「每段切多长」,最后还多留了 0.1 秒的安全余量。很多人做视频的痛点是「画面放完了声音还在响」或者反过来,它从设计上就把这件事解掉了。

整条流程耗时 2 分 45 秒,其中配音那一步是真实联网调的。

实测三:默认配置下的两个安全问题

第一个是监听地址。配置模板里默认写的是「监听所有网卡」,同时接口密钥是空的。

这意味着什么?我在本地起了服务,没带任何密钥,直接发一条「生成视频」的请求——它返回 200,任务直接进队列了。任何能连到这台机器的人,都能白嫖你的接口额度。启动日志里确实有一行警告,Docker 配置也把端口绑在了本机回环地址上,但如果你是直接 python main.py 起在云服务器上,这道门就是开着的。

第二个是素材下载没有目标限制。它会拿接口返回的地址去下载素材,但没有校验「这个地址是不是内网」。实际用的时候地址都来自图库和云存储,被利用的概率不高,但这属于「没设防」,不是「防住了」。

好的方面也要说:我试了三种攻击方式都没进去。往文件下载地址里塞 ../../etc/passwd,返回 403;换成编码后的写法,也是 403;命令行里传 /etc/passwd 当素材,在参数解析那一步就被拒了。接口密钥的比对用的是恒定时间比较(防止通过响应快慢猜密钥),重复发送同名密钥头会被直接拒绝。凭据文件写在权限 700 的目录里,先写临时文件再原子替换。这些细节做得比很多商业项目还扎实。

实测四:代码里的两个硬伤

第一个是网页界面。那个 9498 行的单文件,光一个「设置弹窗」函数就 726 行,一个「音频设置」697 行。这不是审美问题——每加一个新服务商、每加一个开关,都要动同一个巨型函数。十月份的提交记录几乎全是「修网页界面的某一行」,原因就在这里。

第二个是服务商模块的复制粘贴。四个付费视频服务商的接入代码,加起来 1953 行。我做了结构对比:其中两个文件之间的函数名重合度是 0.89,有 10 个函数的函数体逐字节完全相同——错误脱敏、重试判断、状态码解析这些安全相关的辅助函数,被复制了四份。

这意味着什么?如果哪天发现脱敏逻辑漏了一个密钥格式,你得改四个地方,而第五个服务商马上要来。这块是整个仓库投入产出比最高的一处重构。

最该先说的一件事:许可证

这一节是我犹豫最久的,因为它不涉及代码好坏,但后果最重。

项目本身是 MIT 许可——最宽松的那一类,商用、修改、再分发都行。但它打包进仓库的东西不是。

我直接读了字体文件里的版权字段。MicrosoftYaHei(微软雅黑)写着「版权归微软公司所有,部分版权归北京方正电子所有」,授权范围是「你可以在包含该字体的微软产品或服务中,按其许可条款使用」——这不包括把它塞进一个开源仓库再分发。另一个 STHeiti(华文黑体)写着「版权归常州华文所有,保留所有权利」。

背景音乐更直接。README 里原话是:「当前项目里面放了一些默认的音乐,来自于 YouTube 视频,如有侵权,请删除。」30 首曲子、56MB,就是这么躺在仓库里的。

这些资产不只躺在仓库里——pip install mpt 会把它们一起装进你的虚拟环境。也就是说,任何人分发这个包,就在分发这些内容。

再加上一个容易被忽略的:它运行时实际用的是内置的 FFmpeg(一个开源视频处理工具),而那个构建版本带 GPL 许可。MIT 项目内嵌 GPL 二进制,在「分发」这个动作上是有义务要交代的,而仓库里对此一字未提。

顺便说,项目里也确实有正当授权的字体(Be Vietnam Pro、Charm 都是标准的开源字体许可),说明作者知道怎么做对——只是没做全。

三句话说清取舍

适合谁:一个人或小团队批量做短视频。从写文案到成片,这中间六件杂事它全包了,装一个包、点一下就有结果,而且质量能看。

不适合谁:想直接对公网开放、给多人用的。默认没有鉴权、没有限流、没有单任务超时,先自己加一层反向代理和密钥再说。以及想拿它做商业产品的——字体和音乐得先换掉再谈。

值不值得读代码:值得,但读的是那些防御性细节,不是整体架构。它的输入校验和密钥处理是可以直接抄的水平。

结论

13.7 万 Star 是实至名归的:真能出片、测试真能复现、代码里有一批认真到偏执的防御。但它更像一把好用的家用工具,不是一台可以对外开放的服务器,而且箱子里还装着来路不明的配件。

对我最有价值的一条经验是:开源项目的许可证问题,往往不在 LICENSE 文件里,在你 git clone 下来之后 du -sh 最大的那个目录里。 这个项目 219MB 的工作区,142MB 是字体,56MB 是音乐,加起来占了九成。

关注 AI商业快讯,每天一篇 AI 热点深度解读。

相关阅读

•OpenMontage 深度评测:6.89 万 Star 的开源视频流水线,139 个技能 12 条流水线[1]
•Stickman Video Director 深度评测:3122 Star 的火柴人视频技能,19 项测试全绿,中文成片却全是方框[2]
•Cindy 深度评测:8158 Star 的开源 AI 客户端,4.9 万行规范里 5 条红线自己没守住[3]

参考链接

[1] OpenMontage 深度评测:6.89 万 Star 的开源视频流水线,139 个技能 12 条流水线:https://www.geeyo.com/openmontage-%e6%b7%b1%e5%ba%a6%e8%af%84%e6%b5%8b%ef%bc%9a6-89-%e4%b8%87-star-%e7%9a%84%e5%bc%80%e6%ba%90%e8%a7%86%e9%a2%91%e6%b5%81%e6%b0%b4%e7%ba%bf%ef%bc%8c139-%e4%b8%aa%e6%8a%80%e8%83%bd-12/

[2] Stickman Video Director 深度评测:3122 Star 的火柴人视频技能,19 项测试全绿,中文成片却全是方框:https://www.geeyo.com/stickman-video-director-%e6%b7%b1%e5%ba%a6%e8%af%84%e6%b5%8b%ef%bc%9a3122-star-%e7%9a%84%e7%81%ab%e6%9f%b4%e4%ba%ba%e8%a7%86%e9%a2%91%e6%8a%80%e8%83%bd%ef%bc%8c19-%e9%a1%b9%e6%b5%8b%e8%af%95%e5%85%a8/

[3] Cindy 深度评测:8158 Star 的开源 AI 客户端,4.9 万行规范里 5 条红线自己没守住:https://www.geeyo.com/cindy-%e6%b7%b1%e5%ba%a6%e8%af%84%e6%b5%8b%ef%bc%9a8158-star-%e7%9a%84%e5%bc%80%e6%ba%90-ai-%e5%ae%a2%e6%88%b7%e7%ab%af%ef%bc%8c4-9-%e4%b8%87%e8%a1%8c%e8%a7%84%e8%8c%83%e9%87%8c-5-%e6%9d%a1%e7%ba%a2/

回首页,搜索你想要的文档

在首页搜索框输入关键词,快速定位资料

文库首页搜索指引 立即搜索

相关学习资料