Unity文字转语音(使用RT-Voice PRO [2023.1.0])

参考文章Unity插件——文字转朗读语音RtVioce插件功能/用法/下载_rtvoice-CSDN博客

一、使用步骤

1.导入进Unity(插件形式为 .unitypackage)

https://download.csdn.net/download/luckydog1120446388/88717512

2.添加所需Prefab

1).右键可以直接添加到 Hierarchy面板
在这里插入图片描述
2).添加后的样子
在这里插入图片描述

3.代码调用 RtVioceLocalTTS.cs

using Crosstales.RTVoice;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
/// <summary>
/// creat by yxx 
/// 
/// https://blog.csdn.net/qq_43246529/article/details/109899257
/// </summary>
public class RtVioceLocalTTS : MonoBehaviour
{/*插件 - RtVioce
支持的Unity版本:5.3.1 及以上版本
功能:语音转文字
*不需要为自己的声音行事
*多个音色变换
*多个扬声器 同时对讲(说话)
*NPC聊天转换等。。。。   
?生成的音频可以存储到文件中。*/public InputField mTxtSpeakContent;public Button mBtnClick;private string mID;// Start is called before the first frame updatevoid Start(){mBtnClick.onClick.AddListener(() =>{//Speak(mTxtSpeakContent.text);mID = Speaker.Instance.Speak(mTxtSpeakContent.text, null, Speaker.Instance.Voices[0]);});}// Update is called once per framevoid Update(){if (Input.GetKeyDown(KeyCode.P)){mID = Speaker.Instance.Speak("测试语音功能是否正常!Test whether the voice function is normal", null, Speaker.Instance.Voices[0]);//Speaker.Instance.SpeakNative("测试语音功能是否正常!Test whether the voice function is normal", Speaker.Instance.Voices[0], 1, 1, 1);Debug.Log("开始ID:" + mID);Speaker.Instance.OnSpeakStart += SpeakStart;Speaker.Instance.OnSpeakComplete += SpeakComplete;//Speaker.Instance.Speak("why");//测试语音功能是否正常!}if (Input.GetKeyDown(KeyCode.O)){Speaker.Instance.Silence(mID);mID = Speaker.Instance.Speak("我的目的是来测试id的", null, Speaker.Instance.Voices[0]);Debug.Log("开始ID:" + mID);Speaker.Instance.OnSpeakComplete += SpeakComplete;}if (Input.GetKeyDown(KeyCode.M)){Speaker.Instance.PauseOrUnPause();}if (Input.GetKeyDown(KeyCode.N)){Speaker.Instance.PauseOrUnPause();//}if (Input.GetKeyDown(KeyCode.Y)){Speaker.Instance.Silence(mID);//静默(介绍播放)}}private void SpeakStart(Crosstales.RTVoice.Model.Wrapper wrapper){Debug.Log("开始播放ID:" + wrapper.Uid);}private void SpeakComplete(Crosstales.RTVoice.Model.Wrapper wrapper){Debug.Log("完成ID:" + wrapper.Uid);if (wrapper.Uid.Equals(mID)){}}public void Speak(string _conetnt){mID = Speaker.Instance.Speak(_conetnt, null, Speaker.Instance.Voices[0]);}/* public SpeechText SpeechText;// Start is called before the first frame updatevoid Start(){*//* Speaker.Speak("哇塞,我可以说话了!", null, null, true, GUISpeech.Rate, GUISpeech.Volume, "", GUISpeech.Pitch);Speaker.OnSpeakComplete += speakEndMethod;Speaker.OnSpeakStart += speakStartMethod;*//*//取消调用//Speaker.OnSpeakStart-= speakStartMethod;//Speaker.OnSpeakComplete += speakEndMethod;//Speaker.Silence();//停止说话}private void speakStartMethod()//SpeakEventArgs e){print("开始说话");}private void speakEndMethod()//SpeakEventArgs e){print("完成说话");}// Update is called once per framevoid Update(){if (Input.GetKeyDown(KeyCode.A)){SpeechText.Speak();}}*/
}

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

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

相关文章

雅意2.0:打造专为中文优化的300亿参数多语言模型

前言 雅意2.0&#xff0c;作为一款专注于中文语境的开源大型语言模型&#xff0c;其在多语言处理方面的能力尤为突出。该模型不仅具有300亿参数规模的庞大体量&#xff0c;还在多个关键领域取得了显著的技术突破。 Huggingface模型下载&#xff1a;https://huggingface.co/wen…

SpringMVC-01

Spring MVC是一种基于Java的MVC&#xff08;Model-View-Controller&#xff09;架构的Web应用程序开发框架。它是Spring框架的一部分&#xff0c;用于构建灵活和高效的Web应用程序。 Spring MVC的核心思想是将应用程序的逻辑分成模型&#xff08;Model&#xff09;、视图&#…

串口乱码原因

开发板上外部时钟的晶振与代码中的外部时钟的晶振不一致&#xff0c;使用cubemx配置时钟时要格外注意&#xff0c;选好芯片之后再看外部晶振是啥&#xff0c;不然随便设置可能乱码 重写fputc函数之后&#xff0c;需要自己手动勾选下面选项

详解IDEA git 版本回滚

作者简介 目录 1.git分区 2.未commit&#xff0c;进行回滚 3.commit未push&#xff0c;进行回滚 3.1.undo commit 3.2.reset 4.已commit&push&#xff0c;进行回滚 1.git分区 git的版本回滚其实就是回滚不同的分区&#xff0c;所以在聊git回滚之前我们有必要简单了解…

self-attention机制详解

目前&#xff0c;对于我们的network&#xff0c;给定的input大都是一个向量&#xff1a; 但是对于更复杂的情况&#xff0c;我们的input是a set of vec: 举例&#xff1a; nlp中的句子&#xff0c;对于每个word都是一个word embedding&#xff1a; 图学习中每个节点有一个e…

怎么申请便宜的IP证书

IP证书是数字证书的一种&#xff0c;现在大多数数字证书都是针对有域名地址的网站&#xff0c;而IP证书是为只有公网IP地址的网站提供的安全加密手段之一。随着互联网的蓬勃发展&#xff0c;越来越多的只有公网IP地址的网站想要创建一个安全的上网环境&#xff0c;防止数据被窃…

R语言快速学习笔记

1、R 语言赋值使用的是左箭头 <- 符号。 2、变量名可以 . 号开头&#xff0c;但是要注意 . 号开头后面不能跟着数字。 3、定义函数&#xff1a;使用 function 关键字&#xff0c;形式&#xff1a; function_name <- function(arg_1, arg_2, ...) {# 函数体# 执行的代码块…

自动化测试用例设计粒度

自动化测试用例的粒度指的是测试用例的细致程度&#xff0c;即每个测试用例检查的功能点的数量和范围。 通常&#xff0c;根据测试用例的粒度&#xff0c;可以被分为3种不同的层次&#xff0c;从更低层次的细粒度到更高层次的粗粒度。 第一种&#xff1a;单元测试 - 细粒度 …

Java实现基于GDAL将单波段影像转为三波段影像-唯一值渲染

在处理遥感影像的渲染时&#xff0c;经常需要处理单波段影像。单波段影像没有任何颜色&#xff0c;只有一个波段的值。渲染时只能采用色带拉伸、离散颜色、唯一值渲染这几种方式。直接将单波段影像转成三波段的影像&#xff0c;并将三个波段转为颜色对应的rgb值&#xff0c;这样…

贝塞尔曲线

贝塞尔曲线&#xff08;Bzier curve&#xff09;是应用于二维图形应用程序的数学曲线。一般的矢量图形软件通过它来精确画出曲线&#xff0c;贝兹曲线由线段与节点组成&#xff0c;节点是可拖动的支点&#xff0c;线段像可伸缩的皮筋&#xff0c;我们在绘图工具上看到的钢笔工具…

网络安全B模块(笔记详解)- Web渗透测试

Web渗透测试 1.通过渗透机Kali1.0对服务器场景PYsystem20192进行Web渗透测试(使用工具w3af的对目标Web服务器进行审计),在w3af的命令行界面下,使用命令列出所有用于审计的插件,将该操作使用的命令作为Flag值提交; 进入kali命令控制台中使用命令w3af_console进入w3af命令…

经验分享:知识库系统这样搭建轻松又高效

我们工作中遇到过这样的情况吗&#xff1f;找不到组织结构图&#xff0c;找不到某个报告模板&#xff0c;找不到工作流程说明… 还或者看到同事忙绿在重复劳动&#xff0c;却没办法高效地共享你的经验和知识&#xff1f;这些都表明你的公司可能正急需一个知识库系统。 知识库系…