PCM-аудио не сохраняется как ряд тонов.Чтобы понять это, вам нужно быстрое преобразование Фурье, или БПФ.См. https://stackoverflow.com/search?q=pitch+detection, уже есть 10 сообщений об этом.
Подумайте о звуковой форме волны.PCM-кодирование - это просто выборка, генерирующая определенное количество раз в секунду, с использованием определенного количества битов на выборку.
Изображение из http://en.wikipedia.org/wiki/Pulse-code_modulation
16-битный Mono PCM на частоте 44,1 кГц означает, что 44 100 раз в секунду будет сохраняться 16-битное значение (2 байта), которое представляет сигнал в конкретный момент времени, когда была взята выборка.44,1 кГц достаточно быстры, чтобы хранить частоты, которые приближаются к 22 кГц (см. Частота Найквиста ).
БПФ превращает эти выборки из временной области в частотную область.То есть вы можете найти уровни всех частот для определенного периода времени.Чем больше полос вы смотрите, тем интенсивнее вычисления.