Skip to main content

A custom educational DSP suite featuring a from-scratch iterative FFT implementation - built by Hamd Waseem

Project description

Audiergon Local

A suite of audio-related tools built with Python and AWS to demonstrate the use of the Fourier Transform!

Features

Cooley-Tukey Fast Fourier Transform

An implementation of the Cooley-Tukey FFT in Python, in fast_fourier_transform.py. It contains the following three methods:

  • iterative_fft() performs a forward FFT
  • iterative_ifft() performs a backward FFT
  • iterative_fftfreq() calculates the frequencies outputted by an FFT

Local EQ Filter

A local Gradio client that uses the FFT to modify frequency bins in inputted audio files to analyse them.

  • Requires the gradio library
  • Uses process.py (Hann Window and Overlap-Add) for processing and local_gradio.py for the UI

Fourier Analysis

A local analysis tool to visually graph the Frequency Domain and Time Domain of a sound file.

  • Requires inputted audio files to be formatted as .wav files using a Mono PCM codec.
    • Use ffmpeg -i in.mp3 -acodec pcm_s16le -ac 1 -ar 44100 out.wav in a command line to convert
  • Uses the fourier_analysis.py file

Live Fourier Analysis

A local analysis tool that uses your microphone to graphically show the Frequency Domain of the ambient sound around you!

  • Requires the sounddevice library
  • Uses the live_fourier_analysis.py file

Upcoming Features

Audio Compression Tool

Utilises the concept that high frequency sound gets masked when lower frequencies are louder.

AWS Cloud Implementation and UI

A streamlined version of the FFT designed to process audio as fast as possible entirely within the cloud.

  • Planning to use S3 Event Triggers combined with Lambda and a simple Vercel/Next.js frontend.

Devlog

Check out Audiergon Devlog Part 1 on YouTube for a detailed run-through of the theory behind the Fourier Transform!

Watch the video!

License

Audiergon is licensed under the MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

audiergon-0.1.0.tar.gz (7.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

audiergon-0.1.0-py3-none-any.whl (8.3 kB view details)

Uploaded Python 3

File details

Details for the file audiergon-0.1.0.tar.gz.

File metadata

  • Download URL: audiergon-0.1.0.tar.gz
  • Upload date:
  • Size: 7.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for audiergon-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2824eb5285512488091e282ca5d9771179ca416a98d37cfe878ce328c0aa32b7
MD5 99082517af46d225307ac8af3f7f75cd
BLAKE2b-256 1ffe97e36f04ab4cc25ac60ac0211dea8a9f2bad4a2c3d0196b64a1b1306e8bb

See more details on using hashes here.

File details

Details for the file audiergon-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: audiergon-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for audiergon-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 39b115e4a6ff9beb7646ae27d2d421f5611f7ab37b0a90708f7540411e26b7d0
MD5 8781b281621a63c70b19ca310fa9f85c
BLAKE2b-256 9380d1ac9597e49be822d357e5d108902adcfa90641fd71e004f0c6ac794fb91

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page