Happy Horse 1.0(fal)实操:一遍生成 1080p + 同步音频的视频
你要的如果是这种片子:
- 角色说话,口型跟声音对得上
- 直接出 1080p
- 音频和视频是“联合生成”,不是后期硬贴
- 想批量跑:一天出几十条投流素材、产品讲解、短剧片段
那 Happy Horse 1.0 这波就很对味。它的核心价值就一句话:音频 + 视频同一条链路一次生成,省掉一堆后期缝合。
下面按“能上手就能跑”的思路写,别担心术语,照着抄就行。
你能用它做什么(真实场景版)
- 电商口播:同一段产品文案,换 5 个不同人设/场景,批量出 20 条。你只管挑最好的一条投放。
- 出海广告:同一个视频脚本,换英语/西语/日语配音,口型同步,不用重新剪。
- 公司介绍/课程开场:你录好一段声音,模型负责把“讲话的画面”配出来,像一个主持人。
生成逻辑:你要准备的就三样
-
画面意图:你希望镜头长什么样(人物、风格、机位、光线、背景)
-
音频:一段配音(wav/mp3 均可,建议干净一点)
-
约束条件:清晰度、时长、画幅、是否要更强的动作幅度
Happy Horse 1.0 的特点是:音频会参与视频生成,所以“说话的节奏”和“嘴部动作”通常更稳。
开始前:把音频这件事做对(省你 80% 的返工)
音频不干净,口型就容易飘,情绪也会怪。
建议这样做:
- 采样率:16k 或 48k 都行,别用奇怪的低码率。
- 干声:少混响、少背景音乐。
- 停顿别太长:中间空 2 秒那种,模型容易“尬住”。
- 语速稳定:忽快忽慢容易导致嘴部动作抽搐。
想偷懒?用任意 TTS 先出一段清晰人声也行。后面你再换真人配音。
提示词怎么写:别写散文,写“拍摄指令”
把提示词当成你在给摄影师和演员发指令。
✅ 推荐模板
- 主体:年龄/性别/气质/服装
- 镜头:半身/近景/特写、镜头稳定、对焦点
- 场景:背景简洁、办公室/厨房/街景
- 光线:柔光、电影感、自然光
- 风格:写实、商业广告、纪录片
- 动作约束:说话自然、头部微动、手势轻微
示例(适合口播)
A confident female presenter, 25-35 years old, natural makeup, wearing a simple blazer.
Medium close-up, stable camera, sharp focus on face.
Clean modern office background, soft daylight, realistic commercial style.
Natural speaking motion, subtle head movement, minimal hand gestures.
不建议:
- 写“情绪澎湃、灵魂震颤”这种词,模型不会因此更会演,只会更随机。
在 fal 上跑:两种方式(你选顺手的)
你在 fal 上的具体模型标识(model name)以控制台/文档为准。下面用“占位符”写法演示调用结构。
方式 A:控制台直接跑(适合试水)
你进 fal 控制台,找到 Happy Horse 1.0:
- 贴提示词
- 上传音频
- 选 1080p
- 提交生成
跑通一条后,再去做批量。
方式 B:用 API 批量跑(适合生产)
下面给你一个通用思路:
- 把音频传到可访问的 URL(fal 通常支持上传/托管)
- 调用生成接口,传入 prompt + audio_url + 输出规格
- 拿到结果视频 URL,写入表格或数据库
Node.js 伪代码(结构示意)
import fal from "@fal-ai/serverless-client";
fal.config({ credentials: process.env.FAL_KEY });
async function run() {
const input = {
prompt: "你的提示词...",
audio_url: "https://xxx/voice.mp3",
resolution: "1080p",
// 下面这些参数是否存在、叫什么名字,以 fal 实际文档为准
// duration_sec: 8,
// aspect_ratio: "9:16",
// seed: 123,
};
const result = await fal.subscribe("fal-ai/happy-horse-1.0", {
input,
logs: true,
});
console.log(result);
}
run();
批量生成的最小可行流程
- 准备一个 CSV:
id, prompt, audio_url - 脚本逐行调用
- 每条任务保存:
status, video_url, cost, seed/参数
你会发现这东西一旦“流水线化”,出片速度非常恐怖。
让画面更稳的 6 个小技巧(亲测好用)
- 镜头别太花:口播就“中近景 + 稳定机位”,别写无人机运镜。
- 背景越干净越稳:复杂背景容易抢算力,脸部细节会掉。
- 动作写“少”:想要自然说话,就明确“subtle / minimal”。
- 给人物一个职业身份:比如 presenter / teacher / salesperson,模型更懂“怎么演”。
- 时长别贪:你要 30 秒一镜到底?能做,但成本和翻车率都会上去。短一点,多出几条去选。
- 用固定种子做 A/B(如果支持 seed):同一音频 + 同一 prompt,微调光线和服装,画面一致性更强。
避坑清单(少走弯路就是省钱)
- 口型不同步:大概率是音频混响重、噪音大、停顿过长。先把音频“洗干净”。
- 人物脸崩/抖动:背景太复杂、动作描述太激进、镜头写了过多运动。
- 音画像后期贴的:你可能走了“视频生成 + 另配音”的路线。要用“联合音视频生成”的接口/模式。
- 商业使用踩雷:看到“限制更少”不等于“无限制”。投放前把授权条款、素材来源、人物肖像风险看明白。
一套可直接复制的工作流(适合团队)
- 文案同学:出 10 条短脚本(每条 6–10 秒)
- 配音:用 TTS 快速出 10 条干净音频
- 你:写 3 套人物/场景提示词(共 30 个组合)
- fal 批量跑:一次出 30 条 1080p 成片
- 选片:挑 5 条最自然的,替换真人配音再跑一轮(或继续用原音频)
这套跑熟了,短视频素材真能做到“今天写,今天投”。😄
你可以直接用的提示词(3 套)
1)电商口播(干净、可信)
A friendly e-commerce host, wearing casual smart outfit.
Medium close-up, stable camera, sharp facial details.
Bright clean studio background, softbox lighting, realistic commercial look.
Natural speaking motion, subtle head movement, slight hand gestures.
2)课程讲师(更像培训/公开课)
A professional instructor in a minimal classroom.
Medium close-up, steady framing, clear eyes and mouth details.
Neutral background, soft daylight, documentary realistic style.
Calm natural speaking motion, minimal gestures.
3)出海广告(更“海外制作”质感)
A confident presenter, modern lifestyle commercial style.
Medium close-up, stable camera, cinematic but realistic lighting.
Simple background with depth of field, sharp focus on face.
Natural speaking, subtle expressions, minimal movement.
结语
Happy Horse 1.0 最爽的一点,就是把“对口型”和“1080p 出片”变成同一个动作。你不需要剪辑软件里反复对齐,也不用担心音画像拼接。
你要是愿意,把你准备做的场景(电商/课程/短剧/出海)和目标画幅(9:16 还是 16:9)发我,我可以按你的用途给一套更贴的 prompt 模板和批量任务表结构。