2012-07-16 3 views
2

Si vous essayez de créer un logiciel avec une zone de texte où l'utilisateur peut taper un mot ou une phrase, le programme utilisera google translate pour "parler" ces mots et télécharger ce fichier vocal en fichier wav ou mp3.C# ne peut pas lire le fichier wav

Tout fonctionne correctement, sauf la lecture. Fichier sera chargé sur l'ordinateur, mais lors de la lecture, Visual Studio donne une erreur que fichier n'est pas un fichier WAV valide. Lors de la lecture manuelle d'un fichier à partir d'un ordinateur, le lecteur multimédia le joue correctement!

private void Puhu(string Sana) { 

WebClient web = new WebClient(); 
web.Headers.Add(HttpRequestHeader.UserAgent, "Mozilla/4.0 (compatible; MSIE 9.0;  Windows;)"); 

string encstr = string.Empty; 

    string filename = "tts.wav"; 

    string s = Sana; 

    encstr = Uri.EscapeDataString(s); 

    web.DownloadFile("http://translate.google.com/translate_tts?tl=fi&q=" + encstr, ".\\" + filename); 

    (new SoundPlayer(@"tts.wav")).Play(); // this line wont work!! Audio format is wrong! 

    } 

Répondre

2

En raison de votre fichier téléchargé est un fichier MP3. et System.Media.SoundPlayer ne supporte que le fichier WAV:

de MSDN:

SoundPlayer classe prend en charge le chargement d'un fichier .wav à partir d'un chemin de fichier, une URL, un flux qui contient un fichier .wav, ou une ressource intégrée qui contient un fichier .wav.

Questions connexes