Skip to main content

A real-time visualizer for the 9 nineeq frequencies

Project description

9eq

Real-time audio visualizer.

[!NOTE] The CLI command is nineeq (nine-e-q) and the Python package is 9eq

Python Version License

Features

  • Real-time Visualization - Live frequency spectrum analysis with colorized bars
  • Precise Detection - FFT-based frequency detection with configurable tolerance
  • Audio File Analysis - Analyze pre-recorded audio files
  • Tone Generation - Generate pure nineeq frequency tones
  • Color Mapping - Each frequency has a unique color based on chakra theory
  • Multiple Visualization Modes - Bar chart and waveform displays
  • CLI Interface - Easy command-line usage
  • Modular Design - Use as a library in your own projects
Frequency Color
174 Hz Deep Red
285 Hz Orange Red
396 Hz Orange
417 Hz Gold
528 Hz Green
639 Hz Blue
741 Hz Purple
852 Hz Deep Pink
963 Hz White

Installation

Quick Install

# Clone the repository
git clone https://github.com/clxrityy/9eq.git
cd 9eq

# Install with pip
pip install -e .

From PyPI

pip install 9eq

Manual Installation

# Install dependencies
pip install -r requirements.txt

# Install in development mode
pip install -e .

Usage

Command Line Interface

List all frequencies

nineeq list

Real-time visualization

# Basic visualization
nineeq visualize

# Choose visualization mode
nineeq visualize --mode wave

# Specify audio device
nineeq visualize --device 1

Analyze an audio file

nineeq analyze path/to/audio.wav

# Analyze only first 30 seconds
nineeq analyze path/to/audio.wav --duration 30

Generate a tone

# Generate 528 Hz tone (5 seconds)
nineeq generate 528

# Custom duration and output
nineeq generate 528 --duration 10 --output miracle_tone.wav

Python Library Usage

import importlib

# Import the package (note: package name is 'nineeq')
_nineeq = importlib.import_module('nineeq')
FrequencyVisualizer = _nineeq.FrequencyVisualizer
FrequencyDetector = _nineeq.FrequencyDetector
ToneGenerator = _nineeq.ToneGenerator

# Real-time visualization
visualizer = FrequencyVisualizer(mode='bar')
visualizer.start()

# Analyze audio file
visualizer.analyze_file('meditation.wav')

# Detect frequencies in audio data
import numpy as np
detector = FrequencyDetector()
audio_data = np.random.randn(4096)  # Your audio data
detected = detector.detect_frequencies(audio_data)

# Generate a tone
generator = ToneGenerator()
generator.save_tone('528hz.wav', frequency=528, duration=5.0)

Frequency Detection

The visualizer uses Fast Fourier Transform (FFT) to convert time-domain audio signals into frequency-domain data. For each target nineeq frequency:

  1. Windowing: Applies a Hann window to reduce spectral leakage
  2. FFT Analysis: Computes the frequency spectrum
  3. Peak Detection: Identifies magnitude peaks within ±5 Hz of target frequencies
  4. Normalization: Scales magnitudes for visualization

Running Tests

pytest tests/

Code Formatting

black nineeq/

Requirements

  • Python 3.8+
  • NumPy >= 1.21.0
  • SciPy >= 1.7.0
  • Matplotlib >= 3.5.0
  • sounddevice >= 0.4.5
  • soundfile >= 0.11.0
pip install -r requirements.txt

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

9eq-0.1.0.tar.gz (12.5 kB view details)

Uploaded Source

Built Distribution

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

9eq-0.1.0-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

Details for the file 9eq-0.1.0.tar.gz.

File metadata

  • Download URL: 9eq-0.1.0.tar.gz
  • Upload date:
  • Size: 12.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for 9eq-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a3c8e99f6d0ed6c1bf2e3a92bad2868a838d72dded382fae085cb2285be6da74
MD5 5b2a38cf8058cb6e4649055e8dd512c6
BLAKE2b-256 a3d3da8e4f8667587bc7ac8ce2a1c20822295ef291d02285daa5478770e81663

See more details on using hashes here.

Provenance

The following attestation bundles were made for 9eq-0.1.0.tar.gz:

Publisher: publish.yml on clxrityy/9eq

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file 9eq-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: 9eq-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 11.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for 9eq-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2578a74d0978b5ad5a16cf977e2c358d2bfc7764a33dfc94ce2702b965952b2a
MD5 9b9e4f965d750e547696045985271a94
BLAKE2b-256 cb17b4aa8b02903e6c62169c4c9bfcff2c228ffc8bec7a45a93e37984786ace0

See more details on using hashes here.

Provenance

The following attestation bundles were made for 9eq-0.1.0-py3-none-any.whl:

Publisher: publish.yml on clxrityy/9eq

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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