Я пытаюсь создать пример, который отправляет очень короткое предложение (менее 100 символов) в службу Google TTS, которая возвращает аудиопоток. Я пытаюсь сохранить этот поток в файл, но, открыв его, Buf после написания следующего файла, я могу открыть его в реальном плеере, но он только произносит первую букву (первую букву предложения, отправленного в Google TTS). Возможно, возникла проблема с сохранением файла, я никогда не занимался аудио в коде, поэтому, пожалуйста, посмотрите и предложите лучший код.
WebRequest request = WebRequest.Create(string.Format("http://translate.google.com/translate_tts?q={0}", Uri.EscapeUriString(textBox1.Text.Trim())));
request.Method = "GET";
try
{
WebResponse response = request.GetResponse();
if (response != null && response.ContentType.Contains("audio"))
{
Stream stream = response.GetResponseStream();
byte[] buffer = new byte[response.ContentLength];
stream.Read(buffer, 0, (int)response.ContentLength);
FileStream localStream = new FileStream("audio.mp3", FileMode.OpenOrCreate);
localStream.Write(buffer, 0, (int)response.ContentLength);
stream.Close();
localStream.Close();
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}