# aiXander/Realtime_PyAudio_FFT

Realtime audio analysis in Python to extract audio features from streaming audio and send them over OSC to any client app.

Repository: https://github.com/aiXander/Realtime_PyAudio_FFT
Canonical: https://ross.abutalabs.com/products/realtime_pyaudio_fft
Language: Python
License: MIT
License Family: permissive
Topics: realtime-audio, fft, pyaudio, spectral-analysis, audio-visualizer, audio-analysis, beat-detection, osc, sounddevice
Last push: 2026-06-11T15:02:17+00:00

## Health v2 (maintenance only)
Score: 71/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 87, release rhythm 35, longevity 100
- inputs: {"age_days": 2304, "days_push": 83, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1082, forks 204 (observed 2026-08-28T04:03:30.955561+00:00)

## What it is
A low-latency Python server that captures live audio from microphone, line-in, or loopback devices and computes realtime features like band energies, a 128-bin log-spaced FFT spectrum, per-band onset triggers, and rolling BPM. It streams these features over OSC over UDP and WebSocket to client apps such as TouchDesigner, Max/MSP, Unity, p5.js, and game engines, with a bundled browser UI for tuning settings.

## Use cases
- drive VJ visuals from live audio in TouchDesigner
- send beat and onset triggers to Unity or a game engine
- analyze FFT spectrum from microphone in a p5.js sketch
- detect BPM from streaming audio in realtime
- react to music in Max/MSP or custom scripts over OSC
- run a low-latency audio feature server on a Raspberry Pi

## When to choose
- you need realtime audio features (bands, FFT, onsets, BPM) delivered to creative tools over OSC or WebSocket
- you want very low latency (8-15 ms) audio-to-visuals pipelines
- you want a tunable browser UI with persisted presets for audio-reactive setups

## When to avoid
- you need offline audio file analysis rather than live streaming input
- you need a Python library API to embed DSP in your own code rather than a standalone server
- you need multichannel or non-localhost networked audio distribution

## Facets
- artifact type: application
- maturity: active
- function: audio-processing, streaming, http-server, websocket, monitoring
- domain: media, developer-tools
- platform: python, windows, cross-platform, cli
- tags: fft, osc, pyaudio, beat-detection, spectral-analysis, audio-visualizer, vj-tools, low-latency, touchdesigner, creative-coding, audio, real-time, linux, macos, web-server

## Member repositories
- aiXander/Realtime_PyAudio_FFT (main) score 71

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:03:30.955561+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T06:51:14.234981+00:00, confidence not recorded.
  - readme: https://github.com/aiXander/Realtime_PyAudio_FFT (fetched 2026-08-28T04:03:30.955561+00:00, sha 1c3b2e4ec05e)
- Data as of 2026-08-30T08:39:29.467469+00:00.
