我使用VS 2010,.Net 3.5,Win7 64位。
我可以将Console.Beep用于“simule”人声(语音),也可以产生合成语音?
例如,使用Beep for“simule”单词“Error”的声音?关于它的任何样本?
使用Console.Beep播放音乐和弦和音符的另一个示例。
有什么方法可以让Console.Beep播放任何听起来的声音(声音,单词错误)更像是和弦或音符吗?
我只想使用Console.Beep。(如果可能,也许) 模拟,而不是真实的声音。我不介意它听起来像R2D2。
答案 0 :(得分:8)
不可能
您可以在System.Speech.Synthesis Namespace
using System;
using System.Speech.Synthesis;
namespace SampleSynthesis
{
class Program
{
static void Main(string[] args)
{
// Initialize a new instance of the SpeechSynthesizer.
SpeechSynthesizer synth = new SpeechSynthesizer();
// Configure the audio output.
synth.SetOutputToDefaultAudioDevice();
// Speak a string.
synth.Speak("This example demonstrates a basic use of Speech Synthesizer");
Console.WriteLine();
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
}
}
SpeechSynthesizer类提供对主机上安装的语音合成引擎功能的访问。安装的语音合成引擎由语音表示,例如Microsoft Anna。
http://msdn.microsoft.com/en-us/library/system.speech.synthesis.speechsynthesizer.aspx
答案 1 :(得分:0)
嘿那里=)我也在想这个,所以我在网上搜索但找不到任何东西。 我自己做了一点工作,想出了这个=)。 它工作得很好!
我在"中制作了1个随机数(int)生成器。公共部分类Form1:Form"所以它会加载@start。
代码:
private Random randomgen = new Random();
在这下面,我为8种不同的声音制作了整数,为不同的速度制作了8种。
" beepgen1"直到" 8"在下面的代码中是声音的频率 37-7000 Hertz有关" Console.Beep(FREQUENCY,MILISEC)"
的更多信息,请参阅this链接。示例将此代码放在按钮下,您的电脑会发出哔哔声@ 1000赫兹和100Milisec长。
" Console.Beep(1000,100)"
int beepgen1, beepgen2, beepgen3, beepgen4, beepgen5, beepgen6, beepgen7, beepgen8, beepgenn1, beepgenn2, beepgenn3, beepgenn4, beepgenn5, beepgenn6, beepgenn7, beepgenn8;
beepgen1 = (randomgen.Next(37, 7000));
beepgen2 = (randomgen.Next(37, 6000));
beepgen3 = (randomgen.Next(37, 6000));
beepgen4 = (randomgen.Next(37, 7000));
beepgen5 = (randomgen.Next(37, 8000));
beepgen6 = (randomgen.Next(37, 7000));
beepgen7 = (randomgen.Next(37, 7000));
beepgen8 = (randomgen.Next(37, 5000));
beepgenn1 = (randomgen.Next(50, 200));
beepgenn2 = (randomgen.Next(50, 250));
beepgenn3 = (randomgen.Next(50, 300));
beepgenn4 = (randomgen.Next(50, 200));
beepgenn5 = (randomgen.Next(50, 250));
beepgenn6 = (randomgen.Next(50, 200));
beepgenn7 = (randomgen.Next(50, 300));
beepgenn8 = (randomgen.Next(50, 250));
Console.Beep(beepgen1, beepgenn1);
Console.Beep(beepgen2, beepgenn2);
Console.Beep(beepgen3, beepgenn3);
Console.Beep(beepgen4, beepgenn4);
Console.Beep(beepgen5, beepgenn5);
Console.Beep(beepgen6, beepgenn6);
Console.Beep(beepgen7, beepgenn7);
Console.Beep(beepgen8, beepgenn8);