快捷搜索: 王者荣耀 脱发

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币也是够坑的

经验分享 程序员 微信小程序 职场和发展