Android декодирует DTMF-код с другого телефона

Я хочу обрабатывать код DTMF, созданный другим телефоном, в режиме реального времени. Если один телефон отправляет #1234 с помощью ToneGenerator, я хочу, чтобы он получил декодирование до #1234 при получении приложения. Как я должен идти об этом?

1 ответ

Решение

Вы могли бы использовать AudioRecord записать аудио с VOICE_DOWNLINKAudioSource затем выполните быстрое преобразование Фурье для записанного аудио, чтобы разделить его на различные частотные "ячейки". Из этой информации можно догадаться, воспроизводится ли данный тон (например, есть ли много энергии на определенной частоте, но очень мало энергии в другом месте частотного спектра).

В Google есть проект под названием dtmf-decoder, который пытается сделать это. Я сам этим не пользовался, поэтому понятия не имею, насколько хорошо это работает.

Другие вопросы по тегам