Exemple #1
0
        private void Recognize_Click(object sender, EventArgs e)
        {
            var Audio = new AudioSource.AudioSource();

            OutputText.Text = "Please wait...";
            OutputText.Text = UCSpeechTranslator.YandexWrapper.YandexWrapper.PostMethod(Audio);
        }
Exemple #2
0
        private void PlayButton_Click(object sender, EventArgs e)
        {
            var obj = new AudioSource.AudioSource();

            audioFileReader = new AudioFileReader(obj.AudioAdress);
            waveOutDevice.Init(audioFileReader);
            waveOutDevice.Play();
        }
Exemple #3
0
        public static string PostMethod(AudioSource.AudioSource obj)
        {
            obj = new AudioSource.AudioSource();
            string         uuid    = Guid.NewGuid().ToString().Replace("-", "");
            string         postUrl = "https://asr.yandex.net/asr_xml?uuid=" + uuid + "&key=" + obj.APIKey + "&" + "topic=" + obj.Topic;
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(postUrl);

            request.Method      = "POST";
            request.Host        = "asr.yandex.net";
            request.SendChunked = false;
            if (obj.AudioAdress.Substring(obj.AudioAdress.Length - 3, 3) == "mp3")
            {
                request.ContentType = "audio/x-mpeg-3";
            }
            else if (obj.AudioAdress.Substring(obj.AudioAdress.Length - 3, 3) == "wav")
            {
                request.ContentType = "audio/x-wav";
            }
            request.ContentLength = obj.BinarySource.Length;
            using (var newStream = request.GetRequestStream())
            {
                newStream.Write(obj.BinarySource, 0, obj.BinarySource.Length);
                newStream.Close();
            }
            string responseToString = "";

            using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
            {
                using (Stream datastream = response.GetResponseStream())
                {
                    using (StreamReader sr = new StreamReader(datastream))
                    {
                        responseToString = sr.ReadToEnd();
                        sr.Close();
                    }
                    datastream.Close();
                }
                response.Close();
            }
            XmlDocument doc = new XmlDocument();

            doc.InnerXml = responseToString;
            XmlNode elem = doc.DocumentElement.FirstChild;

            responseToString = elem.InnerText;
            return(responseToString);
        }