视频音频对嘴--Wav2Lip

之前介绍了将图片加音频进行对嘴处理,生成新的视频:

基础版: https://www.cnblogs.com/cj8988/p/18952604

进阶版(加表情) :https://www.cnblogs.com/cj8988/p/18957718

这里介绍一个视频对嘴,一个视频加音频进行对嘴,生成新的视频。

Wav2Lip-HD:改进Wav2Lip以实现高保真视频。

一:源码下载

核心源码:https://github.com/saifhassan/Wav2Lip-HD

高清处理源码:https://github.com/xinntao/Real-ESRGAN

Real-ESRGAN解压后放到Wav2Lip-HD文件夹中。

二:模型下载

根据文档,下载相应模型,然后放到相应的位置上。

Wav2Lip: https://drive.google.com/drive/folders/1tB_uz-TYMePRMZzrDMdShWUZZ0JK3SIZ

ESRGAN: https://drive.google.com/file/d/1Al8lEpnx2K-kDX7zL2DBcAuDnSKXACPb/view

Face_Detectionhttps://drive.google.com/file/d/1uNLYCPFFmO-og3WSHyFytJQLLYOwH5uY/view

Real-ESRGANhttps://drive.google.com/drive/folders/1BLx6aMpHgFt41fJ27_cRmT8bt53kVAYG

Real-ESRGAN: https://drive.google.com/file/d/1qNIf8cJl_dQo3ivelPJVWFkApyEAGnLi/view

下载的相应模型就放到相应位置:

下载一个ffmpeg.exe 放到根目录下Wav2Lip-HD:https://ffmpeg.org/download.html

(如果最新版本不行,可以下载6.1版本:ffmpeg version 6.1-full_build)

三:运行

(1):安装一个虚拟环境(window的Anaconda)进行运行,这样就不会破坏本地的换,没有Anaconda的需要下载安装:https://www.anaconda.com/download/success

(2)创建虚拟环境:

复制代码
#创建虚拟环境,这里使用3.10的环境:
conda create --name wavalip python=3.10

#查看环境:
conda info --envs

#激活环境:
conda activate wavalip

#退出:
# conda deactivate

(3)运行:

需要先修改一下文件:run_final.bat。将视频和音频放到相应位置,然后修改这里的文件名字。

可以先注释代码中的 REM Step 2 ~ REM Step 4,只保留第一个 Step 1。

第一步就是视频根据你的音频进行对嘴处理,生成新的视频。

Step 2 ~ Step 4 就是对你的视频进行高清处理,这一步是很耗时的,很慢的。

复制代码
#在虚拟环境中运行
#激活环境:
conda activate wavalip

#运行
run_final.bat

#如果有报错,根据报错安装相应的包
# pip  install  ...

不打开高清处理,应该还是很快的,生成的视频在文件夹: output_videos_wav2lip 中。没有问题后,可以打开Step 2 ~ Step 4。打开后会很慢,建议找的视频和音频时长一样,而且尽量段一些,这样可以减少生成时间。

打开高清处理,生成的视频在:output_videos_hd 文件夹中。

看了一下日志,先使用Wav2Lip生成对嘴视频,然后将视频拆分为每一帧图片(文件夹frames_wav2lip中查看),然后将所有图片高清处理(处理后的图片在文件夹frames_hd 中),最后将高清图片转为视频,并且加上音频。

最后生成的就是高清对嘴视频。(如果视频有两人,音频也有应该有两个人)。

平台视频截图:

高清视频截图:

很明显,如果条件可以,最好进行高清处理,这样生成的视频才能看。

查看文档:

https://github.com/saifhassan/Wav2Lip-HD

https://github.com/Rudrabha/Wav2Lip