- numpy
- pygame
- sounddevice
- sudo apt-get install libportaudio2
🚀 Excited to share my latest project: Artistic Audio Visualizer! 🎨🔊
I've created a series of Python scripts (sound.py
to sound9.py
) that turn audio input into real-time visual art using Pygame, Numpy, and Sounddevice libraries. Each script builds upon the previous one, adding unique features like:
🎼 Frequency to note mapping 🌈 Dynamic circle sizes and colors 🌀 Short-Time Fourier Transform (STFT) for accurate frequency detection 🎨 Note letters displayed in the middle of circles
Whether you're a developer, musician, or just love cool visualizations, these scripts are a fun way to see your audio come to life.
🔧 Requirements: Python 3.x, Pygame, Numpy, Sounddevice
Feel free to check it out, give feedback, or contribute!
#Python #Pygame #DataVisualization #SoundProcessing #OpenSource
This project contains a series of Python scripts (sound.py
to sound9.py
) for creating an artistic audio visualizer using Pygame, Numpy, and Sounddevice libraries. Each script provides a unique implementation or improvement over the previous version, allowing you to visualize audio input in real-time with different features.
- Python 3.x
- Pygame
- Numpy
- Sounddevice
- Clone the repository or download the scripts.
- Install the required libraries using pip:
pip install pygame numpy sounddevice
Each script (sound.py
to sound9.py
) can be executed independently. To run a script, use the following command:
python sound.py
Replace sound.py
with sound2.py
, sound3.py
, etc., to run the other versions.
- Real-time audio visualization
- Configurable parameters for audio processing and visualization
- Frequency to note mapping
- Note color coding
- Dynamic circle size based on audio magnitude
- Note letters displayed in the middle of the circles
Each script has incremental improvements and unique features. Refer to the Scripts Overview section for detailed information on each script's features.
- Basic real-time audio visualization.
- Displays circles representing frequencies.
- Maps frequencies to musical notes.
- Added smoothing to frequency magnitudes.
- Improved visual representation with configurable smoothing factor.
- Introduced configurable frequency range.
- Enhanced user interaction for adjusting parameters.
- Implemented thresholding for circle display.
- Configurable threshold parameter to filter low magnitudes.
- Added note colors for visual differentiation.
- Each note is displayed with a unique color.
- Included quarter-step notes for more accurate frequency representation.
- Added colors for quarter-step notes.
- Incorporated loudness into the display by adjusting circle sizes based on magnitude.
- Enhanced visual feedback with dynamic circle sizes.
- Displayed note letters in the middle of the circles.
- Improved user interface with text rendering.
- Utilized Short-Time Fourier Transform (STFT) for more accurate frequency detection.
- Implemented a Hanning window for better time-frequency resolution.
Contributions are welcome! If you have any suggestions, improvements, or bug fixes, feel free to create a pull request or open an issue.
This project is licensed under the MIT License. See the LICENSE file for details.
By following this README, you should be able to run and explore each version of the audio visualizer scripts, understanding their unique features and improvements. Enjoy visualizing your audio input in real-time!