qq登录网站怎么做,安全的网站建设推广,erp沙盘模拟实训报告,商务网站建设模板咨询区 user2110292我的项目有一个需求需要将可以将 文本 转化为 声音#xff0c;请问大家是否有开源的 C# 库 来解决这件事情#xff1f;回答区 HABJAN最近 Google 发布了一个开源的 Google Cloud Text To Speech 包#xff0c;.NET版本的github链接#xff1a;https://gi… 咨询区 user2110292我的项目有一个需求需要将可以将 文本 转化为 声音请问大家是否有开源的 C# 库 来解决这件事情回答区 HABJAN最近 Google 发布了一个开源的 Google Cloud Text To Speech 包.NET版本的github链接https://github.com/jhabjan/Google.Cloud.TextToSpeech.V1可参考下面的例子GoogleCredential credentials GoogleCredential.FromFile(Path.Combine(Program.AppPath, jhabjan-test-47a56894d458.json));TextToSpeechClient client TextToSpeechClient.Create(credentials);SynthesizeSpeechResponse response client.SynthesizeSpeech(new SynthesisInput(){Text Google Cloud Text-to-Speech enables developers to synthesize natural-sounding speech with 32 voices},new VoiceSelectionParams(){LanguageCode en-US,Name en-US-Wavenet-C},new AudioConfig(){AudioEncoding AudioEncoding.Mp3}
);string speechFile Path.Combine(Directory.GetCurrentDirectory(), sample.mp3);File.WriteAllBytes(speechFile, response.AudioContent);HABJAN完全不需要使用任何开源框架在 .NET 内部提供的 System.Speech.Synthesis 类就可以帮你解决这个问题引用下 System.speech.dll 命名空间即可。using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Speech.Synthesis; // first import this packagenamespace textToSpeech{public partial class home : Form{public string s pran; // storing string (pran) to sprivate void home_Load(object sender, EventArgs e){speech(s); // calling the function with a string argument}private void speech(string args) // defining the function which will accept a string parameter{SpeechSynthesizer synthesizer new SpeechSynthesizer();synthesizer.SelectVoiceByHints(VoiceGender.Male , VoiceAge.Adult); // to change VoiceGender and VoiceAge check out those links belowsynthesizer.Volume 100; // (0 - 100)synthesizer.Rate 0; // (-10 - 10)// Synchronoussynthesizer.Speak(Now Im speaking, no other functionll work);// Asynchronoussynthesizer.SpeakAsync(Welcome args); // here args pran} }}这里简单提一下最好用异步方式 SpeakAsync 替代同步的 Speak 方法这样的话调用线程就不会被阻塞提高程序的吞吐率。点评区 这个功能好不过建议大家了解下强大的 Google.Cloud.TextToSpeech。