Ультразвукова комунікація: використовуйте звук для передачі даних

Щоразу, коли ви хочете спілкуватися з кимось в електронному вигляді, вам доведеться якось встановити зв’язок. Наприклад, це може бути через Інтернет, локальну мережу або мобільний зв’язок.

Однак є й інші засоби спілкування, і один із них - по звуку. Хоча це не зовсім нова концепція, насправді не так багато комп'ютерних програм, які використовують її.

Quietnet - програма чату, закодована в Python, яка працює за допомогою майже ультразвукових частот. Саме ультразвук - це звук із частотою більше 20 кГц, що робить його нечутним для людини. Сама програма працює з частотами ~ 19 кГц.

Що стосується використання, все, що вам потрібно зробити, це запустити два сценарії - send.py та liste.py на вашій машині. Надіслати використовується для надсилання повідомлень чату з частотою, тоді як при прослуховуванні відображатимуться будь-які повідомлення, отримані в процесі роботи.

Ви можете використовувати його для тестів, щоб перевірити, чи працює він. Якщо є кілька учасників чату, кожному потрібно запустити обидві програми - припускаючи, що всі вони хочуть отримувати та надсилати.

Перед тим, як Quietnet можна запустити, необхідно встановити Python, а також pyaudio та numpy (Numerical Python) в операційній системі.

Коли це не вийде, запустіть команди python send.py та python liste.py, щоб розпочати роботу. Що б ви не ввели у вікно send.py, воно повинно з’являтися і у вікні liste.py.

Надсилання працює без будь-яких звичних технологій, необхідних для того, щоб вона працювала, наприклад, Bluetooth або WiFi.

Якщо це працює, залежить від ряду факторів, в тому числі від якості динаміків та мікрофона. Автор пропонує збільшити обсяг, щоб підвищити ефективність передачі, але це стосується цього.

Зауважте, що, хоча ви не зможете почути звук, тварини або молоді люди можуть це зробити.

Мені не вдалося запустити сценарій для роботи на моїй машині Windows 7 із встановленим Python 3.3.

Іншим додатком є ​​веб-аудіо реалізація Sonicnet.js, бібліотека JavaScript, яка може надсилати та отримувати дані у вигляді звуків.

Автор пояснює концепцію реалізації:

В основному, ви можете вказати діапазон частот, які слід використовувати, і алфавіт символів, який можна передавати. Спектр частоти розбивається на діапазони, що відповідають заданому алфавіту та кодам початку / кінця, при цьому кожен символ / код відповідає частині повного діапазону частот.

Сторона, що надсилає, перетворює кожен символ слова, яке буде надіслано, у центр відповідного діапазону частот і передає цю частоту протягом певної тривалості. Приймаюча сторона здійснює безперервне перетворення сигналу фур'є і шукає піки в заданому частотному діапазоні. Виявивши пік протягом значної тривалості, він робить перетворення назад від частоти до символу.

Ідея використовувати звук для передачі даних не нова, але нові програми можуть принести цю технологію широкій аудиторії.