C# windows RT/Universal应用程序,文本到语音“;另存为Mp3“;
我正试着在一个通用应用程序上做一个演讲,但有一件事卡住了。我浏览了整个互联网,没有找到一个合适的解决方案。。所以我来到这里。。基本上,我希望应用程序将文本框中的内容保存为mp3。以下是我目前的代码:C# windows RT/Universal应用程序,文本到语音“;另存为Mp3“;,c#,windows,windows-phone-8,text-to-speech,win-universal-app,C#,Windows,Windows Phone 8,Text To Speech,Win Universal App,我正试着在一个通用应用程序上做一个演讲,但有一件事卡住了。我浏览了整个互联网,没有找到一个合适的解决方案。。所以我来到这里。。基本上,我希望应用程序将文本框中的内容保存为mp3。以下是我目前的代码: private void Speak_Click(object sender, RoutedEventArgs e) { SpeakText(Text.Text); } public async void SpeakText(string TTS)
private void Speak_Click(object sender, RoutedEventArgs e)
{
SpeakText(Text.Text);
}
public async void SpeakText(string TTS)
{
SpeechSynthesizer ttssynthesizer = new SpeechSynthesizer();
//Set the Voice/Speaker
using (var Speaker = new SpeechSynthesizer())
{
Speaker.Voice = (SpeechSynthesizer.AllVoices.First(x => x.Gender == VoiceGender.Female));
ttssynthesizer.Voice = Speaker.Voice;
}
SpeechSynthesisStream ttsStream = await ttssynthesizer.SynthesizeTextToStreamAsync(TTS);
//play the speech
MediaElement media = new MediaElement();
media.SetSource(ttsStream, " ");
}
我认为您可以将
SpeechSynthesisStream
保存为一个.wav文件。然后,您可以使用MediaTranscoder
类将其重新编码为任何您喜欢的内容
将流保存到wav文件的一些额外帮助:如何将SpeechSynthesStrem保存为.wav文件?对不起,我是新手stuff@ProgrammingPotato查看链接的CPP文件,它是在事件处理程序>代码> BTNVaseToFielsKys< /Calp>中。谢谢,但我正在寻找C代码,而不是C++。在我进一步了解编程之前,我将一直保留它。@ProgrammingPotato它使用相同的函数。它几乎可以转换成1:1。只要忽略
^
,您就会意识到Windows::Storage::Streams::Buffer
与Windows.Storage.Streams.Buffer
@ProgrammingPotato是一样的垃圾,或者您可以搜索如何将缓冲区写入文件。可以肯定有很多答案。