Я пытаюсь использовать микрофон и обрабатывать захваченный звук. Мне удалось все это сделать, но у меня есть проблема... Мой захваченный звук автоматически воспроизводится для пользователя, а я этого не хочу.
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);
}