All Projects → pckbls → pulseviz.py

pckbls / pulseviz.py

Licence: MIT license
Audio visualizer for PulseAudio written in Python

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to pulseviz.py

libvisual
Libvisual Audio Visualization
Stars: ✭ 67 (+179.17%)
Mutual labels:  audio-visualizer, pulseaudio
catnip
terminal audio visualizer for linux/unix/macOS/windblows*
Stars: ✭ 79 (+229.17%)
Mutual labels:  audio-visualizer, pulseaudio
raylib-py
A Python binding for the great C library raylib.
Stars: ✭ 147 (+512.5%)
Mutual labels:  pyglet
reco
A simple audio recording app for modern Linux desktop environment like Pantheon
Stars: ✭ 47 (+95.83%)
Mutual labels:  pulseaudio
barva
An audio visualizer that pulses the background of your terminal (or anything else).
Stars: ✭ 101 (+320.83%)
Mutual labels:  audio-visualizer
Myxer
A modern Volume Mixer for PulseAudio.
Stars: ✭ 190 (+691.67%)
Mutual labels:  pulseaudio
RecPlayer-iOS
A simple iOS application that records audio and plays it back. (+some animations)
Stars: ✭ 21 (-12.5%)
Mutual labels:  audio-visualizer
songturtle
🐢 Play, slow down, and loop sections of audio files in the browser 🐢
Stars: ✭ 26 (+8.33%)
Mutual labels:  audio-visualizer
Amplituda
Amlituda - an android library that calculates amplitudes from audio and provides data in different formats. Based on this data, you can draw waveform. Android audio amplitude library.
Stars: ✭ 75 (+212.5%)
Mutual labels:  audio-visualizer
QuietVR
A Quiet Place in VR: Generate any 3D object with your voice. It's magic!
Stars: ✭ 17 (-29.17%)
Mutual labels:  audio-visualizer
modular-led-controller-workstation
🎵 🌈 Real-time LED strip music visualization using Python and the ESP8266 or Raspberry Pi
Stars: ✭ 21 (-12.5%)
Mutual labels:  audio-visualizer
audio-visualizer-with-controls
html5 audio visualizer with audio play controls
Stars: ✭ 83 (+245.83%)
Mutual labels:  audio-visualizer
funcd
Daemon for functional keys (works without X11)
Stars: ✭ 14 (-41.67%)
Mutual labels:  pulseaudio
audiovisualizer
Another simple audio visualizer for android.
Stars: ✭ 33 (+37.5%)
Mutual labels:  audio-visualizer
wav2bar
Wav2Bar is a tool to make custom audio visualization and export production videos for the audio and music industry.
Stars: ✭ 35 (+45.83%)
Mutual labels:  audio-visualizer
vue-dictaphone
🎙️ Vue.js dictaphone component to record audio from the user
Stars: ✭ 22 (-8.33%)
Mutual labels:  audio-visualizer
pulse-flow
configure pulseaudio graphically
Stars: ✭ 24 (+0%)
Mutual labels:  pulseaudio
Comet
Web Synthesis on steroids
Stars: ✭ 18 (-25%)
Mutual labels:  audio-visualizer
JetTunes-Desktop-Music-Player
Material design music player made with javafx
Stars: ✭ 36 (+50%)
Mutual labels:  audio-visualizer
pulseaudio-module-xrdp
xrdp sink / source pulseaudio modules
Stars: ✭ 105 (+337.5%)
Mutual labels:  pulseaudio

pulseviz is a small OpenGL-accelerated audio visualizer for PulseAudio written in Python. Right now it's more or less a proof of concept with little to no features.

Build Status

Octave Bands Visualizer

Installation

pulseviz can be installed via pip3:

# System wide...
sudo pip3 install git+https://github.com/pckbls/pulseviz.py.git

# ...or only for the current user
pip3 install --user git+https://github.com/pckbls/pulseviz.py.git

Usage

pulseviz requires you to choose an audio source and a visualizer type:

$ pulseviz
Usage: pulseviz <source> <visualizer>

Available sources:
    alsa_output.pci-0000_00_1b.0.analog-stereo.monitor
    alsa_input.pci-0000_00_1b.0.analog-stereo
    alsa_output.usb-VIA_Technologies_Inc._USB_Audio_Device-00.iec958-stereo.monitor

Available visualizers:
    waveform
    spectrum
    bands

By default PulseAudio automatically creates a monitor source for each sink which can be used to visualize the audio that you are hearing. Those sources have a .monitor suffix.

Visualizations

Waveform Visualizer

The waveform visualizer shows the raw audio signal in the time domain.

Waveform Visualizer

Spectrum Visualizer

The spectrum visualizers transforms the audio signal into the frequency domain using a STFT.

Spectrum Visualizer

Octave Bands Visualizer

The octave bands visualizer divides the frequency domain magnitudes into octave bands and displays the average magnitude of each band.

Octave Bands Visualizer

Future goals

  • Make visualizers configurable
    • Either via command line switches...
    • ...or via configuration file
  • Stereo support
  • Create more visually appealing visualiziations such as
  • Further improve performance
    • By off-loading rendering tasks onto the GPU using shaders
    • By reducing unnecessary memory copies
    • Maybe by rewriting the DSP algorithms in C
  • Implement a GUI
    • Most likely based on GTK3
    • Ship two applications pulseviz (the original CLI version) and pulseviz-gtk
  • Something for the far distant future: Support more audio sub systems and platforms.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].