Частота и амплитуда звука

Мне нужно записать звук с iPhone. Во время записи мне нужно знать, сколько звуковых волн у меня в данный момент, а также частоту и амплитуду каждой волны. Мне кажется, что аваудиорекордер мне не поможет.

Я просмотрел пример кода Apple SpeakHere, но я могу получить отсюда только амплитуду (насколько я понимаю).

Я посмотрел пример кода Apple aurioTouch. Кажется, он делает то, что мне нужно, но пример кода невероятно большой и написан в основном на C++, поэтому мне сложно его понять.

Может ли кто-нибудь дать мне примеры, как получить частоту и амплитуду звука. Будет лучше, если вы дадите мне примеры кода.


person Paul T.    schedule 06.07.2012    source источник
comment
Вернитесь к aurioTouch и изучите его немного усерднее — это действительно лучший пример кода для такого рода вещей, но это сложная предметная область, и для ее понимания нет коротких путей.   -  person Paul R    schedule 06.07.2012
comment
Извините, но Ваш вопрос немного некорректен. сколько звуковых волн у меня есть в текущий момент и частота и амплитуда каждой волны? Это на самом деле не имеет большого смысла. Поскольку у вас также есть спектрограмма в вашем теге, может быть, это то, что вы хотите? Для этого есть много исходного кода. Вы говорите, что aurioTouch делает то, что вам нужно, почему бы не использовать это в качестве отправной точки? Если вы хотите делать аудио, С++ — это САМЫЙ язык, так что вам придется его выучить.   -  person Bjorn Roche    schedule 06.07.2012
comment
Я понял, что мне нужно изучить aurioTouch. Я сделаю. Но почему в данный момент у меня много звуковых волн, а частота и амплитуда каждой волны не имеет смысла? Насколько я знаю, у меня в один момент времени есть много звуковых волн с разной частотой и разным сдвигом, и я не знаю, как, например, снять сдвиг каждой волны со спектрограммой. Поправьте меня если я ошибаюсь.   -  person Paul T.    schedule 09.07.2012
comment
На SO есть много предыдущих вопросов по этому вопросу с некоторыми очень хорошими ответами - попробуйте прочитать некоторые из них, чтобы получить общее представление о том, как БПФ используется для оценки спектров мощности для использования при построении спектрограммы. См. список связанных вопросов справа ---›   -  person Paul R    schedule 09.07.2012


Ответы (1)


Образец приложения aurioTouch от Apple, по-видимому, написан с использованием C++ абсолютно без всякой причины. Преобразуйте код в обычный C, и, возможно, вы поймете его лучше. Анализ звука DSP почти в реальном времени не становится намного проще, так что почитайте эту тему.

person hotpaw2    schedule 06.07.2012
comment
Вы написали, так что почитайте эту тему. Какую тему вы имели в виду? - person Paul T.; 09.07.2012
comment
Существуют десятки учебников по цифровой обработке сигналов, а также по компьютерной обработке звука и музыки. - person hotpaw2; 09.07.2012