# Projet recorder. Le but du projet est d"échanger de l'infomation entre deux PC en utilisant le son. Une machine génère le son (via minimodem), le joue et l'autre l'écoute et décode le message. Recorder analyse le son isole les fréquences dominantes et les tradit en 0 ou 1. Il en sort un chaine binaire, qui est alors décodé dans le message original. ```$ ./recorder.py -h ____ __ / __ \___ _________ _________/ /__ _____ / /_/ / _ \/ ___/ __ \/ ___/ __ / _ \/ ___/ / _, _/ __/ /__/ /_/ / / / /_/ / __/ / /_/ |_|\___/\___/\____/_/ \__,_/\___/_/ Author: Snorky Version : 0.1 usage: recorder.py [-h] [-s] [-i DEVICE_INDEX] [-r RATE] [-l LENGTH_FRAME] [-p OUTPUT_NAME] [-v] options: -h, --help show this help message and exit -s, --show_devices List of audio devices currently available for use. -i DEVICE_INDEX, --device_index DEVICE_INDEX Index of input audio device. (Default: -1) -r RATE, --rate RATE Rate config. (Default: 16000) -l LENGTH_FRAME, --length_frame LENGTH_FRAME Frame size. (Default: 512) -p OUTPUT_NAME, --output_name OUTPUT_NAME Name to file to store raw audio. (Default: recorder.wav) -v, --verbosity Increase logging. (Default: False) ``` ## Démo: ### Machine 1: ``` echo "HackThePlanet" | minimodem --tx --ascii --startbits 0 --stopbits 0.0 -f hacktheplanet.wav 8 ``` Ouvrez audacity => importer => Audio et selectionner votre fichier ### Machine 2: ``` ./recorder.py ``` Une fois le recorder.py en attente, cliquer sur lecture et attendre la fin de la transmission. Puis Ctrl + c. Résultat: ``` ./recorder.py -v ____ __ / __ \___ _________ _________/ /__ _____ / /_/ / _ \/ ___/ __ \/ ___/ __ / _ \/ ___/ / _, _/ __/ /__/ /_/ / / / /_/ / __/ / /_/ |_|\___/\___/\____/_/ \__,_/\___/_/ Author: Snorky Version : 0.1 Args value: show_devices: False device_index: -1 rate: 16000 length_frame: 512 output_name: recorder.wav verbosity: True Listener is running. Ctrl + c for quit. ^C Saving wav file: /home/pierre/.cache/recorder/wave/recorder.wav. ######## INFOS ######## Value recording = [ 0 0 0 ... 2094 2321 1534] Data shape: 264704 Rate: 16000 length: 16.544s Path file: recorder.wav Device Index: -1 Extracting data from wav file: ............000100101000011011000110110101100010101000010110101001100000101000110110100001100111011010100110001011100101000011....... Decoding message: ............... Message transmitted is: HackThePlanet ```