34 lines
1.2 KiB
Markdown
34 lines
1.2 KiB
Markdown
# 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:
|
|
|
|
```bash
|
|
./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](https://git.starbeamrainbowlabs.com/sbrl/AudioMorseDecoder/src/master/LICENSE).
|
|
|