Входной аудио частотный анализ и генерация определенной частоты для вывода - PullRequest
0 голосов
/ 15 октября 2010

Моя цель состоит в том, чтобы иметь набор частот, таких как 2 частоты, которые представляют биты (0 и 1). Я хочу отправить эти частоты на аудио через звуковую карту. На другом конце я подключаю шнур к микрофону звуковой карты. Мне нравится чувствовать этот сигнал (сгенерированный серией из 2 фиксированных частот) от другого компьютера и заново формировать данные.

Как я могу это сделать?

1 Ответ

0 голосов
/ 15 октября 2010

Ну, сначала вы должны сгенерировать две синусоидальные волны определенной частоты.По сути, вы узнаете текущую частоту дискретизации своей звуковой карты и просто сгенерируете серию поплавков, которые представляют синусоидальную волну определенной частоты на этой частоте дискретизации.Т.е. для звуковой карты с 48000 Гц и частотой 1000 Гц каждая полная синусоида (один холм, одна впадина) должна состоять из 48 выборок.

Обратите внимание, что максимальная частота, которую вы можете генерировать, составляет половину частоты дискретизации.

Далее вы генерируете вторую синусоидальную волну со второй частотой.Убедитесь, что две частоты имеют определенное расстояние друг от друга.Для этого должно быть достаточно частотного коэффициента в один полутон factor >= (1+1/12).

Также убедитесь, что сумма обоих пазух не превышает максимальную амплитуду.Самый простой способ сделать это - ограничить обе пазухи амплитудами <= 0.5.При избыточной стрельбе сигнал обрезается, что создает новые пики частоты.

На принимающей стороне выполните БПФ коротких временных интервалов (около 256-1024 выборок) входящего сигнала.Для лучшего разрешения по частоте возьмите перекрывающиеся срезы и постепенно уменьшайте их концы, затем усредняйте по времени спектральные срезы.В полученном спектре вы должны четко видеть пики на двух отправленных частотах.

Если вы не очень много знаете об аудио, это, вероятно, довольно сложная задача.

...