LipSync口型离线解析(上)

LipSync说明

LipSync是最新推出的,针对口型匹配的新解决方案。能够实时以及预先分析声音素材,得到声音素材所包含的信息后,将其运用于模型上,通过变更模型的变形效果,综合控制口型的变化,以达到口型和语音匹配的目的。

LipSync主要有两种应用模式,实时解析和预先分析。

  1. 实时解析可以通过话筒录入实时分析录入的声音内容,进行分析最终得到相关的口型数据,进行模型变形匹配声音口型。
  2. 预先分析是通过将已经录音处理好的wav文件进行分析,得到相关的分析数据,当播放相关的wav文件时,可以使用事先分析好的数据进行模型的变形以匹配声音口型。

LipSync也拥有两种应用方法,单独使用和与ADX2联合使用

  1. 单独使用是LipSync单独应用,直接使用LipSync进行声音分析,最终得到口型数据和效果。
  2. 与ADX2联合使用,这种方式LipSync作为ADX2的插件使用,能够分析ADX2中Cue中Track轨道上的波形文件,生成相应的声音数据。分析相应的数据也可以事先分析或者实时分析,这种应用方式称为ADX LipSync也是本文中介绍的重点内容。
模型数据创建指南

由于口型同步需要声音数据和模型的变形效果,因此模型的变形效果制作的好坏也是决定口型同步效果的一大因素。

LipSync主要通过声音数据,驱动模型的变形效果,综合的变更各个模型变形的参数来集体的把控口型的变化自然和效果。

在模型的数据创建中,我们通过使用3D Max或者3D Maya等3d模型工具,创建相关的变形数据如图:

可以从上图看到,我们创建了相关变形器,并且添加了相关的变形数据,当我们变更变形数据的数值时就能看到变形效果:

这样一来我们的模型变形效果就处理完成,可以通过声音数据驱动变形效果的数值发生变化,同步口型。

Lipsync离线分析

单独使用Lipsync工具时,是使用Lipsync进行离线分析,通过分析wav声音波形文件直接生成文本数据。

Lipsync工具激活

Lipsync离线分析时需要对Lipsync进行激活,激活需要输入相关序列号,序列号可以通过官网进行工具使用申请获得。

当获取了激活序列号后我们即可以进行激活。

激活方式可以通过Lipsync工具文件中的 “ADXLipSyncAuthorization.exe”进行激活。ADXLipSyncAuthorization是一个命令行工具。

激活步骤

  1. 在下载的Lipsync工具的如下路径下直接输入cmd开启命令行工具。
  2. 将ADXLipSyncAuthorization拖入到命令行中。
  3. 输入” -a INPUT-LICEN-SEKEY-ADXLI-PSYNC”,其中的INPUT-LICEN-SEKEY-ADXLI-PSYNC是相关的序列号。
  4. 输入后按下回车键,就会看到显示Activating……….表示正在进行激活,激活一般需要10秒左右。
  5. 激活完成后会显示Activation is succeeded.表示激活成功

如此一来我们的激活已经完成,下面就可以进行声音的数据处理。

Lipsync声音数据分析

Lipsync声音数据分析要使用工具文件中的 “CriLipsMake.exe”进行CriLipsMake同样也是命令行工具。

声音数据分析步骤

  1. 同样下载的Lipsync工具的如下路径下直接输入cmd开启命令行工具。
  2. 将CriLipsMake.exe拖入到命令行中。
  3. 接下来输入命令: -in=“\tutorial\crilipsmake\wav\03_voice_zh.wav”,注意在-in之前有一个空格,而=后的内容为相关wav的路径。
  4. 完成内容后按下回车键,就可以进行自动分析,分析完成后命令行工具如下图显示。
  5. 回到我们存放wav的文件夹,查看内容我们可以发现,多了一个后缀名称为adxlip的文件,使用文本打开改文件后能够看到相关数据。

按照上图所示即可完成分析,分析后的内容即是口型数据。同样我们可以将adxlip的后缀更改为csv进行打开。

可以看到分析的结果包含了width(宽度),height(高度),tongue(舌翘),A,I,U,E,O这些内容数据。

当播放音频内容时,我们可以每帧刷新相关的数据即可对应到模型的变形参数上,以此来每帧变化模型的变形效果,来实现口型的同步。

数据的使用上,我们建议使用高度和宽度为一种方式搭配舌翘,当播放音频内容时,我们刷新高度和宽度的数据以及舌翘的数据来匹配口型。

而A,I,U,E,O则是统一使用,同样可以搭配舌翘数据进行数据的刷新来匹配口型。

其他说明

在声音分析时,使用的为 -in=””进行处理,还可以使用其他的方式进行路径,参数等变更:

具体处理方式可以查看手册。

批处理

在处理声音文件时,往往有很多的文件需要进行声音分析来生成相关的数据内容,因此如何进行批处理,来一次性的将所有的声音全部进行分析是非常必要的。

通过批处理我们能够极大的优化效率,因为在上述的声音分析中,每次进行输入命令行效率极低,因此我们在这里进行批处理。

想要进行批处理,我们可以创建一个bat后缀的文本文件,该文件进行批处理的命令,当执行bat文件时,就会直接进行分析。

笔者在Lipsync的工具路径中创建一个名称为BatchProcessing的bat文件:

而其中的命令内容如下:

此命令行中使用for循环遍历了”D:\CRIMiddleware\Lipsync\wav”路径下的所有后缀为wav的文件,而后进行了CriLipsMake.exe -in=”%%i”的处理,将这些wav文件都使用CriLipsMake进行上面内容中的处理,以此来生成相关wav的声音数据文件。

这种方式下,我们只需要将所有需要进行分析的wav文件全部放在”D:\CRIMiddleware\Lipsync\wav”路径下,当双击BatchProcessing.bat时,会自动的将此路径下的所有wav文件都进行分析,生成对应的adxlip文本文件。

使用批处理的方式极大的优化了我们的效率,可以非常迅速的处理极大的声音文件。

而对于生成的数据如何进行处理来实现口型的匹配,我们将会在下篇内容中进行介绍。

Ringo

CRI Middleware Global Expansion Group

One thought on “LipSync口型离线解析(上)

  • 2021-12-09 at 15:36
    Permalink

    请问下lipsync工具安装包可以在哪里下载??

    Reply

发表评论

邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据