Skip to content

KurtWeston/noise-gen

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

noise-gen

Generate ambient background noise (white, pink, brown) in your terminal for focus and concentration

Features

  • Generate white noise (equal intensity across all frequencies)
  • Generate pink noise (1/f frequency distribution, more natural)
  • Generate brown noise (1/f² distribution, deeper rumble)
  • Adjustable volume control (0-100%)
  • Duration parameter (minutes or infinite loop)
  • Fade in effect at start (configurable duration)
  • Fade out effect at end (configurable duration)
  • Real-time waveform visualization in terminal using ASCII
  • Graceful shutdown on Ctrl+C with fade out
  • Low CPU usage through efficient audio buffer management
  • Sample rate configuration (default 44100 Hz)
  • Mono audio output to minimize resource usage

How to Use

Use this project when you need to:

  • Quickly solve problems related to noise-gen
  • Integrate go functionality into your workflow
  • Learn how go handles common patterns

Installation

# Clone the repository
git clone https://github.com/KurtWeston/noise-gen.git
cd noise-gen

# Install dependencies
go build

Usage

./main

Built With

  • go

Dependencies

  • github.com/spf13/cobra
  • github.com/hajimehoshi/oto/v2
  • github.com/fatih/color

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Generate ambient background noise (white, pink, brown) in your terminal for focus and concentration

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages