yeha.ai
返回模板库

剧情短片(音色参考)

将创作草稿带入工作台;多阶段流程供参考,不会自动执行或扣费。

支持两种启动方式:用户上传剧本,或由 agent 根据用户提供的主题/需求代写剧本。随后使用 Nano Banana + Seedance 2.5(分辨率 480p) 生成视频。在关键阶段暂停以供用户确认;基于一镜到底工作流的人机协作。

流程正文保留原始中文。模板提及的模型不等同于本站已接入模型;实际可用模型与积分以工作台显示为准。

完整创作流程

1. 流程规划

完整视频的阶段逻辑和依赖关系:

  1. 剧本获取(二选一):
    • 用户已上传剧本文件(图片/PDF/文本): 使用 resource_prepare_and_analyze 解析并一句话总结剧本内容,提取故事结构、角色和场景信息,作为后续步骤的输入。解析完成后,向用户输出摘要并请确认内容理解无误,再进入步骤2。确认前不得进入步骤2。
    • 用户未上传剧本: 通过 reply_to_user 以卡片引导方式分组收集以下信息(分两轮卡片,第一轮收集核心需求,第二轮收集风格与约束):
      • 第一轮卡片(核心需求): ① 视频主题/故事核心一句话描述;② 视频类型(短片/广告/宣传片/微剧/其他);③ 主要角色数量与大致背景。
      • 第二轮卡片(风格与约束): ① 整体视觉风格与基调(例:写实、赛博朋克、温情、黑色电影等);② 大致时长(例:30秒以内 / 1–2分钟 / 3分钟以上);③ 特殊要求或参考作品(选填)。
      • 收到两轮回复后,由 agent 起草完整剧本(含场景划分、角色对话、动作描述),以 reply_to_user 完整输出给用户审阅
      • 显式确认检查点: 剧本草稿输出后,必须暂停并明确请用户确认——可通过卡片提供"✅ 剧本确认,继续制作"、"✏️ 需要修改剧本"两个选项。收到明确确认前,不得进入步骤2。 若用户要求修改,根据反馈修改剧本后重新请确认,循环直至确认通过。
  2. 编写 Final_Video_Spec.md(标题、类型、画幅、时长、视觉风格、语言、模型偏好) → text_editor
  3. 生成与第1步剧本相符的故事板(关键元素、镜头列表、音频层) → storyboard_designer
  4. 设置元素:
  • 如果用户已经上传了元素资源(例如角色图像或引用的参考角色),直接将其绑定为相应 key_elements 的资产。
  • 否则,为所有元素生成图像 → media_generator

4b. 为每个有对话台词的角色建立 key_element_audio(音色锚点),以保证 Seedance 2.5(分辨率 480p) 跨镜头音色一致性:

  • 询问用户是否有角色的 voice reference 文件可上传。
    • 用户已上传 voice reference 文件: 通过 media_generator 将音色参考注册并绑定到对应角色的 key_element_audio → media_generator
    • 用户未上传: 向用户提供以下两条路径选择(通过卡片),并说明各自的积分消耗差异:
      • 路径 A — 旁白模型生成音色: 使用旁白生成模型,为每个角色从剧本中选取一段约3-5秒左右的台词对话(dialogue),生成对应的语音音频;将生成的音频注册并绑定到对应角色的 key_element_audio → media_generator
      • 路径 B — Seedance 视频提取音频(消耗积分较多,需提示用户): 使用 Seedance 2.5(分辨率 480p)(MultiModalToVideo),参考该角色的元素图像,根据角色剧本台词生成一段约5秒的视频,视频中必须包含该角色开口讲话;生成结果同时注册为该角色元素的视频资产;再通过 resource_prepare_and_analyze 从视频中提取音频,将提取的音频注册并绑定到对应角色的 key_element_audio → resource_prepare_and_analyze + media_generator
  1. 每个镜头生成最终视频;参考该镜头的元素图像,同时将对应角色的 key_element_audio 作为音频条件输入,确保跨镜头音色一致 → media_generator
  2. 基于故事板生成所有 audio_layers → media_generator
  3. 当所有资源就绪后进行最终剪辑;然后引导用户导出 → video_assembler

依赖关系: 2→1;3→1,2;4→3;4b→4;5→2,3,4,4b;6→3;7→3,4,5,6。

注意 — 用户提供或预先存在的媒体(主要影响步骤3–6): 在填补生成内容之前,通过 media_generator 将其绑定并分配到适当的分镜位置;避免重复生成用户已提供的内容。

何时暂停: 不要一次性完成所有步骤。在上述每个关键阶段(例如:规范确认后、故事板生成后、元素图像生成后、关键帧生成后、镜头视频生成后、音频生成后)停下来,与用户确认,然后再继续。在继续之前,使用卡片或 reply_to_user 邀请用户进行审阅。

2. 多模态分析

仅在用户上传了剧本文件时调用此工具。

  • 解析上传的剧本文件(图片/PDF/文本),提取故事结构、角色列表、场景划分、关键对话和动作节点。
  • 输出一句话故事摘要,以及结构化的关键信息(角色、场景、故事线索),供后续 Final_Video_Spec 和 storyboard_designer 使用。
  • 如果文件无法解析或内容不完整,向用户说明并请求补充信息。
  • 音频提取(路径 B 专用): 当需要从角色的 Seedance 2.5(分辨率 480p) 生成视频中提取音频时,使用本工具的音频提取能力,将提取结果输出为独立音频资产,供后续 key_element_audio 绑定使用。
3. 故事板设计

脚本忠实度(最高优先级)

  • 用户上传了剧本时: 分镜中的对话、旁白、动作结果和场景顺序必须与上传的脚本及第1步的分解严格一致。仅允许技术性编辑:拆分镜头(≤30s)或添加镜头语言字段。不要虚构情节或改写台词。
  • 由 agent 代写剧本时: 以用户确认后的剧本文本为唯一依据展开分镜设计,同样不得在此阶段擅自修改情节或台词;如发现逻辑问题应先暂停并向用户确认,再继续。

如何设计关键元素

  • 始终包含关键主体(角色、物体等)、关键地点/场景关键道具(如有)。
  • 如何规划 element_id: 当每个角色、道具或场景是独立实体时,为每个实体分配一个 element_id(例如 [Element_Detective_Li],[Element_Boss_Zhao];[Element_Observation_Room],[Element_Chief_Office])。
  • 如何编写描述:
    • 角色: 如果角色在项目中具有多种状态或外观(例如不同的服装、年龄),请在描述中清晰地描述每一种(例如:外观1:…;外观2:…)。包括角色的声音/音色,以便后续音频生成匹配。
    • 关键地点/场景: 描述场景中重要物体的位置和朝向,特别是道具或发生主要动作/表演的区域。
    • 用户提供的资产: 如果用户提供了参考媒体并将其指定为关键元素,则描述必须与该资产匹配;不要与所见或所听到的内容相矛盾。

如何设计镜头

  • 每个镜头描述必须包含:场景(元素)故事和表演(具体台词)镜头语言(景别、角度、运动)。
  • 视觉设计和故事事实必须与脚本相符。如果脚本省略了镜头覆盖范围,您可以从类型和基调中专业地推断构图和运动,但绝不能改变情节事实或对话。
  • 倾向于使用内部剪辑的长镜头(例如每个镜头10–30秒)。在镜头内部设计剪切,而不是拆分为许多短镜头;剪切频率应遵循故事节奏。每个镜头不得超过30秒(当前模型最大时长限制)。
  • 当镜头有内部剪切时: 在场景/设定之后,按剪切顺序排列故事内容和镜头语言。使用明确的时间和剪切标记,例如 "Shot1 (0–4s): [场景], [角色]做X,特写。Shot2 切至 (4–8s): … Shot3 切至 (8–12s): …"
  • 每个镜头描述必须包含:
    • 场景: 引用地点/布景(使用场景元素ID,例如 [Element_Office_Noir])。
    • 故事内容: 角色和关键物体的动作与动态;对话和表演。写出确切台词(口语对话或内心独白/画外音)。使用元素ID引用角色。
    • 镜头语言: 景别、角度、运动。

如何设计独立音频

  • 背景音乐: 至少一个全局背景音轨;风格和节奏与参考资料或“最终视频规范”相匹配;如果参考资料有明确的节奏/情绪变化,请拆分BGM片段并定义范围。(每个都有自己的 audio_id 和范围)。
  • 旁白: 如果参考资料有旁白或对话,请在 audio_layers(类型 narration)中设计旁白或对话,包含内容、声音/语调和时间范围;
4. 媒体生成

元素资产生成

  • 图像: 使用 TextToImage。对于同一角色在不同外观或年龄下的表现,建议使用 ImageToImage;后续的外观应参考之前生成的图像以保持一致性。推荐模型:Nano Banana 2 (Gemini 3.1 Flash Image),分辨率 2K
    • 角色图像: 为每个角色生成 1 张参考图像:使用水平并排布局。画面的左侧应显示角色的头像(紧凑构图,聚焦于面部,用于确认身份、肤色、眼睛、发际线);右侧应显示角色的全身照(展示全身,用于服装、发型、妆容、鞋子和轮廓)。
    • 角色声音: 根据用户路径选择
      • 用户已上传 voice reference 文件: 将音色参考注册并直接绑定到对应角色的 key_element_audio,不需要重新生成;
      • 用户未上传: 向用户提供以下两条路径选择(通过卡片),并说明各自的积分消耗差异:
        • **路径 A — 旁白模型生成音色:中文推荐模型 MiniMax Speech 2.8 HD;英文推荐使用模型 ElevenLabs v3
        • 路径 B — Seedance 视频提取音频(消耗积分较多,需提示用户): 使用 Seedance 2.5(分辨率 480p)(MultiModalToVideo),参考该角色的元素图像,根据角色剧本台词生成一段约3-5秒左右的视频,视频中必须包含该角色开口讲话;生成结果同时注册为该角色元素的视频资产;再通过 resource_prepare_and_analyze 从视频中提取音频,将提取的音频注册并绑定到对应角色的 key_element_audio → resource_prepare_and_analyze + media_generator

最终镜头视频生成

  • 使用 MultiModalToVideo。推荐模型:Seedance 2.5,分辨率 480p
  • 每个镜头的参考输入必须包括:
    1. 元素资产 — 对于镜头中的每个角色,参考故事板中的元素图像+根据需要参考场景/道具图像。
    2. 连贯性视频参考(可选)— 仅在当前镜头与前一个镜头具有极高连贯性时,才添加前一个镜头的视频参考。
5. 提示词撰写

优先级最高、适用于所有prompt编写情况:当用户使用中文输入或是加载中文语言环境时,提示词prompt需要用中文书写。但是prompt中有关旁白/对话的内容要严格遵循Final_Video_Spec中的Output Language。

图像生成提示词 (TextToImage, ImageToImage)
所有图像提示词的通用原则

  • 提示词不仅是描述“画面里有什么”,更像是一位真正的电影导演和调色师在指导团队。
  • 使用通顺的自然语言描述场景内容(主体 + 行为 + 环境等),并使用简短的词组描述视觉美学(风格、颜色、光影、构图)。拒绝文学化的修饰:不要向 AI 解释角色的动机或内心状态(例如“仿佛他不关心这张照片”)。不要描述屏幕外或不可见的元素。只描述物理上可见的内容。
  • 对于所有图像提示词(任何角色):您必须在所有目标风格中全局应用“电影级提示词的 6 大核心规则”,以确保电影质感。将提示词写成流畅、自然的英语描述,将这 6 条规则编织在一起。不要将它们输出为带有标签的章节:
    • 专业风格术语:结合使用专业艺术或电影术语与风格术语以提高准确性。(例如,引入“作者”和特定的电影视觉锚点,使用 Neo-Noir style, David Fincher Style, inspired by Se7en 作为风格锚点,而不是泛泛地说明 Neo-Noir 风格)。
    • 构图与镜头:明确指出电影化构图(例如 Over-the-shoulder shot(肩后镜头)、Dutch angle(荷兰角))和景别(例如 Close-up(特写)、Medium shot(中景))。
    • 光影:详细说明主光,并强调“负补光”以增加对比度和戏剧感(例如 Strong chiaroscuro contrast(强烈的明暗对比)、dramatic interplay of light and shadow(光影的戏剧性交织)或 deep facial shadows emphasizing facial structure(强调面部结构的深面部阴影))。
    • 调色:使用高端好莱坞调色手法设定克制的色调(例如 deep teal-cyan shadows dominating 90%, zero warm fill(90% 的深青色阴影,零暖光填充)或 muted watercolor wash(柔和的水彩洗色))。除非用户明确要求,否则永远不要使用红蓝霓虹冲突(例如禁止 crimson bleed(深红晕染)、霓虹洋红 vs 青色)。将图像限制在 90% 左右的区域内仅使用一种主色调(例如深青色)——极度克制。
    • 视觉渲染:描述内容的整体视觉质量和纹理(例如 fine rendering quality(精细渲染质量)、rich and intricate details(丰富错综的细节)、soft-focus effect with subtle Gaussian blur(带轻微高斯模糊的柔焦效果))。
    • 氛围与潜台词:描述角色的“潜台词”和微表情,将动作定格在戏剧性的时刻(例如 oppressive suffocation(压抑的窒息感)、no mercy(冷酷无情)、predatory stillness(捕食者的静止))。拒绝生硬、摆拍的样子。对于无生命物体,描述其状态(例如 Destined aura(宿命光环)、piercing gaze(锐利的目光)、cold and detached atmosphere(冷漠疏离的氛围))。
    • 条件元素(仅在相关时包含):
      • 准确的画面内文字:当相关时,如果场景中出现文字(例如屏幕文字),请自然地整合它。您必须用引号包裹需要渲染的确切文本内容以示强调。例如:'A neon sign in the background reads "DANGER".'。

当目标角色是 key_element(关键元素)时
提供清晰、详细的元素视觉定义,以便在镜头间保持一致。提示词结构应围绕:

  • 主体与身份:清楚说明元素是什么 — 角色、道具、场景或生物。对于角色,包括定义的身份特征(年龄、体型、种族(如果指定)、显著特征、声音)。
  • 特征细节:具体描述该元素的关键视觉特征。优先考虑在镜头间必须保持一致的特征:
    • 角色:面部特征(眼睛形状、下颌线、发型/颜色)、妆容与造型(如果相关)、服装与配饰(材质、剪裁、颜色、状况)。
    • 道具/物体:形状、材质、颜色、尺寸、状况(新/风化/损坏)、独特的标记。
    • 氛围/情感基调:描述定义场景的情感潜台词(例如张力、忧郁、希望、宁静、不安、温暖、压迫、恐惧、怀旧、孤立、亲密)。
    • 为了保持画面整洁,不要在画面中生成文字。

当目标角色是关键帧(起始帧、结束帧或高亮帧)时
首先,在镜头的 Description 中定位相应时刻:确定确切的节拍 — 开始状态、结束状态或视觉/戏剧性最强的瞬间 — 并以此为基础。如果镜头描述没有清楚地描绘那一刻,请在脑海中模拟该镜头(主体运动 + 摄像机移动 + 环境变化),想象场景在那个瞬间的样子,然后自己填充细节。无论哪种方式,只描述那个瞬间的静态图像 — 可见的内容、构图方式以及所有事物的状态:

  • 起始帧: 展示动作开始前的场景 — 主体在运动前的姿态和意图(重心偏移、注视方向、肢体预加载)、环境的基础状态,以及摄像机的初始构图和角度。
  • 结束帧: 展示动作完成后的直接结果 — 主体的终结姿势或最终表情、环境变化后的状态,以及摄像机准备下一次剪辑的最终位置。
  • 高亮帧: 确定镜头中视觉或情感冲击力最强的那一刻(例如,撞击的顶峰、揭示真相落入角色脸上的那一刻、结晶镜头主题的构图)。定格并以最大程度的细节描述那一帧 — 姿势、表情、光照状态、摄像机构图 — 这样它就可以作为该镜头中最具感染力的静止画面独立存在。

视频生成提示词
按照以下 Seedance 顺序(摄像机 → 主体 → 空间 → 音频)追加运动/动态提示词:

  • 在编写提示词时遵循此顺序:
    1. 摄像机 — 运动或镜头/剪辑变化(例如 static → push-in(从静止到推入)、cut to new angle(切到新角度)、orbit(环绕)、pan(摇镜头))。
    2. 主体 — 动作和表情(谁做了什么,面部动作节拍)。
    3. 空间 — 位置或环境变化(相对于空间的主体或摄像机位置;背景运动;深度/布局转换)。
    4. 音频 — 对话(如有)、音效,以及如果模型中没有音乐时的备注(见下文)。
      动作细节
    • 相关时,基于 特定的身体部位:手、腿、头、肩膀等。
    • 添加 程度:幅度、速度、强度(例如 slowly raises one hand(缓慢举起一只手),snaps head left(头迅速向左转),pushes hard off the ground(用力蹬地))。
    • 对于一个提示词中的多个节拍,列出 主要动作,然后是次要动作(按故事的时间顺序)。
      多节拍与“镜头 1 / 镜头 2”(官方指南)
    • 当工具接受长提示词时,您可以在单次生成中标记 镜头 1, 镜头 2, 镜头 3 用于 摄像机或故事节拍 的序列。
    • 精确的时钟计时(例如“0–3 秒”、“3–6 秒”)无法可靠执行 — 不要强制按确切秒数范围分割提示词,也不要编写明确的逐秒计划(例如“在 2 秒时...”,“从 5-8 秒...”)。描述 按顺序发生的事情,而不是按时间安排的镜头列表。
      可选润色(当简报是电影级真人拍摄时): 您可以根据其他策略规则添加轻微的手持微抖动或微妙的胶片颗粒感 — 保持其从属于上述四层顺序。
      特殊角色约定(针对 Seedance 2.5(分辨率 480p))
      Seedance 接受自然语言提示词;这些包装符有助于模型区分 音乐音效对话屏幕标题文字
    • 音乐(描述正在播放的内容):(...),例如 (fast-paced rock playing in the background)(背景中播放着快节奏摇滚乐)。
    • 音效:<...>,例如 <distant dog barking>(远处的狗叫声)。
    • 口头对话:{...},例如 {Hello, world} — 如果台词 是项目原始语言(例如英语短片中的日语独白),请在花括号前 标注语言,例如 Says in Japanese: {こんにちは}。不要保留故事版规划中的引号,{...}内只包含对话文字。
    • 屏幕标题/章节/字幕文字:【...】,例如 【Chapter One: Departure】(第一章:启程)。

音频生成提示词(For MiniMax Speech 2.8 HD)

  • 停顿: 说话时,如需让镜头停顿,请使用 <#n#>,其中 n 表示停顿时长,单位为秒。推荐范围为 0.26–1.5。
  • 语气 / 非语言声音: MiniMax 只接受以下英文标签词,不支持同义词、翻译或自定义变体。即使 text_to_speak 是中文或其他语言,标签也必须保持英文;在编写带语气标签的旁白时,请忽略项目提示词 / 脚本的语言要求,保持这些标签的英文原样。
    • 允许使用的标签枚举为:(laughs), (chuckle), (coughs), (clear-throat), (groans), (breath), (pant), (inhale), (exhale), (gasps), (sniffs), (sighs), (snorts), (burps), (lip-smacking), (humming), (hissing), (emm), (sneezes)。如果用户要求的语气或非语言声音效果不在此列表中,不要自行创造标签,也不要用 (…) 形式表示它;应完全省略语气标签,只写普通的口播文本。

注意: 您必须始终在提示词中包含以下负面约束,以确保后期制作的输出干净:

  • 如果分镜脚本表明该镜头有单独的旁白音轨,请不要在视频提示词中写入旁白文本,以避免音频冲突。
  • 为防止模型添加不需要的背景音乐,您几乎应该始终包含 'no music'。
  • 字幕是在后期剪辑时添加的,因此您必须始终包含 'no subtitles'。
6. 视频合成

按分镜和时间轴顺序组装所有镜头、旁白音轨和BGM;当剪辑就绪后,引导用户导出。