如何解决文本转语音问题

本文关键字:文本 语音 问题 解决 何解决 | 更新日期: 2023-09-27 18:06:57

我想问一个问题。我现在面临着英语文本到语音的问题。我使用了System.Speech.Synthesis;命名空间从。net框架为我的ETTS在c# . net。首先,我可以完全将文本转换为wav文件。但是保存到wave文件后,我就不能再用Windows的形式说话了。但它可以说话,如果不保存到wave文件。然而,保存文件后,我不能再说话了。我为这个程序写了如下代码:

For Save text to Wave file

SaveFileDialog sfd = new SaveFileDialog();
        sfd.Filter = "All files (*.*)|*.*|wav files (*.wav)|*.wav";
        sfd.Title = "Save to a wave file";
        sfd.FilterIndex = 2;
        sfd.RestoreDirectory = true;
        if (sfd.ShowDialog() == DialogResult.OK)
        {
            FileStream fs = new FileStream(sfd.FileName, FileMode.Create, FileAccess.ReadWrite);
            voiceMe.SetOutputToWaveStream(fs);
            voiceMe.Speak(txtSpeakText.Text);
            fs.Close();
        }       

Text to speech

        voiceMe.Volume = VolumeMe.Value;
        voiceMe.Rate = RateMe.Value;
        voiceMe.SpeakAsync(txtSpeakText.Text);

。如果你不明白我的问题。请再说一遍。如果你能解决这个问题,请告诉我。感谢您的宝贵时间。

如何解决文本转语音问题

请在保存完成后再尝试。

 voiceMe.SetOutputToDefaultAudioDevice();

您可以猜到,当您保存时,您将输出设置为带有voiceMe.SetOutputToWaveStream(fs);的波文件。为了再次输出到speaker,你需要使用上面的语句。