c# - 如何在Windows Phone 8.1的本地存储中将SpeechSynthesisStream保存为音频

标签 c# audio windows-phone-8.1

我在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/

相关文章:

c# - 如何将 WAVE_MAPPER 音频线与其音频设备关联

matlab - 参数均衡器的幅度响应

c# - XAML 中的枚举转换器

unity-game-engine - 在 Windows 8.1 上为 Unity 项目强制执行横向

c# - 更改 DataGrid 的列宽

audio - 播放单音音频文件的最佳方法?

c# - 双向绑定(bind)到 WPF 中多个列表框上的 ListBox SelectedItem

c# - 在 xaml 中设置样式或格式化 json 数据

c# - 字符串中字段值的正则表达式匹配

c# - 默认情况下,查询字段提升权重的最小值和最大值是多少?