使用 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 模型的特色功能,深入研究了它的功能,了解了它的輸入和輸出,并逐步完成了使用它創建口型同步視頻的過程。