Skip to main content

Deep Brown Noise for Focus as a MenuBar App & CLI Tool

Project description

               _.-````'-,_
     _,.,_ ,-'           `'-.,_
   /)     (\                   '`-.
  ((      ) )                      `\
   \)    (_/                        )\
    |       /)           '    ,'    / \
    `\    ^'            '     (    /  ))
      |      _/\ ,     /    ,,`\   (  "`
       \Y,   |  \  \  | ``````| / \_ \
         `)_/    \  \  )    ( >  ( >
                  \( \(     |/   |/
                 /_(/_(    /_(  /_(

LowHum

PyPI Python License Downloads

Deep brown noise for focus, for macOS menu bar. Requires macOS and Python 3.12+.

Single-purpose menu bar app that generates deep brown noise locally and plays it on loop. Install it, click play, forget about it.

Install

pip / uv (requires Python 3.12+):

uv tool install lowhum

Standalone .app — download LowHum.app from the latest release. The app is not notarized, so macOS will block it on first launch. To allow it:

xattr -cr /Applications/LowHum.app

Usage

lowhum                          # launch the menu-bar app (runs in background)
lowhum devices                  # list output devices
lowhum generate                 # pre-generate the audio file

lhm is a shorthand alias for all commands.

Menu bar controls

  • Play / Stop from the menu bar
  • Pick any connected audio device from the Output Device submenu
  • Binaural beats overlay (Theta, Alpha, Beta, Gamma)
  • Noise color selection (brown, pink, white)
  • Auto-stops when headphones connect or disconnect

How it works

On first launch, a 10-minute WAV is synthesized locally for every noise color and binaural combination. Cumulative-sum brown noise through a Butterworth bandpass (1 to 500 Hz, 20 Hz sub-bass highpass), RMS-normalized per chunk, crossfaded at boundaries. Everything is stored in ~/.lowhum/.

Playback streams through PortAudio via memory-mapped files, so the full WAV never sits in RAM. The app polls audio devices every 2 seconds and stops instantly if headphones disconnect or a Bluetooth device drops.

The menu bar icon is a template image, so macOS handles dark/light mode automatically.

License

MIT

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

lowhum-0.4.0.tar.gz (4.9 MB view details)

Uploaded Source

Built Distribution

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

lowhum-0.4.0-py3-none-any.whl (4.1 MB view details)

Uploaded Python 3

File details

Details for the file lowhum-0.4.0.tar.gz.

File metadata

  • Download URL: lowhum-0.4.0.tar.gz
  • Upload date:
  • Size: 4.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for lowhum-0.4.0.tar.gz
Algorithm Hash digest
SHA256 863af291692a5c015a674951c368570c6a2620a541c55ef88cca1878158a2409
MD5 ae580d2182c941f1020d93b073ddaca0
BLAKE2b-256 cde11bd622f80350c4d4b96ac331154a476e0c396397454b923b0646bc710dcb

See more details on using hashes here.

File details

Details for the file lowhum-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: lowhum-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 4.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for lowhum-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 41b2586e7958bb63d4e6efd4a7c0a9c089cccf35031877bfe40d3316a7d86612
MD5 0c74274e9aedcaff3d706a7624e7244a
BLAKE2b-256 41c9f9de7aeb61735eb2ff800c44c545d7f9648336f0c20a1b715f92def77be9

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