Example #1
0
        private void buttonOK_Click(object sender, EventArgs e)
        {
            currentVoiceIndex = comboBoxVoice.SelectedIndex;
            if (currentVoiceIndex < 0)
            {
                currentVoiceIndex = 0;
            }

            if (tokens.Count <= 0)
            {
                return;
            }

            spVoice.SetVoice((ISpObjectToken)tokens.Item(currentVoiceIndex));
            spMemoryStream = new SpMemoryStream();
            SpAudioFormat spAudioFormat = new SpAudioFormat();

            spAudioFormat.Type        = waveType;
            spMemoryStream.Format     = spAudioFormat;
            spVoice.AudioOutputStream = spMemoryStream;

            spVoice.EndStream += new _ISpeechVoiceEvents_EndStreamEventHandler(SpeechDone);
            spVoice.Viseme    += new _ISpeechVoiceEvents_VisemeEventHandler(voice_Viseme);
            spVoice.Speak(textBoxSpeak.Text, SpeechVoiceSpeakFlags.SVSFlagsAsync);
        }
Example #2
0
        /// <summary>
        /// Set up a file stream by path.
        /// </summary>
        private static SpFileStream PrepareFileStreamToWrite(string path)
        {
            SpFileStream  stream = new SpFileStream();
            SpAudioFormat format = new SpAudioFormat();

            format.Type   = SpeechAudioFormatType.SAFT48kHz16BitMono;
            stream.Format = format;
            stream.Open(path, SpeechStreamFileMode.SSFMCreateForWrite, true);

            return(stream);
        }
Example #3
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            if (SaveFileDialog1.ShowDialog() == DialogResult.OK)
            {
                SpVoice      oVoice       = new SpVoice();
                SpFileStream cpFileStream = new SpFileStream();

                cpFileStream.Open(SaveFileDialog1.FileName, SpeechLib.SpeechStreamFileMode.SSFMCreateForWrite, false);
                SpeechAudioFormatInfo info  = new SpeechAudioFormatInfo(6, AudioBitsPerSample.Sixteen, AudioChannel.Mono);
                SpAudioFormat         info1 = new SpAudioFormat();

                info1.Type = SpeechAudioFormatType.SAFTGSM610_11kHzMono;
                cpFileStream.Format.Type = SpeechAudioFormatType.SAFT11kHz16BitStereo;


                oVoice.AudioOutputStream = cpFileStream;
                oVoice.Voice             = oVoice.GetVoices().Item(cboVoice.SelectedIndex);
                oVoice.Volume            = trVolume.Value;
                oVoice.Rate = trRate.Value;
                oVoice.Speak(txtSpeak.Text, SpeechLib.SpeechVoiceSpeakFlags.SVSFDefault);

                oVoice = null;
                cpFileStream.Close();
                cpFileStream = null;
            }

            //SpFileStream spFileStream = new SpFileStream();



            //SpVoice speech = new SpVoice();



            //SpAudioFormat format = new SpAudioFormat();


            //spFileStream.Open(@"d:\dude.wav", SpeechStreamFileMode.SSFMCreateForWrite, true);

            //speech.AudioOutputStream = spFileStream;


            ////NOTE: This is where I get hosed
            //speech.Voice = speech.GetVoices().Item(0);
            //speech.Volume = trVolume.Value;
            //speech.Rate = trRate.Value;
            //speech.Speak("I love you", SpeechVoiceSpeakFlags.SVSFDefault);
            //spFileStream.Close();
            //spFileStream = null;
        }
Example #4
0
 public bool SaveAsWAV(string path, string str, SpeechAudioFormatType SpAudioType)
 {
     SpeechStreamFileMode SpFileMode = SpeechStreamFileMode.SSFMCreateForWrite;
     SpFileStream SpFileStream = new SpFileStream();
     SpeechVoiceSpeakFlags SpFlags = SpeechVoiceSpeakFlags.SVSFlagsAsync;
     SpAudioFormat SpAudio = new SpAudioFormat();
     SpAudio.Type = SpAudioType;
     SpFileStream.Format = SpAudio;
     SpFileStream.Open(path, SpFileMode, false);
     mVoice.AudioOutputStream = SpFileStream;
     mVoice.Speak(str, SpFlags);
     mVoice.WaitUntilDone(Timeout.Infinite);
     SpFileStream.Close();
     return File.Exists(path);
 }
        private void buttonOK_Click(object sender, EventArgs e)
        {
            tokens = spVoice.GetVoices("", "");

            spVoice.SetVoice((ISpObjectToken)tokens.Item(0));
            spMemoryStream = new SpMemoryStream();
            SpAudioFormat spAudioFormat = new SpAudioFormat();

            spAudioFormat.Type        = waveType;
            spMemoryStream.Format     = spAudioFormat;
            spVoice.AudioOutputStream = spMemoryStream;

            spVoice.EndStream += new _ISpeechVoiceEvents_EndStreamEventHandler(SpeechDone);
            spVoice.Viseme    += new _ISpeechVoiceEvents_VisemeEventHandler(voice_Viseme);
            spVoice.Speak(textBoxSpeak.Text, SpeechVoiceSpeakFlags.SVSFlagsAsync);
        }
Example #6
0
        /// <summary>
        /// 开始转换
        /// </summary>
        public void Convert()
        {
            SpFileStream  sr    = new SpFileStream();
            SpAudioFormat audio = new SpAudioFormat();

            audio.Type = Format;
            sr.Format  = audio;
            sr.Open(SaveFileName, SpeechStreamFileMode.SSFMCreateForWrite, false);

            SpVoice voice = new SpVoice();

            voice.Voice             = voice.GetVoices(null, null).Item(0);//语言设置
            voice.Rate              = Rate;
            voice.AudioOutputStream = sr;
            voice.Volume            = Volume == 0 ? 100 : Volume;
            voice.Speak(InputText, SpeechVoiceSpeakFlags.SVSFlagsAsync);
            voice.WaitUntilDone(Timeout.Infinite);
            sr.Close();
        }
        private void buttonOK_Click(object sender, EventArgs e)
        {
            currentVoiceIndex = comboBoxVoice.SelectedIndex;
            if (currentVoiceIndex < 0) currentVoiceIndex = 0;

            if (tokens.Count <= 0) return;

            spVoice.SetVoice((ISpObjectToken)tokens.Item(currentVoiceIndex));
            spMemoryStream = new SpMemoryStream();
            SpAudioFormat spAudioFormat = new SpAudioFormat();
            spAudioFormat.Type = waveType;
            spMemoryStream.Format = spAudioFormat;
            spVoice.AudioOutputStream = spMemoryStream;

            spVoice.EndStream += new _ISpeechVoiceEvents_EndStreamEventHandler(SpeechDone);
            spVoice.Viseme += new _ISpeechVoiceEvents_VisemeEventHandler(voice_Viseme);
            spVoice.Speak(textBoxSpeak.Text, SpeechVoiceSpeakFlags.SVSFlagsAsync);
        }