【发布时间】:2016-10-13 17:30:57
【问题描述】:
我正在尝试使用麦克风并处理捕获的音频。我设法做到了所有这些,但我遇到了一个问题......我捕获的音频会自动播放给用户,我不希望这样。
audioSrc.clip = Microphone.Start(null, true, 1000, 44100);
while (!(Microphone.GetPosition(null) > 0)) { }
audioSrc.Play();
我尝试禁用音频侦听器并降低音频源的音量,但没有奏效。
有谁知道我如何在不播放的情况下捕获音频?
编辑 1:
void Start()
{
GameObject a = new GameObject("AudioSource");
audioSrc = a.AddComponent<AudioSource>();
Instantiate(a);
string deviceName = Microphone.devices[0];
audioSrc.clip = Microphone.Start(deviceName, true, 1000, 44100);
audioSrc.volume = 0;
while (!(Microphone.GetPosition(null) > 0)) { }
audioSrc.Play();
}
void Update()
{
audioSrc.GetSpectrumData(spectrum, 0, FFTWindow.BlackmanHarris);
frq = findPitch(spectrum);
txtFreq.text = "Hz: " + frq;
trigger.update(Time.deltaTime, frq);
}
【问题讨论】:
-
嗨,卢拉斯,你在吗?你需要勾选一个答案。
标签: c# audio unity3d microphone