CSCore: обнаружение разных звуков
Я пытаюсь обнаружить несколько звуков, которые играют. Есть около четырех звуков разных высот. Я использую cscore что-то вроде следующего...
using (WasapiCapture capture = new WasapiLoopbackCapture())
{
capture.Initialize();
using (WaveWriter w = new WaveWriter(stream, capture.WaveFormat))
{
capture.DataAvailable += (s, e) =>
{
w.Write(e.Data, e.Offset, e.ByteCount);
};
capture.Start();
Однако я не могу понять, как обнаружить различные звуки. это известные уникальные звуки, и мне просто нужно различать их. Я думал о расчете высоты тона, но не уверен, что это лучший способ.
У кого-нибудь есть идеи или знаете, как я могу рассчитать шаг?