繁体   English   中英

Android中的DTMF接收

[英]DTMF receiving in Android

我的主要目标是在我的 Android 应用程序中获得 DTMF 音并执行相关操作。 我已经看到 TelephonyManager 可以发送 DTMF 但没有接收它们的方法 我遇到了许多页面(其中大部分都很旧),它们建议通过使用 AudioRecorder 缓冲VOICE_DOWNLINK音频 stream 来使用 FFT 库(在清单中设置适当的权限)。 我尝试使用 AudioRecorder 和 MediaRecorder(主要用于创建文件)以及“Visulizer”class,其中包含开箱即用的正确 getFft 方法,但即使权限是,它们都无法访问 MediaRecorder.AudioSource.VOICE_DOWNLINK & co正确管理和授予。

使用权限 android:name="android.permission.RECORD_AUDIO"

Visualizer/MediaRecorder/AudioRecorder 都没有被初始化,我对我正在追逐记录权限以收听 DTMF 音调感到沮丧。 还有其他我不考虑的方法吗?

经过多次研究,这似乎是不可能的,因为

  1. 没有 DTMF 监听方法(谷歌...为什么??)
  2. FFT 访问其他电话音频有限制。 特别是与最后一点相关,我看到基本上所有基于常用 Google/GitHub 代码( https://github.com/pjasiun/dtmf-decoder )的应用程序在通话期间从某个 SDK 崩溃。 他们都可以很好地使用电话麦克风,这对电话来说毫无用处

把这篇文章留给其他人。 出于我的目的,我使用 Arduino DTMF 识别器解决了问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM