DSP-Equalizer

Python app using Streamlit for adjusting frequencies in audio wav files and csv.

Description

This web app is based on fourier transform, by transferring the normal signal into fourier domain, processing it, and finally applying inverse fourier to view changes.

This equalizer allows the user to:

  • Add .wav audio file and change each frequency power in the default mode.
  • Add a music file and control its Timpani, drums, and piccolo sound.
  • Add a sound file and control vowels on it, either to hide the vowel or to strengthen it, it's applicable on 3 vowels & 2 constants, ['ʃ','ʊ','a','r','b'].
  • Turn a normal voice into deeper or smoother voice.
  • Show the spectrogram of the audio signal.
  • Play and pause the dynamic plot of the audio signal before and after modifying the frequency.

Overview

This app has 5 modes :

1. Default

  • Divides the sginal frequency range into 10 sliders by which the user can control a specific range.

2. Voice changer

  • Turns a normal human voice into deeper or smoother voice.

3. Vowels equalizer

  • Allows the user to hide a specific vowel from a sentence.

4. Music equalizer

  • Controlls three instrument power by multiplying the amplitude by a factor from 0 (to hide the instrument) to 10.

5. Medical

  • Control arrhythmia component in ECG signal.

Dependencies

Python 3.10

used libraries

  • streamlit
  • wave
  • librosa
  • scipy
  • numpy
  • pandas
  • plotly.express
  • matplotlib.pyplot
  • altair

Preview

  • Home page

main · Streamlit - Personal - Microsoft​ Edge 11_18_2022 9_58_25 PM

  • Dynamic plotting on default mode

main.Streamlit.-.Personal.-.Microsoft.Edge.2022-11-18.21-58-28_Trim.mp4
  • Music mode

musicmode.mp4
  • Vowels mode

vowelsequalizer.mp4
  • Arrhythmia mode

arrythmiamode.mp4
  • Voice changer

voicechanger.mp4