Ultraljudkommunikation: använd ljud för att överföra data

När du vill chatta med någon elektroniskt måste du upprätta en anslutning på något sätt. Detta kan till exempel ske via Internet, ett lokalt nätverk eller mobilanslutning.

Det finns dock andra sätt att kommunicera, och ett av dem är med ljud. Även om det inte är ett helt nytt koncept har det egentligen inte varit så många datorprogram som använder det.

Quietnet är ett chattprogram som är kodat i Python som fungerar med hjälp av ultraljudsfrekvenser nära. Ultraljudet i sig är ljud med en frekvens som överstiger 20 kHz, vilket gör att den inte kan höras för människor. Själva applikationen fungerar med ~ 19 kHz-frekvenser.

Så långt användningen går är allt du behöver göra att köra två skript, send.py och listen.py på din maskin. Skicka används för att skicka chattmeddelanden med frekvensen, medan lyssna visar alla meddelanden som plockas upp under processen.

Du kan använda det för tester för att se om det fungerar. Om det finns flera chattdeltagare måste alla köra båda programmen - förutsatt att de alla vill ta emot och skicka.

Innan Quietnet kan köras är det nödvändigt att installera Python, såväl som pyaudio och numpy (Numerical Python), i operativsystemet.

När det är ur vägen, kör kommandona python send.py och python listen.py för att komma igång. Oavsett vad du skriver i fönstret send.py bör också visas i listen.py-fönstret under processen.

Sändningen fungerar utan någon av de vanliga teknologierna som du behöver ha aktiverat för att den ska fungera, till exempel Bluetooth eller WiFi.

Om det fungerar beror dock på ett antal faktorer, inklusive högtalarnas kvalitet och mikrofon. Författaren föreslår att öka volymen för att förbättra överföringens effektivitet, men det handlar om det.

Observera att även om du kanske inte kan höra ljudet, så kan djur eller unga människor kunna.

Jag kunde inte få skriptet att köras på min Windows 7-maskin med Python 3.3 installerat.

En annan applikation är implementeringen av webbljudet Sonicnet.js, ett JavaScript-bibliotek som kan skicka och ta emot data som ljud.

Författaren förklarar konceptet bakom genomförandet:

I princip kan du ange ett intervall av frekvenser som ska användas och ett alfabet med tecken som kan överföras. Frekvensspektrumet är uppdelat i områden som motsvarar det specificerade alfabetet och start / slutkoderna, varvid varje tecken / kod motsvarar en del av hela frekvensområdet.

Den sändande sidan konverterar varje tecken i ordet som ska sändas till mitten av motsvarande frekvensområde och överför denna frekvens under en viss tid. Mottagningssidan gör en kontinuerlig fyrare transformering av signalen och letar efter toppar inom det specificerade frekvensområdet. Efter att ha hittat en topp under en betydande längd gör det omvandlingen från frekvens till karaktär.

Idén att använda ljud för att överföra data är inte ny, men nya applikationer kan ge tekniken till en större publik.