使用 Wav2Lip 模型对视频进行 AI 口型同步
无论是在制作配音电影项目、制作音乐视频还是创建生动的教育内容,将嘴唇动作与音频相匹配都是一项艰巨的任务。在今天,可以借助 AI 模型 Wav2Lip 来完成这项艰巨任务。它提供了一个复杂的解决方案,使用音频输入生成口型同步视频,使其成为内容创建领域的游戏规则改变者。只需上传想要讲话的图片以及希望他们讲话
的录音即可。
本指南将引导了解使用 Wav2Lip 模型的细微差别,目前在 AIModels.fyi 上的受欢迎程度排名第 35 。将深入研究它的功能,了解它的输入和输出,并逐步学习如何使用它来制作口型同步视频。此外,还将探索如何利用 AIModels.fyi 来发现类似的模型并选择最适合需求的模型。
关于 Wav2Lip 模型
由devxpy创建的 Wav2Lip 模型提供了从音频源创建口型同步视频的独特解决方案。可以上传图像和音频文件,模型会将两者转换为口型同步视频,图片主题看起来正在说出音频文件中的单词。
可以在此处查看该视频中的示例输出。
正如将在模型的详细信息页面上看到的,Wav2Lip 是一个音频到视频模型,在强大的 Nvidia A100 (40GB) GPU
硬件上运行。它的平均运行时间仅为 7 秒
,每次运行成本仅为 0.0161 美元
,为内容创作者提供了快速且经济高效的解决方案。
该模型非常受欢迎,运行次数超过 576,015
次,使其成为 AIModels.fyi 上运行次数第 35
位的模型,而 devxpy 在创建者排名中排名第 25
位。
Wav2Lip 模型的输入和输出
在深入研究如何使用 Wav2Lip 模型之前,先探讨一下它所需的输入及其生成的输出。
输入
Wav2Lip 模型需要以下输入:
- 脸部 Face:包含要使用的脸部的视频或图像文件。
- 音频 Audio:用作原始音频源的视频或音频文件。
- Pads:用于填充检测到的面部边界框的字符串输入。可能需要调整它以至少包括下巴。格式为
上左下右
。 - Smooth:布尔输入,用于决定是否在短时间窗口内平滑面部检测。
- fps:仅当输入是静态图像时才能指定。
- Resize_factor:一个整数输入,用于将分辨率降低某个因子。有时,最好的结果是在
480p
或720p
下获得。
输出
模型的输出遵循特定的模式:
{
"type": "string",
"title": "Output",
"format": "uri"
}
定义了这些输入和输出后,现在就可以开始使用模型并创建口型同步视频了。
使用 Wav2Lip 模型
无论是编码爱好者还是喜欢更直观的方法,Wav2Lip 模型都能满足需求。
编码时,该模型在 Replicate 上提供了一个用户友好的界面。可以使用演示链接直接与模型交互、使用其参数并获得即时反馈。
对于那些想要深入研究代码的人,请按照以下步骤使用 Wav2Lip 模型。
第1步:安装依赖
首先,通过在终端中运行来安装依赖:
npm install replicate
第 2 步:使用 API 令牌进行身份验证
接下来,创建文件 .env
用来存储 API 令牌等配置信息,申请 API Token,可以点击这里申请 API Token :
REPLICATE_API_TOKEN=your_api_token
第 3 步:运行模型
现在可以使用以下代码来运行 Wav2Lip 模型:
import Replicate from "replicate";
const replicate = new Replicate({
auth: process.env.REPLICATE_API_TOKEN,
});
const output = await replicate.run(
"devxpy/cog-wav2lip:8d65e3f4f4298520e079198b493c25adfc43c058ffec924f2aefc8010ed25eef",
{
input: {
face: "face_input",
audio: "audio_input",
// Other parameters as needed
},
}
);
第 4 步:设置 Webhook(可选)
可以指定预测完成时要调用的 Webhook URL,实现可以参考以下代码:
const prediction = await replicate.predictions.create({
version: "8d65e3f4f4298520e079198b493c25adfc43c058ffec924f2aefc8010ed25eef",
input: {
face: "face_input",
audio: "audio_input",
// Other parameters as needed
},
webhook: "https://example.com/your-webhook",
webhook_events_filter: ["completed"],
});
通过设置 Webhook,可以在预测完成时收到通知,这对于长时间运行的任务特别有用。
总结
在本文探索了 Wav2Lip 模型的特色功能,深入研究了它的功能,了解了它的输入和输出,并逐步完成了使用它创建口型同步视频的过程。