-
-
Notifications
You must be signed in to change notification settings - Fork 1
Terminal UI
prism-tui is Prism's native terminal frontend. It captures a system output and presents the seven audio analyzers in an editable terminal rack without starting the desktop interface.
Interactive mode needs a terminal at least 44 columns by 12 rows. It captures output only: microphone/input capture, Now Playing, rolling WAV capture, and desktop windows are not available in the TUI.
The Default TUI profile places all seven analyzers across three rows. If the terminal cannot fit every configured panel at its usable minimum size, Prism temporarily leaves some panels out of the rendered rack until more space is available; it does not remove them from the saved layout.

prism-tui [--output <id>] [--profile <name>] [--theme <name>]
prism-tui --list-outputs
prism-tui --help
prism-tui --version
Compatibility aliases are also accepted:
-
--device <id>is an alias for--output <id>; -
--list-devicesis an alias for--list-outputs; -
-hand-Vare the short help and version forms.
Run prism-tui --list-outputs to print device IDs without entering interactive mode. Quote an ID containing spaces. Without --output, Prism opens the default system output.
During a session, press o to choose another output. Use Up/Down and Enter to switch, or r to refresh the list.
- macOS uses CoreAudio system-output capture and requires macOS 14.2 or newer.
- Windows uses the system output capture backend.
- Linux uses PulseAudio monitor capture; PipeWire needs its PulseAudio compatibility service.
The desktop app and TUI can have different selected sources. The TUI does not offer input-device mode.
| Key | Action |
|---|---|
Tab / Shift-Tab
|
Focus the next or previous visible scope |
Enter |
Expand the focused scope or restore the rack |
1–7
|
Focus Spectrum, Oscilloscope, Vectorscope, VU, LUFS, Spectrogram, or Waveform |
o |
Choose the system output |
p |
Open profiles |
s |
Open settings |
l |
Edit rack layout |
r |
Reset analyzers and integrated loudness |
q, Esc, Ctrl-C
|
Quit |
When a dialog is open, Esc normally backs out one level. In the normal rack it quits.
Press l, then use:
| Key | Action |
|---|---|
| Arrow keys | Select scopes spatially |
Shift + arrows |
Reorder the selected scope |
Ctrl + arrows |
Alternate reorder shortcut |
Uppercase H, J, K, L
|
Fallback reorder keys for terminals that do not report modified arrows reliably |
[ / ]
|
Decrease/increase scope width |
, / .
|
Decrease/increase row height |
n |
Split/add a row, up to three rows |
x |
Remove the selected scope from the rack |
a |
Add a removed scope by name |
? |
Show layout help and fallback keys |
Enter |
Finish layout editing |
The numbered scope keys also act as layout shortcuts. Prism enforces usable minimum panel sizes; a very small terminal may show fewer complete panes until it is enlarged.
Press s. Choose a settings page with Up/Down and Enter, then select a setting with Up/Down. Use Left/Right or Enter to change the selected value. Backspace resets that setting to its default. Changes are applied and saved immediately.
| Setting | Choices or range | Default | What it changes |
|---|---|---|---|
| Theme | Available Prism .iro themes |
Default | Colors used by the terminal dashboard. |
| Terminal mode | Modern, Compatible, Safe | Modern | Color capability and the maximum effective frame rate. |
| Input trim |
-12.0–+12.0 dB, 0.5 dB steps |
0.0 dB |
Gain applied before every TUI analyzer. Positive trim can clip the analyzed signal. |
| Refresh rate |
30, 60, 120 FPS
|
60 FPS |
Requested drawing rate. 120 FPS is experimental. |
| Page and setting | Choices or range | Default | What it changes |
|---|---|---|---|
| Spectrum — Peak readout | On/Off | On | Shows the strongest stable frequency in the panel title. |
| Spectrum — Display tilt |
-2.0–8.0 dB/oct, 0.1 steps |
2.0 dB/oct |
Visually offsets the spectrum around 1 kHz; it does not apply EQ. |
| Oscilloscope — Pitch lock | On/Off | On | Stabilizes a periodic waveform around its detected fundamental. |
| Oscilloscope — Frequency readout | On/Off | On | Shows the detected fundamental while Pitch lock is enabled. |
| Oscilloscope — Trace weight |
1, 2, 3
|
2 |
Changes terminal trace thickness. |
| Vectorscope — Display mode | Lissajous, Polar +, Polar ±, Linear +, Linear ± | Lissajous | Chooses the stereo projection. + is folded/unipolar; ± is bipolar. |
| Vectorscope — Guides | On/Off | On | Shows the current projection's axes and reference contours. |
| Vectorscope — Point detail | Balanced, Detailed, Maximum | Detailed | Changes point density versus terminal rendering cost. |
| VU meter — Display mode | Bar, Needle | Bar | Chooses the level presentation. |
| VU meter — Bar orientation | Horizontal, Vertical | Horizontal | Applies when Bar mode is selected. |
| VU meter — Needle channels | Stereo, Combined | Stereo | Applies when Needle mode is selected. Combined uses a power-averaged reading. |
| VU meter — 0 VU reference |
-30–0 dBFS, 1 dB steps |
-14 dBFS |
Calibrates the point represented by 0 VU. |
| LUFS meter — Loudness readout | Momentary, Short term, Integrated | Short term | Chooses the window that drives the primary bar and badge. |
| Spectrogram — Color | Heat, Mono | Heat | Uses an intensity palette or a single-theme-color display. |
| Spectrogram — Clarity | Classic, Sharp, Sharper | Sharper | Trades traditional FFT history for progressively more frequency-reassigned detail. |
| Spectrogram — Frequency scale | Log, Mel, Linear | Log | Changes frequency spacing. |
| Spectrogram — Orientation | Horizontal, Vertical | Horizontal | Chooses the direction in which time scrolls. |
| Spectrogram — Scroll speed |
0.5–4.0×, 0.5 steps |
2.0× |
Changes time-history movement. |
| Spectrogram — Contrast |
0.5–2.0×, 0.1 steps |
1.0× |
Shapes visible intensity without changing analyzer input. |
| Spectrogram — Display tilt |
-2.0–8.0 dB/oct, 0.5 steps |
4.0 dB/oct |
Offsets frequency intensity around 1 kHz. |
| Waveform — Channels | Mono, Stereo | Mono | Combines the display or uses separate channel lanes. |
| Waveform — Scroll speed |
1–8×
|
1× |
Changes rolling time resolution. |
| Waveform — Multiband color | On/Off | Off | Colors each envelope column by its dominant band. |
Oscilloscope Frequency readout requires Pitch lock. Turning Pitch lock off also turns its frequency readout off.
TUI Spectrogram clarity offers Classic, Sharp, and Sharper. Vectorscope detail offers Balanced, Detailed, and Maximum; higher density costs more terminal drawing work.
| Mode | Color and frame behavior |
|---|---|
| Modern | Truecolor output and the requested refresh rate |
| Compatible | 256-color output, capped at 60 FPS |
| Safe | ANSI color output, capped at 30 FPS |
Refresh choices are 30, 60, and 120 FPS. 120 FPS is experimental and depends heavily on the terminal emulator, display, and machine. Choosing 120 while Compatible or Safe is active retains the preference but the effective rate remains capped by the mode.
Press p to load, save, or overwrite terminal setups. TUI profiles include the rack, theme, input trim, and analyzer settings. Terminal mode and refresh rate remain local preferences and are preserved when a profile is applied.
Inside the profile browser:
- Up/Down selects a profile and Enter loads it;
-
nsaves the current setup as a new profile; -
woverwrites the active profile after confirmation; -
rrenames the selected user profile; -
ddeletes the selected user profile after confirmation; -
Escreturns to the rack.
The Default TUI profile cannot be renamed or deleted. When loading another profile with unsaved changes, choose w to save the active profile then load, n to save as a new profile then load, or d to discard the changes and load.
Overwrite and delete each require a confirmation in the terminal. Deleting a .prsmt profile cannot be undone from Prism; it does not delete themes, desktop profiles, or captured audio.
Use --profile <name> to begin this session with a saved profile by name or ID. The command-line selection does not replace the persistently active profile. TUI profiles are separate from desktop .prsm files.
TUI profile files use the .prsmt extension and live in a tui-profiles folder beside tui.conf:
| Platform | Profile folder |
|---|---|
| Windows | %APPDATA%\Prism\tui-profiles |
| macOS | ~/Library/Application Support/Prism/tui-profiles |
| Linux |
$XDG_CONFIG_HOME/prism/tui-profiles, or ~/.config/prism/tui-profiles
|
Use --theme <name> to begin this session with a Prism .iro theme by name or ID. The command-line override does not by itself replace the saved preference. The TUI shares Documents/Prism Themes with the desktop app.
The TUI stores local settings in:
| Platform | Path |
|---|---|
| Windows | %APPDATA%\Prism\tui.conf |
| macOS | ~/Library/Application Support/Prism/tui.conf |
| Linux |
$XDG_CONFIG_HOME/prism/tui.conf, or ~/.config/prism/tui.conf
|
If a configuration is damaged, preserve a copy for a bug report before moving it aside and allowing Prism to create defaults.
- The macOS PKG links
prism-tuiinto/usr/local/bin. - The Windows installer adds Prism's TUI resource directory to the machine
PATH. - Linux DEB and RPM packages link it into
/usr/bin. - ZIP, Windows portable, and Linux
tar.gzpackages do not modifyPATHautomatically. - Linux AppImage does not include
prism-tui.
Open a new terminal after an installer changes PATH.
-
0— successful help, version, device listing, or interactive exit; -
2— command-line usage error; -
1— capture or runtime failure.
If prism-tui reports that interactive mode requires a terminal, run it directly in a terminal rather than piping its normal interface. --list-outputs, --help, and --version do not require an interactive TTY.