Я работал над кодом C ++, который будет принимать звук и выводить его частоту ядра, как гитарный тюнер. Я могу сгенерировать свою собственную рандомизированную синусоидальную волну и успешно выполнить БПФ из текстового файла с амплитудой и временем. Я просто не знаю, как получить полезные данные из микрофона или звукового файла.
Есть ли простой способ сэмплировать звук и выводить данные в текстовом файле с амплитудой или временем?
Я посмотрел на формат файла WAV и на то, как работают различные блоки, но это немного выше моего уровня. Любая помощь очень ценится.
Если вы можете убедиться, что ваш WAV монофонический, несжатый, 16-битный и с известной частотой дискретизации, вы можете либо пропустить WAV / RIFF / любой заголовок, либо засосать его, как если бы это были сэмплы (это не должно влиять на ваше БПФ) результатов много, если файл длинный).
Кроме того, несжатый WAV не является ужасно сложным форматом. Приложив больше усилий, вы разберете это.
Других решений пока нет …