文生视频与图生视频工作室
把一个想法或用户提供的素材制作成一条方向明确的短视频。先理解用户想要的结果,设计一个清楚易读的镜头,选择匹配的视频操作,并在提出下一个付费阶段前检查真实交付结果。
范围与相邻路线
此 Skill 适用于文生视频、指定一张开场图、指定首尾帧、使用宽松的多模态参考、修改已有视频,以及在一条源视频前后紧接着补充画面。它是面向短广告、产品故事、社交短视频、空镜、转场、揭示和电影感概念的综合视频工作区。
字幕、旁白制作、语音合成和时间线组装是独立工作。多镜头请求可以规划并交付为多条独立视频,但此工作流不声称会把它们拼接成一条时间线。如果用户只需要口播数字人或图片动起来,应使用聚焦的 talking-avatar 或 image-to-motion 工作流;如果用户需要更广泛的路线选择或多种不同镜头类型,则留在此处。
优先使用用户已经提供的素材。只有在缺少锚点或锚点不合适,并且这会实质影响人物身份、产品形态、构图或必要边界帧时,才提供可选的静态图片准备阶段。不要在未说明的情况下用图片生成替换可用素材或直接的视频请求。
输入与默认值
最低硬性输入是以下任意一种:
- 一段镜头文字描述;
- 一张必须作为开场帧且可访问的图片;
- 两张必须分别作为首帧和尾帧且可访问的图片;
- 顺序和用途明确、可访问的图片、视频或音频参考,数量和时长符合所选实时模型卡的限制;或
- 一条可访问的源视频,加上精确的修改指令或延长方向。
只询问会改变路线或结果的信息。复用已知的发布场景、时长、画幅、分辨率、主体、动作、运镜、节奏、音频意图、视觉参考和必须保留项。没有指定时,默认制作一条短视频,采用一个清楚易读的动作、一个主要运镜、model: "auto" 和所选模型的实时默认值。以源素材为主导的路线默认省略宽高比,除非用户明确同意改变画布。
对于宿主 Agent 能访问的本地图片、音频或视频,先检查素材,再使用随包上传助手:
python3 scripts/mcp_client.py upload ./approved-input.mp4 --mime-type video/mp4
上传只是传输,不是媒体检查。保留返回的 artifact 引用,绝不要把本地路径传给远程工具。
选择一条视频路线
每个逻辑付费阶段只选择一种视频操作:
- 没有必须使用的视觉来源:使用
beatra.videos.generate,并读取text_to_video模型事实。 - 一张图片是严格开场帧:使用
beatra.videos.animate,并读取image_to_video模型事实。 - 两张图片是严格首尾帧:使用
beatra.videos.interpolate,并读取frames_to_video模型事实。 - 有序图片、视频或音频素材用于指导一条新视频,但不固定边界帧:使用
beatra.videos.generate_from_references,并读取reference_to_video模型事实。 - 必须修改已有画面:使用
beatra.videos.edit,并读取video_edit模型事实。 - 必须在且仅在一条源视频前面或后面紧接着补充画面:使用
beatra.videos.extend,并读取video_extend模型事实。其必填整数duration是最终返回视频的总时长,必须大于可信的源视频时长,并不是要增加的秒数。
不要随意交换这些路线。编辑会改变已有内容,延长会续接一条视频,参考素材会指导一条新视频,图片动画会把一张图片保留为开场帧,插值则使用两个边界帧。beatra.videos.extend 既不会拼接多条视频,也不会组装时间线。
黄金路径
-
检查所有可访问的源素材。记录每份素材的角色及其真实 MIME 类型、字节大小、图片尺寸与宽高比、音频和视频时长,以及实时模型卡要求的其他事实。说明发布场景、一个可见事件、节奏、运镜、音频意图和必须保留项。如果宿主无法检查某项属性或素材本身,应直接说明,而不是编造。
-
从六条路线中选择一条。遇到来源含糊或多镜头工作时阅读意图与路线(references/intent-and-routing.md),并阅读镜头设计(references/shot-design.md)把目标整理成简洁方向。
-
在依赖模型可用性、可接受输入组合、媒体限制、控制项、时长、画幅、分辨率或价格前,为该路线的精确能力调用
beatra.models.list。除非用户选择了一个具体且符合条件的模型,否则保留model: "auto"。用户明确指定的模型必须按原请求评估,绝不能静默替换。 -
根据一张当前可用的模型卡检查完整 payload。按需比较真实媒体类型、MIME 类型、字节大小、尺寸、宽高比、时长、参考数量与组合,以及受支持的控制项。编辑和延长还要包含可信的源视频时长。如果缺少必需事实,或没有实时模型卡接受计划中的 payload,应在付费调用前停下,只请求最小的兼容素材或计划调整。
-
如果静态图片阶段有用,说明它控制什么、为何是最小有效准备,以及这是一次独立付费调用。缺少静态图时使用
beatra.images.generate;一至四张有序参考图需要组成新镜头画面时使用beatra.images.transform;使用beatra.images.edit时,images[0]是底图且只应修改有限部分。在构建依赖它的视频工作前,检查并批准交付的静态图。阅读图片辅助视频(references/image-assisted-video.md)。 -
展示路线、精确素材、方向、模型行为、时长、画布、分辨率、可选控制项、实时临时估算和付费调用次数。数值估算只能来自当前模型卡;终态任务的
billing.net_charged_credits才是最终值。用户明确要求制作已经准备好的视频,可以授权这个已冻结的视频阶段。仅做规划、比较,或模型、画布、媒体、数量仍未确定时,不构成授权。 -
使用一个不透明且稳定的
client_request_id冻结精确 payload。只调用随包客户端:把 MCP 工具名放在call后,并通过标准输入传入 JSON 参数。例如:printf '%s' '{"prompt":"A close product reveal with one slow push-in and a stable background.","model":"auto","client_request_id":"opaque-video-id"}' | python3 scripts/mcp_client.py call beatra.videos.generate不要配置、调用或依赖宿主 Beatra Connector。不要使用 REST/OpenAPI 作为降级方案。已冻结的请求只提交一次。
-
立即记录返回的任务 ID,并使用
beatra.tasks.get轮询同一任务直到终态。queued 和 running 表示仍在进行,并非失败。不要因为任务较慢而重新提交。 -
交付所有返回的视频或图片 artifact 或链接。只报告真实的终态状态、解析后的模型、尺寸、时长、用量和
billing.net_charged_credits。检查可访问的结果是否符合请求的动作、主体稳定性、运镜、连续性、音频、必须保留项和发布场景,并说明宿主 Agent 能检查与不能检查的内容。 -
推荐最小有效的下一步:接受视频、做一次聚焦编辑、延长视频,或重新生成。绝不要暗示一条未经检查的视频已经是完成的宣传成片。
多镜头工作与付费确认
对于多镜头请求,把每个镜头规划为单独交付的视频。在执行前冻结镜头清单、每个阶段的路线和精确 payload、依赖关系、可选静态图阶段、付费调用总次数和临时估算。如果用户要求制作该序列,并且所有阶段都清楚可见,一次明确确认可以授权整套已冻结序列;否则分别确认每个阶段。每个付费请求仍须使用自己的稳定 ID,并且只提交一次。
按顺序运行依赖阶段。先检查图片再制作对应视频;在下游依赖某条视频或返回的最后一帧前,也先检查它。如果某次交付实质改变了下一个已批准镜头,应暂停并重新规划下一阶段,而不是静默沿用过时假设。交付独立视频,并说明时间线组装不属于此工作流。
变更、恢复与取消
工具、模型、来源、来源顺序、提示或指令、方向、时长、宽高比、分辨率或可选控制项发生变化,都属于新的逻辑付费工作。分配新 ID 并重新获得批准,除非该变更已包含在一个冻结且获批的多镜头序列中。绝不要为变化后的参数复用 ID。
如果创建响应丢失,只能使用相同请求 ID 重试完全一致的已冻结 payload。如果任务 ID 丢失,针对相关能力调用 beatra.tasks.list,再用 beatra.tasks.get 检查可能的候选任务,并对照私有请求台账匹配,然后才可以考虑完全一致的重试。规划替代工作前先恢复原请求;绝不要重复提交付费请求,也不要猜测其 artifact、扣费、退款或状态。
只有用户要求取消时才调用 beatra.tasks.cancel。只调用一次,并使用 beatra.tasks.get 确认产生的终态。409 并不表示已取消,因此应继续轮询同一任务,而不是创建替代工作。
按任务查阅参考资料
- 阅读意图与路线(references/intent-and-routing.md),以分类用户提供的媒体、区分全部六条路线,或规划单独交付的多镜头内容。
- 阅读镜头设计(references/shot-design.md),以设计主体动作、运镜、节奏、画布、音频意图和保留重点。
- 仅在缺少或不合适的静态锚点可能需要单独图片阶段时,阅读图片辅助视频(references/image-assisted-video.md)。
- 阅读视频方案(references/video-recipes.md),以查看精确 payload 形态、按路线进行的实时模型与媒体准入、上传语义和付费执行。
- 阅读检查与迭代(references/review-and-iteration.md),以检查终态结果并选择一个聚焦的下一步操作。
- 仅在授权或共享凭据需要处理时阅读安装与身份验证(references/installation-and-auth.md)。
- 阅读安装注册(references/installation-registration.md),了解不计费的尽力而为包注册步骤。
- 阅读任务与结果(references/tasks-and-results.md),了解共享任务和 artifact 语义;阅读账单、错误与恢复(references/billing-errors-and-recovery.md),了解返回的账单或错误详情。
- 当随包客户端无法连接时阅读随包 MCP Client 连接诊断(references/mcp-connection.md)。不要配置宿主 Connector。
- 阅读自动更新与安全(references/automatic-updates-and-safety.md),了解更新保证与控制项。
- 仅在用户要求删除此包或共享凭据时阅读卸载与断开连接(references/uninstall-and-disconnect.md)。
运行时与安全自动更新
每次 Beatra 操作都只能使用或调用随包的 scripts/mcp_client.py。在执行普通命令前,它会静默检查更新,每个安装最多每 24 小时检查一次。静默检查默认启用,发现更高版本时不另行确认便会自动安装。
更新器只接受针对此包、渠道和语言环境内置的固定官方发现地址与不可变 Beatra CDN 路径。替换前,它会校验压缩包、清单和每个文件的大小与校验和。它只替换本包文件,并拒绝重定向、降级、错误的包/渠道/语言环境/版本数据、意外 URL、不安全归档和目标目录之外的文件。
更新检查、下载、验证、替换、回滚或恢复失败时保持开放:当前安装仍可使用,用户原本请求的命令继续执行。更新失败绝不授权重试付费生成。自动更新设置持续生效,并会在此安装的后续命令之间持久保存:
python3 scripts/mcp_client.py update --auto off
python3 scripts/mcp_client.py update --auto on
python3 scripts/mcp_client.py update --check
--auto off 会关闭静默检查,--auto on 会重新启用,--check 只报告官方可用版本而不替换文件。
Scan to join WeChat group