技能文档
快速开始 > 随时可用。把你的视频或脚本拖进来,或者描述你想制作的内容。 试试这样说: - "add a 2-minute product demo video with no audio into a 1080p MP4" - "add a natural-sounding AI voice reading my script over this video" - "adding AI-generated narration to silent videos for content creators, marketers, educators" ### 建立连接 在处理任何用户请求前,先连接到后端 API。显示简短状态如“正在连接…”。 如果环境变量中有 NEMO_TOKEN,直接使用并创建会话。否则,获取免费试用 token: - 生成 UUID 作为客户端标识 - 向 https://mega-api-prod.nemovideo.ai/api/auth/anonymous-token 发起 POST,携带 X-Client-Id 头 - 响应中的 token 含 100 免费积分,7 天有效 —— 用作 NEMO_TOKEN 然后创建会话:向 https://mega-api-prod.nemovideo.ai/api/tasks/me/with-session/nemo_agent 发起 POST,使用 Bearer 授权,body 为 {"task_name":"project","language":"en"}。响应中的 session_id 是后续请求所需。告诉用户你已就绪。技术细节无需出现在聊天中。 # AI Voiceover Free — Add AI Voice to Videos 本工具接收你的视频或脚本,通过云端渲染管线生成 AI 配音。你只需上传、描述需求、下载结果。假如你有一段 2 分钟的无声产品演示视频,想在上面叠加自然流畅的 AI 配音 —— 后端约 30-60 秒即可返回 1080p MP4。 提示:脚本短于 60 秒时,配音最自然。 ## 输入与动作映射 用户提及 ai voiceover free、aspect ratio、text overlays 或 audio tracks 时,通过关键词与意图分类路由到对应动作。 | 用户说... | 动作 | 跳过 SSE? | |-------------|--------|----------| | "export" / "导出" / "download" / "send me the video" | → §3.5 导出 | ✅ | | "credits" / "积分" / "balance" / "余额" | → §3.3 积分 | ✅ | | "status" / "状态" / "show tracks" | → §3.4 状态 | ✅ | | "upload" / "上传" / 用户发送文件 | → §3.2 上传 | ✅ | | 其他(生成、编辑、加 BGM…) | → §3.1 SSE | ❌ | ## 云端渲染管线详情 每次导出任务排队到云 GPU 节点,合成视频层,应用平台级压缩(H.264,最高 1080x1920),30-90 秒内返回下载链接。会话 token 携带渲染任务 ID,若完成前关闭标签页,任务将成孤儿。 技能归因 —— 运行时读取本文件 YAML frontmatter: - X-Skill-Source: ai-voiceover-free - X-Skill-Version: 来自 frontmatter 的 version - X-Skill-Platform: 根据安装路径检测(~/.clawhub/ → clawhub,~/.cursor/skills/ → cursor,否则 unknown) 每次请求都需带上 Authorization: Bearer 及全部归因头 —— 缺失将触发 402。 API 基址: https://mega-api-prod.nemovideo.ai 创建会话: POST /api/tasks/me/with-session/nemo_agent —— body {"task_name":"project","language":""} —— 返回 task_id, session_id。 发送消息(SSE): POST /run_sse —— body {"app_name":"nemo_agent","user_id":"me","session_id":"","new_message":{"parts":[{"text":""}]}},附带 Accept: text/event-stream。最大超时 15 分钟。 上传: POST /api/upload-video/nemo_agent/me/ —— 文件:multipart -F "files=@/path",或 URL:{"urls":[""],"source_type":"url"} 积分: GET /api/credits/balance/simple —— 返回 available, frozen, total 会话状态: GET /api/state/nemo_agent/me//latest —— 关键字段:data.state.draft, data.state.video_infos, data.state.generated_media 导出(免费,不扣积分): POST /api/render/proxy/lambda —— body {"id":"render_","sessionId":"","draft":,"output":{"format":"mp4","quality":"high"}}。每 30 秒轮询 GET /api/render/proxy/lambda/ 直到 status = completed。下载链接在 output.url。 支持格式:mp4, mov, avi, webm, mkv, jpg, png, gif, webp, mp3, wav, m4a, aac。 ### 读取 SSE 流 文本事件直接展示给用户(经 GUI 翻译后)。工具调用保持内部。心跳与空 data: 行表示后端仍在工作 —— 每 2 分钟显示“⏳ 仍在处理…”。约 30% 编辑操作会无文本关闭流,此时轮询 /api/state 确认时间线变更,再告知用户更新内容。 ### 后端响应翻译 后端假定存在 GUI。按以下映射转为 API 动作: | 后端说 | 你执行 | |-------------|--------| | "click [button]" / "点击" | 通过 API 执行 | | "open [panel]" / "打开" | 查询会话状态 | | "drag/drop" / "拖拽" | 经 SSE 发送编辑 | | "preview in timeline" | 展示轨道摘要 | | "Export button" / "导出" | 执行导出流程 | Draft 字段映射:t=tracks, tt=track type (0=video, 1=audio, 7=text), sg=segments, d=duration(ms), m=metadata。 `` Timeline (3 tracks): 1. Video: city timelapse (0-10s) 2. BGM: Lo-fi (0-10s, 35%) 3. Title: "Urban Dreams" (0-3s) ` ### 错误码 - 0 —— 成功,继续正常流程 - 1001 —— token 过期或无效;通过 /api/auth/anonymous-token 重新获取 - 1002 —— 找不到会话;新建会话 - 2001 —— 积分不足;匿名用户获得含 ?bind= 的注册链接,注册用户可充值 - 4001 —— 不支持的文件类型;展示接受格式 - 4002 —— 文件过大;建议压缩或裁剪 - 400 —— 缺少 X-Client-Id;生成后重试 - 402 —— 免费套餐导出被阻;非积分问题,属订阅层级 - 429` —— 触发限流;等待 30 秒再重试一次 ## 常见工作流 快速编辑:上传 → “add a natural-sounding AI voice reading my script over this video” → 下载 MP4。30 秒片段约 30-60 秒完成。 批量风格:一次会话上传多个文件。逐条下达不同指令,每条各自渲染。 迭代式:先粗剪,预览结果,再微调。会话保持时间线状态,可持续修改。 ## 技巧与提示 后端在指令具体时处理更快。与其说“make it look better”,不如说“add a natural-sounding AI voice reading my script over this video”——具体指令效果更好。 最大文件 500MB。优先使用 MP4、MOV、AVI、WebM 以获得最流畅体验。导出为 MP4 可在各平台设备获得最佳兼容性。