A Python project for audio signal modulation and demodulation, demonstrating amplitude modulation (AM) techniques for radio communication.
This project implements amplitude modulation to encode audio signals onto carrier waves, simulating radio transmission and reception. It includes real-time audio waveform visualization and signal processing capabilities.
- Audio Recording: Capture audio input through your microphone
- Signal Upsampling: High-quality interpolation for precise modulation
- Amplitude Modulation: Encode audio signals onto carrier waves
- Signal Demodulation: Recover original audio from modulated signals
- Waveform Visualization: Real-time and static waveform displays
- Data Export: Save waveform data to text files
Modulate.py- Main modulation script demonstrating the full AM processModulationFunctions.py- Core signal processing functions (recording, upsampling, downsampling, carrier generation)Client Final.py- Complete client implementation with all modulation functionsLiveWaveform.py- Real-time audio waveform visualization tool
- Python 3.x
- numpy
- sounddevice
- matplotlib
- scipy
- Clone this repository:
git clone https://github.com/MaxBlanksby/RadioModulation.git
cd RadioModulation- Install the required dependencies:
pip install -r requirements.txtRun the main modulation script:
python Modulate.pyThis will:
- Record 5 seconds of audio
- Display the original waveform
- Upsample the signal
- Generate a carrier wave
- Modulate the audio onto the carrier
- Demodulate to recover the original signal
To view real-time audio input:
python LiveWaveform.pyKey parameters in Modulate.py:
duration- Recording duration in seconds (default: 5)audioSampleRate- Audio sampling rate in Hz (default: 20000)amUpSampleFactor- Initial upsampling factor (default: 10)simUpSampleFactor- Simulation resolution factor (default: 10)modulationIndex- Modulation depth (default: 1)
- Recording: Audio is captured at a specified sample rate
- Upsampling: Signal is interpolated to a higher sample rate for accurate modulation
- Carrier Generation: A high-frequency sine wave carrier is generated
- Modulation: The audio signal modulates the amplitude of the carrier wave
- Transmission: (Simulated) Modulated signal represents transmitted data
- Demodulation: Original signal is recovered by dividing by the carrier and downsampling
MIT License
Max Blanksby