A C# program that uses NAudio to analyze an audio file and decode the detected morse signal. Currently not particularly tolerant of noise.
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
Starbeamrainbowlabs 9e3da7e005 Add instructions and better description to README 2 年前
MorseCodeParser Initial commit. That was a fun challenge! 2 年前
.gitignore Initial commit. That was a fun challenge! 2 年前
LICENSE Initial commit 2 年前
MorseCodeParser.sln Initial commit. That was a fun challenge! 2 年前
README.md Add instructions and better description to README 2 年前

README.md

AudioMorseDecoder

Dot dot hash!

A C# program that uses NAudio to analyze an audio file and decode the detected morse signal. Currently not particularly tolerant of noise.

Features:

  • A two-tiered buffer system to reduce memory usage when reading long files
  • A multi-step tokeniser
    • Extracts context-free tokens from the rolling buffer first
    • Converts context-free tokens into contextual tokens second
  • Noise gate to extract first-level tokens
  • AI-like logic to identify the speed of the morse code detected

Getting Started

Compiling

Open the solution in Visual Studio / MonoDevelop / Xamarin and hit build. Alternatively, linux users can run nuget restore && msbuild in the root of this repository.

Usage

Use the program like this:

./MorseDecoder.exe "/path/to/audio/file.wav"

In theory, it should support multiple audio file formats as it uses an NAudio AudioFileReader to read the samples from the source file.

The output will show the detected morse code, and the deciphered text.

License

This program is licensed under the Mozilla Public License 2.0.