我在Windows Phone 8.1商店应用程序(XAML应用程序/ Windows运行时应用程序/通用应用程序)中使用了SpeechSynthesizer
类。它输出一个SpeechSynthesisStream,我需要将其另存为电话的本地存储中的mp3 /音频文件。这是我用来生成流的代码。如何将其另存为音频文件?
using (var speech = new SpeechSynthesizer())
{
var voiceStream = await speech.SynthesizeTextToStreamAsync(text);
}
最佳答案
在Twitter上没有看到您。为此,请原谅我。我认为您应该做的第一件事是将音频保存在wav文件中,因为
var synth = new Windows.Media.SpeechSynthesis.SpeechSynthesizer();
SpeechSynthesisStream stream = await synth.SynthesizeTextToStreamAsync("Hello World");
using (var reader = new DataReader(stream))
{
await reader.LoadAsync((uint)stream.Size);
IBuffer buffer = reader.ReadBuffer((uint)stream.Size);
await FileIO.WriteBufferAsync(outputFile, buffer);
}
完成后,您可以将此代码转码为mp3。为此,我相信:
http://msdn.microsoft.com/library/windows/apps/hh452795
和http://go.microsoft.com/fwlink/p/?linkid=242136
是值得研究的地方。 ;)
关于c# - 如何在Windows Phone 8.1的本地存储中将SpeechSynthesisStream保存为音频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27648888/