对于我的第一个C#项目(我更习惯于C),我正在使用System.Speech.Synthesis创建一个简单的TTS应用程序,但是我想使用默认输出(例如扬声器)代替指定我的虚拟音频电缆麦克风。这基本上就是通过我的麦克风录制的TTS语音。经过一番谷歌搜索后,我决定尝试NAudio。
我可以使用SpeechSynthesizer的SetOutputToWaveStream设置备用音频流,但是我不确定如何将其连接到NAudio,或如何将输出设备指定为虚拟音频电缆。
// using System.Speech.Synthesis, NAudio.Wave, etc.
SpeechSynthesizer Voice = new SpeechSynthesizer();
public WaveStream ws;
public WaveOut wo = new WaveOut();
// SpeechSynthesizer also has a method for
// ouputting to WAV files, but that would
// be a last resort
Voice.SetOutputToWaveStream(ws); // FAILS HERE because "ws" is null
Voice.Speak(TextBox.Text);
wo.DeviceNumber = 0; // my VAC device #
wo.Init(ws);
wo.Play();