java - 摩尔斯电码音频解码器(Android)

标签 java android audio audio-fingerprinting sound-recognition

我需要为 Android 创建一个“莫尔斯电码解码器”,与此应用程序非常相似:https://play.google.com/store/apps/details?id=org.jfedor.morsecode

我的应用程序必须监听来自麦克风的声音(莫尔斯电码)。并将代码翻译成原文。

说实话,这个功能是一个更大项目的一部分。我的目的是创建一个系统:

  • ENCODE:一个将文本翻译为声音的 Java 应用程序(在本例中,我选择了莫尔斯电码...我们没有太多时间来创建我们的“字母表”...)。所以,它是文本到声音。
  • DECODE:一款用于“聆听”此声音(摩尔斯电码)并获取原始文本的 Android 应用程序。所以,声音到文本。

创建java应用程序不是问题,但它是针对android应用程序的......听声音是可以的,但理解它是问题。

只需将问题分解为几个部分即可。有:

1)从麦克风录音[好的,没问题]

2)检测音调的开始时间

3)将其构建为一系列点和划线。

4)将其翻译成文本

我将从步骤 2) 开始...想法如下:我将应用程序设置为以特定频率和速度收听声音。必须识别摩尔斯电码...翻译它并为用户打印原始文本...但是如何呢?我不知道从哪里开始。有什么想法吗?

最佳答案

只需将问题分解为几个部分即可。有:

1)从麦克风录音

2)检测音调的开始时间

3)将其构建为一系列点和划线。

4)将其翻译成文本

这些本身似乎都不是特别困难。 2) 和 3) 可能是最难的,尤其是在信号速度变化很大或者需要处理错误的情况下。因此,也许您可​​以从一些预先录制的音频文件开始。

关于java - 摩尔斯电码音频解码器(Android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20422641/

相关文章:

java - GRPC Java - 防止内存泄漏

android - Android AIR 应用程序可以调用 NDK 库吗?

java - 在 Scala/Java 中连接 MP3

audio - 在 Fedora12 上使用 Octave 读取和播放声音

python - 如何使用 Python 和 Gracenote 识别音乐样本?

java - 如何以正确的形式获取信息(Spring Boot)

java - 在四舍五入的小数位周围添加括号

android - Gradle Terminal 未在 Android Studio 中显示

java - JAXB 是什么意思?

java - 以编程方式切换操作栏选项卡 - 如何附加参数?