soundAlign
Direction for your ears. Progress for your mind. selected
author: chai chaimee
url: https://github.com/chaichaimee/soundAlign
Introduction
SoundAlign is an NVDA add‑on that gives your audio feedback a new dimension: spatial panning. Instead of every beep or progress tone coming from the same place, SoundAlign lets you decide where sounds should appear in your stereo field. You can make low‑frequency add‑on beeps come from the left, high‑frequency ones from the right, and have progress indicators glide smoothly from left to right (or right to left) as a task advances. This makes audio cues faster to identify and easier on the ears.
What It Does
SoundAlign intercepts the tones.beep function used by NVDA itself and many add‑ons. It then applies a directional pan based on your settings, without altering the original pitch or duration. The add‑on distinguishes between two types of sounds:
- Add‑on beeps – short beeps generated by NVDA or other add‑ons (except the progress indicator). They are grouped by frequency: low (below 500 Hz), medium (between 500 and 1500 Hz), and high (above 1500 Hz). Each group can be assigned a fixed pan position (Left, Center, or Right).
- Progress indicator – the characteristic rising‑pitch beeps that NVDA plays during file copies, downloads, or any operation with a progress bar. SoundAlign can pan these dynamically over the entire stereo range, either following the percentage value (left‑to‑right or right‑to‑left) or staying in a fixed position.
The add‑on also includes a continuous progress‑tone engine that replaces the original chunk‑based beeps with a smooth, gliding tone. This eliminates the audible clicking between beeps and gives you a fluid, musical representation of your progress.
Key Features
- • Directional add‑on beeps – assign Left, Center, or Right to low‑, medium‑, and high‑frequency beeps.
- • Smart progress panning – choose from Left‑to‑Right, Right‑to‑Left, or fixed positions (Left, Center, Right). The tone sweeps as the percentage changes.
- • Customisable progress tone – pick from Sine, Triangle, Sawtooth, Square, or the original beep. Adjust volume, frequency range (110–1760 Hz), and fade algorithm (cosine, linear, exponential, S‑curve, etc.).
- • One‑click presets – instantly apply Balanced, Subtle, or Prominent settings to get a great sound without diving into every control.
- • Optional reverb – add a subtle room‑like tail to progress tones for a richer experience (off by default for performance).
- • Speech announcements – configure percentage intervals for spoken progress updates (1%, 2%, 5%, 10%) and mixed mode (speech + beep).
- • Master volume – independently control the overall output level of all SoundAlign‑enhanced sounds.
- • Quick toggle – use the gesture NVDA+Windows+S; single tap opens settings, double tap turns the whole add‑on on or off.
Benefits
- • Faster reaction – you immediately know which application or function is beeping because of its spatial location.
- • Less distraction – instead of listening for a numeric percentage, you can perceive progress through a natural left‑to‑right sweep.
- • Reduced cognitive load – spatial cues are processed more intuitively, freeing your mind for the actual task.
- • Personalised comfort – adjust frequencies and volumes to match your hearing preferences.
- • Seamless integration – uses NVDA’s own audio engine (nvwave), so there are no crackles, double sounds, or sync issues.
Hotkey & Quick Controls
The main gesture is NVDA+Windows+S:
- Single tap – opens the SoundAlign settings dialog, where you can tweak every option.
- Double tap (quickly) – toggles the add‑on on or off. You will hear a spoken confirmation (“SoundAlign on” / “SoundAlign off”).
Settings Explained
The settings dialog is divided into logical sections. Here is what each control does:
Add‑on Beeps Direction
Three drop‑down menus let you set the pan position for:
- Low Frequency – beeps below 500 Hz.
- Medium Frequency – beeps between 500 and 1500 Hz.
- High Frequency – beeps above 1500 Hz.
Each can be set to Left, Center, or Right.
Progress Indicator
Choose the pan behaviour for progress tones:
- Left to Right – the tone moves from hard left (0%) to hard right (100%).
- Right to Left – the tone moves from right to left as the percentage increases.
- Left – always stays on the left.
- Center – stays in the center.
- Right – stays on the right.
Progress Sound Preset
Quickly apply a predefined combination of settings. The available presets are:
- Balanced (recommended) – sine wave, cosine fade, moderate volume (50 %), frequency range 110–1760 Hz, no reverb. This is the classic SoundAlign sound, smooth and clear.
- Subtle / quiet – sine wave, sine fade, lower volume (30 %), reduced master volume (60 %), narrower frequency band (300–900 Hz). Ideal for quiet environments or when you prefer a less intrusive tone.
- Prominent / clear – sine wave, cosine fade, higher volume (80 %), full master volume, wide frequency range (150–1600 Hz), and reverb enabled. Gives a strong, distinct sound that stands out.
- Custom (keep my current settings) – leaves all controls unchanged; this is the default selection when you open the dialog.
Progress Tone Waveform
Select the timbre of the generated progress tone:
- Sine – pure, smooth tone (the original beep).
- Triangle – slightly brighter and “hollow” sounding.
- Sawtooth – rich, buzzy tone with a full set of harmonics.
- Square – very bright and punchy (classic video‑game sound).
- Original Tone Beep – uses NVDA’s original beep function, but still applies the pan and volume settings. Useful if you prefer the exact original pitch but want directional control.
Fade Algorithm
This controls the shape of the fade‑in at the start of a progress tone and the fade‑out when the operation ends. It affects how smoothly the sound appears and disappears. Options include:
- Cosine – a smooth, gentle S‑curve (the default).
- Gaussian – a bell‑shaped fade, very soft.
- Linear – a straight, constant‑rate fade.
- Exponential – fast attack, slow decay.
- Logarithmic – slow attack, fast decay.
- S‑Curve – a symmetric sigmoid shape.
- Sine, Quarter Sine, Half Sine – various sine‑based curves.
- Square Root, Cubic Root, Quadratic – power curves that change the perception of attack.
Experiment to find the fade that feels most natural to you.
Volume & Master Volume
- Volume (%) – sets the amplitude of the generated tone itself (0–100 %).
- Master volume (%) – a global multiplier that scales all SoundAlign‑processed sounds. Think of it as a “main volume” for the add‑on.
Frequency Range
Minimum frequency (110–300 Hz) and Maximum frequency (1200–1760 Hz) define the pitch range for the progress tone. The tone will start at the minimum at 0 % and reach the maximum at 100 % (or vice versa for Right‑to‑Left panning). This is independent of NVDA’s original beep range and only affects the custom‑generated progress tone (not the “Original Tone Beep” option).
Announcement Intervals
- Speech announcement interval – how many percentage points must pass before NVDA speaks the new percentage (1 %, 2 %, 5 %, or 10 %).
- Beep announcement interval – controls how often the progress indicator beeps (in percentage steps). This only affects the original beep‑based progress, not the continuous tone engine.
- Time‑based announcement – if set to a value greater than 0, NVDA will speak the percentage every X seconds regardless of the percentage interval. Set to 0 to disable.
Mixed Mode
When checked, both speech and beep progress announcements are active, but they alternate: if the speech interval is reached, speech is spoken; otherwise, if the beep interval is reached, the beep plays. When unchecked, only speech announcements are used (beeps are still played but not announced via speech).
Add Reverb to Progress Tones
Enables a short, stereo delay effect on the continuous progress tone, giving it a “room” feel. This adds richness but uses more CPU; it is off by default for performance. Only active for custom waveforms (not “Original Tone Beep”).
Test All Settings
This button plays a short sequence: three add‑on beeps (low, medium, high) using your current direction settings, followed by a full progress sweep from 0 % to 100 % using your chosen progress settings. It lets you hear the effect of all changes immediately without having to save and exit the dialog.
How the Progress Tone Engine Works (Behind the Scenes)
SoundAlign replaces the traditional “chunk‑based” progress beeps with a continuous generator. Instead of playing a separate beep every few percentage points, it runs a background thread that produces a steady, gliding tone. This tone smoothly changes its frequency and pan position towards the latest target, and it fades in gracefully at the start and fades out when the operation finishes. The result is a much more pleasant and informative progress sound – no clicking, no abrupt jumps, and the pan sweep is always complete even for very short operations (like a few seconds of copying).
The generator uses your chosen waveform, fade algorithm, and reverb settings to create a uniquely personalised audio experience.
Why Use SoundAlign?
Standard screen reader audio often lacks spatial cues, making it hard to distinguish between multiple beeps or to judge progress without listening carefully to spoken numbers. SoundAlign solves this by turning your stereo field into a useful information channel. You can instantly know whether a beep is from a specific tool or function, and you can perceive progress as a natural auditory motion, which is faster and less fatiguing than parsing numbers. It’s a simple but powerful upgrade to your NVDA experience.
Download & Get Started
SoundAlign is free and open‑source (GNU GPL). Download it today, install it via NVDA’s Add‑on Manager, and open the settings with NVDA+Windows+S. Play with the presets, adjust the volume, and find the spatial audio setup that suits you best. Your ears will thank you.
Support Me
If this tool has made your life easier, consider fueling the next update with a small donation.
Your support means the world. Let's build something great together