Skip to main content

Zenix: A Lightweight Tool for Procedural Noise Generation

Project description

Zenix: A Lightweight Tool for Procedural Noise Generation


built with Python3 GitHub repo size PyPI version

Overview

Zenix is a lightweight tool for generating procedural noise such as white, pink, and brown noise. It can be used both as a command-line application and as a Python library, making it suitable for quick terminal usage as well as integration into Python projects. Zenix generates noise programmatically using NumPy and plays it through an audio backend, allowing developers to create continuous background sound for focus, concentration, relaxation, or acoustic masking. With support for multiple noise types, configurable parameters, fade-in effects, and looping playback, Zenix provides a simple yet flexible way to work with procedural noise in both interactive and programmatic environments.

PyPI Counter
Github Stars
Branch main dev
CI
Code Quality CodeFactor

Installation

Source Code

PyPI

Usage

CLI

zenix --type=white --duration=120 --volume=0.25 --fade-in=2 --fade-out=3 --sample-rate=44000 --loop --output=noise.wav

Arguments

Argument Description Default
--type Noise type white
--duration Duration of generated noise in seconds 30
--volume Output volume multiplier 0.3
--fade-in Fade-in duration in seconds 2
--fade-out Fade-out duration in seconds 2
--sample-rate Audio sample rate in Hz 44100
--loop Enable continuous looping playback False
--output Save generated noise to WAV file None

Library

from zenix import generate_noise, play_noise, save_noise, NoiseType
audio = generate_noise(
        noise_type=NoiseType.WHITE,
        duration=120,
        sample_rate=44000,
        volume=0.25,
        fade_in=2,
		fade_out=2
    )
save_noise("noise.wav", audio, sample_rate=44000)
play_noise(audio=audio, sample_rate=44000, loop=True)

Parameters

Parameter Description Default
noise_type Noise type NoiseType.WHITE
duration Duration of generated noise in seconds 30
sample_rate Audio sample rate in Hz 44100
volume Output volume multiplier 0.3
fade_in Fade-in duration in seconds 2
fade_out Fade-out duration in seconds 2

Issues & Bug Reports

Just fill an issue and describe it. We'll check it ASAP!

  • Please complete the issue template

Show Your Support

Star This Repo

Give a ⭐️ if this project helped you!

Donate to Our Project

Bitcoin

1KtNLEEeUbTEK9PdN6Ya3ZAKXaqoKUuxCy

Ethereum

0xcD4Db18B6664A9662123D4307B074aE968535388

Litecoin

Ldnz5gMcEeV8BAdsyf8FstWDC6uyYR6pgZ

Doge

DDUnKpFQbBqLpFVZ9DfuVysBdr249HxVDh

Tron

TCZxzPZLcJHr2qR3uPUB1tXB6L3FDSSAx7

Ripple

rN7ZuRG7HDGHR5nof8nu5LrsbmSB61V1qq

Binance Coin

bnb1zglwcf0ac3d0s2f6ck5kgwvcru4tlctt4p5qef

Tether

0xcD4Db18B6664A9662123D4307B074aE968535388

Dash

Xd3Yn2qZJ7VE8nbKw2fS98aLxR5M6WUU3s

Stellar

GALPOLPISRHIYHLQER2TLJRGUSZH52RYDK6C3HIU4PSMNAV65Q36EGNL

Zilliqa

zil1knmz8zj88cf0exr2ry7nav9elehxfcgqu3c5e5

Coffeete

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

Unreleased

0.5 - 2026-05-05

Added

  • save_noise function
  • --output argument

Changed

  • Validation system modified
  • Test system modified
  • README.md updated

0.4 - 2026-04-26

Added

  • fade_out parameter
  • --fade-out argument

Changed

  • README.md updated
  • Test system modified

0.3 - 2026-04-21

Added

  • Input validation
  • Logo

Changed

  • Test system modified

0.2 - 2026-04-13

Added

  • --sample-rate argument

Changed

  • README.md updated
  • Test system modified

0.1 - 2026-04-03

Added

  • generate_noise function
  • play_noise function
  • White noise
  • Pink noise
  • Brown noise

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

zenix-0.5.tar.gz (14.4 kB view details)

Uploaded Source

Built Distribution

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

zenix-0.5-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file zenix-0.5.tar.gz.

File metadata

  • Download URL: zenix-0.5.tar.gz
  • Upload date:
  • Size: 14.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for zenix-0.5.tar.gz
Algorithm Hash digest
SHA256 3d4df4383102f88e16753191e085bd79ac1e4efb7a1830feb1b6993e7f190ee8
MD5 3012dbabd4cc48cf5992bac705fffe5e
BLAKE2b-256 007db14ba6520cc76edcebcf36fc099ee074e02694f39605300be6b546087d85

See more details on using hashes here.

File details

Details for the file zenix-0.5-py3-none-any.whl.

File metadata

  • Download URL: zenix-0.5-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for zenix-0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 596a9e4c0a8e8ca61f956c2a10f6591c918d665f6178ebac241d7687688ee302
MD5 909ed5a5c6087fa4ce816d13554a6735
BLAKE2b-256 4c2593942580fef6e7af36be749ef4df5fd7689b88bd56fa7302703f3c99ea19

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