First of all, please excuse me if the topic is not into the right category, although you’ll notize something regarding nyquist soon.
Well, I’d like to share something I’ve been trying to create. It’s a sound code made by monographs and digraphs by using David Sky’s DTMF generator, which is very simple but I wanted to do this anyways. Here it’s the goal: make a comunication mode that can be easily reproduced by audio editors, not only being limited to Audacity.
So here’s a little bit of what inspired me to make this:
One day, I tried to reproduce Morse code by using another audio editor thanks to the built-in tone generator that is very common in that short of programs. You’llk now that the process is very tedious: you generate a sine waveform, you select the audio parts (wether short sections ofr dots and long ones for dashes) afterwards, you copy and paste into a new waveform, and so fort.
Ten I thought it would be possible to convert text to audio using an easier and more convenient method. I found DTMF tones and… eureka!
It’s very likely that something like this has been done before (that’s why I post this, in order to know either this exists or what) but I think that’s not the case.
So, what is my seudo-code?
First, I call it seudo-code 'cause some principles are sorta similar to Morse Code (but I don’t mean I’m copying it) however I’ve checked that the transmission speed is increased slightly. And here’s the point of the code:
Here what I do is very straightforward: I simply choose a letter to transmit according to its alphabetic equivalent, and to distinguish it from other things such as letters or words, I add spaces of a fixed length.
How does it work?
Download Audacity and install the DTMF generator from the Wiki, open the effect and we’re ready to start.
To translate text into this seudo DTMF code, find the numeric equivalent of each symbol and write it into the string box. So hello becomes 8512125. Since we have groups of letters that can be interpreted in various ways, we separate them using a comma for each letter. And if we want to add words, we type two commas.
To write numbers, since it results to be more or less ambiguous, the number sign is used and it is separated by a coma. So 1234 becomes #1,2,3,4. Moreover, the reading speed is still very fast.
At the end of the text, we type in two or three commas so that the audio can end more smootly.
Pauses and tone durations
As said before, we need pauses to clarify our context and tone durations are very important as well. So the paramethers are up to you since I still don’t have something to measure words per minute or something, but I’m pretending to change this as soon as possible. However, here is the basic schemme for the code:
The pause duration is the smallest whole to start from, while in Morse code the dih is the starting point
The tone duration is three times the pause duration; I got good results with that factor
The pause between each caracter is one comma long, that is, four times the pause duration
And finally, the pause between words is two commas long, namely eight times the pause duration.
With that in hand, it’s possible to write, at the moment, all 26 letters of the english alphabet and numbers from 0 to 9. But, it’d be interesting to add punctuation signs in the near future.
And after reading this, you might be wondering: whi this is digraphic code?
Because the idea is that the majority of content can be just made of two numbers and thus the readability is not slowed down (something that happens in Morse code, specially with characters such as numbers) therefore we only have about 100 combinations. Note that the above rule is broken since numbers from 0 to 9 are just one character long, which increases the transmission speed sometimes. Anyways this is not like converting ascii to DTMF; if people can comunicate using this set of characters and future punctuation marks, it’s okay for me.
To read, or in other words, to understand the generated audio codes, it is necesary to know the sounds of the corresponding characters; I myself can say this is kind of difficult but it’s not impossible at once.
Also, this is not made by any means to be used like a text cipher due to its weakness for using the a-z cipher. It must be seen, instead, as other comunication way. If you’re going to use it just like that, make sure other parties don’t know about it for increasing its strength just a little bit.
To give an idea of everything I’m talking about, here is a small sample made of the words “audacity is a free audio editor”. It might sound quite confusing but it’s still fun. The params are 40 and 120 pause and tone duration, respectively
As I said, I need some hints about the punctuation marks; I don’t know if I should start from 00 to 09 or something like that, so any help is highly appreciated.
So, basically that’s it: if you’d like to help or simply to say that I’m a mind-lacking abstract person, you are most welcome; be careful with this last action, though…