Modem DTMF

Modem DTMF jest moim programem pozwalającym na przechowywanie danych w formie dźwięku. Napisałem go na początku 2020 roku.

Modem, właściwie mo-dem oznacza modulator-demodulator. Najczęściej jest to urządzenie elektroniczne pozwalające na konwersję sygnału analogowego na cyfrowy (i odwrotnie). Modemy stosuje się w celu transmisji danych cyfrowych za pośrednictwem jakiegoś medium transmisyjnego (np. kabla miedzianego).

Mój program mimo iż nie jest urządzeniem elektronicznym, w sporym stopniu spełnia założenia modemu, bowiem umożliwia on modulację i demodulację danych.

DTMF – jest to stosowany w telefonii standard wybierania tonowego. Wciśnięcie konkretnego przycisku na aparacie telefonicznym powoduje wygenerowanie tonu składającego się z nałożonych na siebie dwóch fal sinusoidalnych o częstotliwościach z poniższej tabelki.

 1209 Hz1336 Hz1477 Hz1633 Hz
697 Hz123A
770 Hz456B
852 Hz789C
941 Hz*0#D

No dobra! Ale jak użyć tych informacji do zapisania zdjęcia na kasecie magnetofonowej? Oczywisty jest fakt, że taka konwersja jest wyjątkowo nieefektywna. Nie zmienia to jednak drugiego i trzeciego faktu. Taka konwersja technicznie jest jak najbardziej możliwa do wykonania. Ponadto możliwość szpanowania zdjęciem na kasecie przed ziomkami jest naprawdę fajna.

Wracając… Aparaty telefoniczne, centrale, i inne elementy sieci telefonicznej używają głównie trzech pierwszych kolumn tabeli DTMF. Przekłada się to na 12 możliwych do wykorzystania znaków. Możemy oczywiście nasze zdjęcie przeliczyć z systemu dwójkowego na dwunastkowy i potem…

Pytanie tylko: po co? Możemy wszakże wykorzystać wszystkie 16 znaków, jakie daje nam standard DTMF. Nie budujemy przecież elementu sieci telefonicznej. No właśnie. 16 znaków. Każdy programista już tutaj zauważy możliwość zastosowania systemu heksadecymalnego. Jeden bajt to 8 bitów (00-FF). Skoro jeden ton pozwala na zapisanie jednego z 16 znaków (0-F), to możemy założyć, że dwa tony to jeden bajt naszego zdjęcia.

Kodowanie i dekodowanie wiadomości tekstowej (ASCII)

Gdyby ktoś chciał napisać dla zabawy podobny program, poniżej znajdują się wyjściowe pliki audio. Zapraszam do próby odkodowania obrazka i wiadomości tekstowej.

Tekst w formie dźwięku
Obrazek w formie dźwięku

© 2024 – serwerbartka.pl