Unity调用微软SpeechLib.Dll的C#类实现语音合成功能
using System.Collections; using System.Collections.Generic; using UnityEngine; using SpeechLib;
public class Speech : MonoBehaviour { // Start is called before the first frame update void Start() {
} // Update is called once per frame void Update() { if (Input.GetKeyDown(KeyCode.A)) { StartCoroutine(SpeackVoice()); } } IEnumerator SpeackVoice() { yield return new WaitForSeconds(5); SpVoice v = new SpVoice(); v.Voice = v.GetVoices(string.Empty, string.Empty).Item(0); v.Speak("这样就好了嘛"); yield return new WaitForSeconds(5); }
}
将Interop.SpeechLib.dll文件导入Unity,然后把上面的脚本挂载到游戏对象上就能测试语音合成的效果了。 经测试 调用v.Speak这个方法会让程序卡顿,看哪位大佬有什么方法解决
Interop.SpeechLib.dll文件链接 https://download..net/download/yuan9a/21007842?spm=1001.2014.3001.5501 我自己上传的 免费下载使用的DLL,这么简单的DLL那些人收费10-50C币也是够坑的
下一篇:
Python 实现语音转文本