1

我正在尝试将文本转语音保存到 MP3。目前我有 System.Speech.Synthesis 很好地与 WAV 文件对话。

    With New System.Speech.Synthesis.SpeechSynthesizer
        '.SetOutputToWaveFile(pOutputPath)    This works fine 
        .SetOutputToWaveStream(<<Problem bit>>)
        .Speak(pTextToSpeak)
        .SetOutputToNull()
        .Dispose()
    End With

现在注释掉的第一行生成了一个很好的 WAV 文件。目前我正在尝试用 MP3 输出流替换它并且没有太大成功。

我已经尝试过 Yeti.MMedia 转换器,但要么它不起作用,要么我没有让它成功工作。我必须在这里承认,我对编码、速度等知之甚少。

所以我的问题是,有没有人知道我可以这样说的好方法:

.SetOutputToWaveStream(New MP3WriteStream(pOutputPath))

并让 SpeechSynthesizer 写入 WAV,然后将其转换为 MP3 并最终在 HDD 上。

4

3 回答 3

2

首先,让 Yeti 类提供具有适当压缩因子的可写流。然后,使用SpeechSynthesizer.SetOutputToAudioStream - 告诉 TTS 引擎语音质量。

于 2010-06-30T17:56:14.520 回答
0

只是摆弄 Yeti,它确实有效,我在一个相当大的网络应用程序上使用了它,它已经运行了大约 2 年没有问题。

于 2010-06-15T13:50:42.653 回答
0

我认为除了使用 Wav 编写它然后使用 LAME MP3 编码器(等)进行转换之外,没有其他方法。

于 2009-12-17T07:01:33.723 回答