Giter VIP home page Giter VIP logo

data-transmission-through-sound's Introduction

Data-transmission-through-sound in python

Part of IDP-EE2025 Course.

Delatiled Description of Project

Given a data file (eg.text_file,image...) . We need to send this message from device to another using sound. For example , we have two laptops, so transmitter(speaker) of one laptop sends the audio signal of the encoded message to reciever(microphone) of other laptop and the reciever decodes the message and prints the file. Here the mode of transmission is audio.

Setup

The project requires pyaudio, it can be installed via pip install after the prerequisite portaudio library has been installed.

pip install pyaudio

Convert the data file to bits

Here a binary image file of MONALISA is considered.

  • Load the binary image

    MonaLisa=np.load('binary_image.npy')
    

Perform 4-QAM Modulation

As the continuous time modulation is not possible we need to discretise it with sampling freq of 50MHz and freq of modulation as 2MHz

Synchronization

  • Add a known pilot signal with freq of 10KHz of finite length.
  • Concatenate it with modulated signal.
  • Convert it into .wav file to transmit.
  • Transmitter part is done..

Now , Play the .wav file near the microphone of the laptop while instantiating the PyAudio code in the reciever.

  • Pyaudio code returns a .wav file
  • Use CORRELATION to find the when the actual signal starts.
  • Decode the .wav file using Scipy based obtained correlation value .

Demodulation

Use minimum distance decoding to demodulate.

Final image

After demodulation , calculate the final bit error rate and plot the final recieved image.

plt.imshow(d,'gray') 
plt.show()

data-transmission-through-sound's People

Contributors

aashrith20 avatar yashwanthguguloth24 avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

csrs2000

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.