Unity实现文字转语音并且与人物模型口型同步

文章目录

  • 前言
  • 一、插件介绍
  • 二、导入RTVoice
    • 1.插件传送门
    • 2.组件配置
  • 三、导入OVRLipSync
    • 1.插件传送门
    • 2.组件配置
  • 总结


前言

提示:这里可以添加本文要记录的大概内容:

今天我们用Unity实现文字转语音并且与人物模型口型同步,要实现这个功能,我们需要用到两个插件:语音口型同步“OVRLipSync”和文字转语音“RTVoice”。


一、插件介绍

RTVoice:
离线文字转语音
• 支持所有构建平台!
• 适合于 Windows、macOS、Android 和 iOS 的原生提供程序
将文本转换为语音
• 即时从文本转换到语音 — 在运行时即可生成!
• 连带作用:连续的音频生成可节省大量内存!
• 在游戏的测试阶段无需配音演员!
• 按姓名、文化和/或性别筛选语音
• 一次可以发出多种声音(例如,公共场所中很多人同时讲话的场景)
• 通过语速、音调和音量微调你的声音!
• 支持 SSML 和 EmotionML!
• 在 Windows 和 iOS 上提供最新的单词、唇形和音素 — 包括标记!
• 生成的音频可以存储为文件在 Unity 中反复使用!
• 单个 AudioSource 匹配 1-infinite 同步发音人!
• 简单的顺序和对话系统
• 不降低性能!
OVRLipSync:
语音来源,顾名思义就是语音的来源,一般有两种,一是真人配音,语音自由度最大,真实度最好。另一个是通过语音合成技术(Text To Speech,简称TTS),在时间、空间以及实现成本上有很大优势。在语音驱动人脸动画领域,有一个重要的步骤——获取基于时间轴的音素序列,真人配音很难直接获取准确的基于时间轴的音素序列,通过TTS技术产生语音序列的同时获得序列相对来说很容易。

识别与动画关键帧匹配。识别是指在语音波段中识别音素,所谓音素是构成音节的最小单位,又或者说是最小语音片段,以汉语为例,每个独立的声母,单韵母都是一个独立的音素,普通话中声母有23个,单韵母有10个,鼻辅音2个,在英文中有20个元音和28个辅音,地位同汉语中声韵母相当。识别出的音素之后调用人物模型中有对应的动画或者是面部参数

在虚拟人脸图像动画生成方面,主要存在两种技术,一是通过技术合成三维人物,其面部表情主要通过建模时制作好的渐变动画实现,通过动画参数来驱动,具有实时性和可操作性好的特点;第二种是通过从真人视频语料库中提取所需嘴形以及神态的片段,拼接成视频的合成技术,这种技术具有真实感强的特点。现有的唇同步技术多使用基于MPEG-4视频编码标准中的人脸动画参数。

二、导入RTVoice

1.插件传送门

RTVoice

2.组件配置

在这里插入图片描述
添加RTVoice和SpeechText
在这里插入图片描述
修改SpeechText组件得下面三个地方:
第一个是修改语言“zh”表示中文,“cn”表示英文;
第二个是修改男声和女生;
在这里插入图片描述
第三个是在程序启动时运行,也可以根据自己得程序具体逻辑修改。
如果需要自己触发播放文本得语音,可以调用以下方法:

 private void OnSpeech(string arg0){SpeechText.Text = arg0;SpeechText.Speak();}

三、导入OVRLipSync

1.插件传送门

OVRLipSync

2.组件配置

将示例工程中的模型拖入场景中
在这里插入图片描述
创建AudioSource组件,并且添加LipSync组件
在这里插入图片描述
将上述AudioSource组件给到SpeechText组件中AudioSource属性中
在这里插入图片描述
点击运行,成功!!

总结

以上只是一个将文字转语音后使用人物模型进行口型同步的Demo,如果要用到具体下项目中,可以参考示例模型的Blendshap类型进行建模绑定,同步效果与表情变形器绑定的细腻程度有很大关系。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/683063.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java安全 CC链6分析

CC链6分析 前言CC链分析核心transform链Lazymap类TiedMapEntry类HashMap方法 最终exp 前言 CC链6不受jdk版本与cs版本的影响,在Java安全中最为通用,并且非常简洁,非常有学习的必要,建议在学习CC链6之前先学习一下 URLDNS链 和 CC…

创建良好班风的重要性和意义

为什么有的班级总是充满活力,学生们团结友爱、学习热情高涨,而有的班级却显得沉闷,学生们缺乏动力,对学习毫无兴趣?其实,这背后的关键就在于班风的建设。 班风,简单说,就是一个班级…

IDEA在package下右键,没有new选项

正常情况下如下图,我们在文件夹上右键,是会出现New选项的。 但是今天我尝试将" add frameworks support"添加到右键时,竟然把New都删除了。如下图 搜遍全网,结果搜到的都是为什么在package或者文件夹上右键出现的Ne…

springboot185基于vue.js的客户关系管理系统(crm)的设计与实现

简介 【毕设源码推荐 javaweb 项目】基于springbootvue 的 适用于计算机类毕业设计,课程设计参考与学习用途。仅供学习参考, 不得用于商业或者非法用途,否则,一切后果请用户自负。 看运行截图看 第五章 第四章 获取资料方式 **项…

【Linux技术宝典】深入理解Linux基本指令:命令行新手指南

📷 江池俊: 个人主页 🔥个人专栏: ✅数据结构冒险记 ✅Linux技术宝典 🌅 有航道的人,再渺小也不会迷途。 文章目录 一、Linux下基本指令1. ls 指令2. pwd指令3. clear指令4. cd指令什么是家目录&#xf…

基于AI Agent探讨:安全领域下的AI应用范式

先说观点:关于AI应用,通常都会聊准召。但在安全等模糊标准的场景下,事实上不存在准召的定义。因此,AI的目标应该是尽可能的“像人”。而想要评价有多“像人”,就先需要将人的工作数字化。而AI Agent是能够将数字化、自…

java基础实现的图书管理系统

文章目录 项目介绍项目功能代码讲解如何实现不同用户之间的操作权限不同 项目介绍 该项目是用的是javase的一些知识包括了类和对象封装,继承多态等面向对象的三大特性。主要是为了让我们能够更好的使用之前学到的知识。 接下来给大家讲解一下这个项目的一个特点。首…

31.File文件

File文件 1. 概述2. 构造方法2.1 方法2.2 代码示例 3. 成员方法3.1 判断、获取的方法3.1.1 方法3.1.2 代码示例 3.2 创建、删除的方法3.2.1 方法3.2.2 代码示例 3.3 获取、遍历的方法3.3.1 重点方法3.3.1.1 方法3.3.1.2 代码示例 3.3.2 所有方法3.3.2.1 方法3.3.2.2 代码示例 4…

OpenGL-ES 学习(4)---- OpenGL-ES 坐标体系

坐标体系 我们知道 OpenGL -ES 坐标系中每个顶点的 x,y,z 坐标都应该在 -1.0 到 1.0 之间,超出这个坐标范围的顶点都将不可见。 将一个物体(图像)渲染到屏幕上,通常经过将物体坐标转换为标准化设备坐标&am…

蓝牙BLE学习-GAP

1.概述 GAP层(Generic access profile-通用访问配置文件)。GAP是对LL层payload(有效数据包)如何进行解析的两种方式的一种,而且也是最简单的一种。GAP简单的对LL payload进行一些规范和定义,因此GAP能实现的…

(三十八)大数据实战——Atlas元数据管理平台的部署安装

前言 Apache Atlas 是一个开源的数据治理和元数据管理平台,旨在帮助组织有效管理和利用其数据资产。为组织提供开放式元数据管理和治理功能 ,用以构建其数据资产目录,对这些资产进行分类和管理,形成数据字典 。并为数据分析师和数…

深度学习之反向传播算法

反向传播算法 数学公式算法代码结果 算法中一些函数的区别 数学公式 算法代码 这里用反向传播算法,计算 y w * x模型 import numpy as np import matplotlib.pyplot as ply#反向传播算法,需要使用pytorch框架, #这里导入pytorch框架&#xf…

MySQL 基础知识(四)之表操作

目录 1 约束 2 查看已有表 3 创建表 4 查看表结构 5 修改表 6 删除表 1 约束 主键约束 primary key:唯一,标识表中的一行数据,此列的值不可重复,且不能为 NULL,此外,可以多个列组成主键唯一约束 uniq…

Phobos捆绑某数控软件AdobeIPCBroker组件定向勒索

前言 Phobos勒索病毒最早于2019年被首次发现并开始流行起来,该勒索病毒的勒索提示信息特征与CrySiS(Dharma)勒索病毒非常相似,但是两款勒索病毒的代码特征却是完全不一样,近日笔者在逛某开源恶意软件沙箱的时候发现了一款Phobos勒索病毒捆绑…

Windows编程环境配置!

喜欢的话麻烦大家多点点关注,谢谢! 原文地址:Windows编程环境配置! - Pleasure的博客 下面是正文内容: 前言 近期闲来无事,就想着把Windows系统中的环境给完善整理一下。方便后续码字时的不时之需。 正文…

百度云AI

百度云AI概述 Face腾讯优图科大讯飞 百度人脸识别基于深度学习的人脸识别方案,准确识别图片中的人脸信息,提供如下功能: 人脸检测:精准定位图中人脸,获得眼、口、鼻等72个关键点位置,分析性别、年龄、表…

[python] 罗技动态链接驱动库DLL 控制 键鼠

[python] 罗技动态链接驱动库DLL 控制 键鼠 最近在玩搬砖游戏晶核, 每天有很多重复繁琐的"打卡"操作, 得知隔壁御三家游戏就有大佬做了自动收割的辅助工具,我就想模仿写一个.不过大佬们写的开源工具厉害得多,加了神经网络自动识别,实现寻路和点击功能.我目前最多就是…

模拟电子技术——分压式偏置放大电路、多级放大电路、差动放大电路、互补输出级

文章目录 前言基本放大电路链接,上一篇 [基本放大电路](https://blog.csdn.net/weixin_47541751/article/details/136112075?spm1001.2014.3001.5502) 一、分压式偏置放大电路什么是分压式偏置电路分压式电路组成电路分析估算静态工作点 二、多级放大电路什么是多级…

仰暮计划|“他们吃树皮,挖野菜,将玉米棒和玉米皮也做成食物来解饥”

我的姥姥今年七十岁了,她病的很严重,我趁着在病房的这段时间对她进行了采访。 我的姥姥1953年出生在一个小山村里,她有四个兄弟和两个姐妹,据她说,她的父母既是爱她的又是严厉的,因为孩子多并且生活困难&a…

python - OSError:错误没有名为 [‘pytorch_model.bin‘

python - OSError:错误没有名为 [‘pytorch_model.bin’] 自己训练的模型存储好了以后 model MT5ForConditionalGeneration.from_pretrained(“ner/best”) 之前还可以跑 现在报错 错误没有名为 [‘pytorch_model.bin’] 还原了一下conda env 把四版变成三版了 …