图像与设计
用托管 API 一次调用把长视频自动剪成多条竖屏短视频(含转…
当需要把播客、访谈、讲座、vlog 或直播等长视频快速切成适合 TikTok/Reels/Shorts 的短视频片段,且不想在本地跑 Whisper、LLM 或 ffmpeg 时使用。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 59/100 ×0.15
适用场景
用托管 API 一次调用把长视频自动剪成特定
解决思路
- 收集输入参数:--video(必填,托管 mp4 URL、本地文件路径会自动上传,或后端支持的 YouTube URL)、--num-clips(默认 3)、--aspect-ratio(默认 9:16,可选 1:1 或 4:5)、--coords-only(只返回高光时间范围,跳过裁剪)。若用户只给了视频 URL,直接用默认值运行,不要阻塞提问。
- 验证前置条件:已安装并认证 muapi-cli(muapi auth configure),且 MUAPI_API_KEY 可用(环境变量或 muapi auth status 通过)。无需 ffmpeg、Python、Whisper 或 LLM key,全部在服务端运行。
- 运行脚本:bash library/edit/ai-clipping/scripts/run-ai-clipping.sh --video "https://example.com/podcast.mp4" --num-clips 5 --aspect-ratio 9:16 --view。脚本会先把 --video 解析为托管 URL(本地文件通过 muapi upload file 上传),再调用 muapi edit clipping,然后轮询直到任务完成(--async 时立即返回 request_id),最后打印排序摘要,若设置 --output-json 则写入完整结果。
- 按平台选择宽高比:TikTok/Reels/YouTube Shorts 用 9:16(30–75 秒最佳),Instagram Feed 用 1:1(15–45 秒),Pinterest/竖屏用 4:5(30–60 秒)。未指定平台时默认 9:16。
- 使用常见调用模式:默认三条 9:16 片段直接传 --video;播客用 --num-clips 8 --view;Instagram 方形用 --aspect-ratio 1:1 --num-clips 3;只要时间戳用 --coords-only --output-json result.json;异步提交用 --async --output-json - 取 request_id 后再 muapi predict wait "$REQUEST_ID" --download ./outputs;本地文件直接传路径;批量处理用 xargs -a urls.txt -I{} bash run-ai-clipping.sh --video "{}"。
- 理解服务端流程(无需自己实现):用 Whisper 转录、分类内容类型(播客/访谈/教程/vlog/讲座/独白)、按爆款框架排序高光(钩子开场、情绪峰值、观点炸弹、反转揭示、冲突、金句、故事高潮、实用价值)、按分数去重重叠候选、选 Top-N 并做人脸追踪自动裁剪到目标宽高比。
- 解析输出 schema:结果包含 source_video_url 和 shorts 数组,每条有 title、start_time、end_time、score、hook_sentence、virality_reason、clip_url。--coords-only 时只有 start_time/end_time 没有 clip_url,需本地用 ffmpeg 渲染。
- 向用户汇报时,每条片段展示:排名、分数、时间范围、标题、钩子句和片段 URL。
- 避免常见错误:不要用错平台宽高比(Shorts/TikTok/Reels 必须 9:16);不要为凑够 num_clips 而填充,API 返回多少就报多少;不要对 404 的片段 URL 重新剪辑,用同一 request_id 通过 muapi predict wait <id> 重新获取;不要试图调 Whisper、分块大小或 LLM 提示词,这些参数未暴露。
- 处理失败模式:API key 缺失或被拒时如实暴露错误,绝不伪造 key;任务超时时增大 --poll-timeout 并重试;源 URL 后端不可达时先用 muapi upload file <path> 上传再传返回的 URL;返回片段少于请求数时说明源视频可排序高光不足,返回实际结果并附注。
- 完成标准:result.shorts 最多有 num_clips 条,每条有可用的 clip_url(或 --coords-only 下的 start_time/end_time);已向用户展示排序列表(分数、时间范围、标题、钩子、URL);若设置了 --output-json,文件存在且可解析。
适用边界 · 注意事项
- 需要本地自定义渲染管线或只想要原始时间戳时,应使用 --coords-only,而不是期望本技能输出裁剪后的视频。
- 没有 muapi-cli 认证或 MUAPI_API_KEY 时无法使用,因为该技能依赖 muapi.ai 的托管 /ai-clipping 端点。
- 源视频 URL 后端不可达且未先上传时无法处理,需先用 muapi upload file 上传。