mirror of
https://github.com/alemidev/scope-tui.git
synced 2024-11-23 14:14:48 +01:00
docs: updated README.md
This commit is contained in:
parent
ee17749635
commit
407d0251b4
1 changed files with 37 additions and 28 deletions
65
README.md
65
README.md
|
@ -1,10 +1,12 @@
|
||||||
# scope-tui
|
# scope-tui
|
||||||
A simple oscilloscope/vectorscope in your terminal
|
A simple oscilloscope/vectorscope/spectroscope in your terminal
|
||||||
|
|
||||||
![scope-tui interface](https://cdn.alemi.dev/scope-tui-wide.png)
|
![scope-tui interface](https://cdn.alemi.dev/scope-tui-wide.png)
|
||||||
|
|
||||||
Currently only for Linux (with Pulseaudio)
|
Currently only for Linux (with Pulseaudio)
|
||||||
|
|
||||||
|
See it in action [here](https://cdn.alemi.dev/scope-tui-oscilloscope-music.webm) with [Jerobeam Fenderson - Planets](https://youtu.be/XziuEdpVUe0) (oscilloscope music)
|
||||||
|
|
||||||
## Why
|
## Why
|
||||||
I really love [cava](https://github.com/karlstav/cava). It provides a crude but pleasant frequency plot for your music: just the bare minimum to see leads solos and basslines.
|
I really love [cava](https://github.com/karlstav/cava). It provides a crude but pleasant frequency plot for your music: just the bare minimum to see leads solos and basslines.
|
||||||
I wanted to also be able to see waveforms, but to my knowledge nothing is available. There is some soundcard oscilloscope software available, but the graphical GUI is usually dated and breaks the magic.
|
I wanted to also be able to see waveforms, but to my knowledge nothing is available. There is some soundcard oscilloscope software available, but the graphical GUI is usually dated and breaks the magic.
|
||||||
|
@ -19,21 +21,23 @@ Arguments:
|
||||||
[DEVICE] Audio device to attach to
|
[DEVICE] Audio device to attach to
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-b, --buffer <SIZE> Size of audio buffer, and width of scope [default: 8192]
|
-b, --buffer <SIZE> Size of audio buffer, and width of scope [default: 8192]
|
||||||
-r, --range <SIZE> Max value, positive and negative, on amplitude scale [default: 20000]
|
-r, --range <SIZE> Max value, positive and negative, on amplitude scale [default: 20000]
|
||||||
--scatter Use vintage looking scatter mode instead of line mode
|
--scatter Use vintage looking scatter mode instead of line mode
|
||||||
--vectorscope Combine left and right channels into vectorscope view
|
--show-peaks Show peaks for each channel as dots
|
||||||
--tune <NOTE> Tune buffer size to be in tune with given note (overrides buffer option)
|
--tune <NOTE> Tune buffer size to be in tune with given note (overrides buffer option)
|
||||||
--channels <N> Number of channels to open [default: 2]
|
--channels <N> Number of channels to open [default: 2]
|
||||||
--sample-rate <HZ> Sample rate to use [default: 44100]
|
--sample-rate <HZ> Sample rate to use [default: 44100]
|
||||||
--server-buffer <N> Pulseaudio server buffer size, in block number [default: 32]
|
--server-buffer <N> Pulseaudio server buffer size, in block number [default: 32]
|
||||||
--triggering Start drawing at first rising edge
|
--triggering Start drawing at first rising edge
|
||||||
--threshold <THRESHOLD> Threshold value for triggering [default: 0]
|
--threshold <VAL> Threshold value for triggering [default: 0]
|
||||||
--no-reference Don't draw reference line
|
--check-depth <SMPL> Length of trigger check in samples [default: 1]
|
||||||
--no-ui Hide UI and only draw waveforms
|
--falling-edge Trigger upon falling edge instead of rising
|
||||||
--no-braille Don't use braille dots for drawing lines
|
--no-reference Don't draw reference line
|
||||||
-h, --help Print help information
|
--no-ui Hide UI and only draw waveforms
|
||||||
-V, --version Print version information
|
--no-braille Don't use braille dots for drawing lines
|
||||||
|
-h, --help Print help information
|
||||||
|
-V, --version Print version information
|
||||||
```
|
```
|
||||||
|
|
||||||
The audio buffer size directly impacts resource usage, latency and refresh rate and its limits are given by the audio refresh rate. Larger buffers are slower but less resource intensive. A good starting value might be `8192` or tuning to the 0th octave.
|
The audio buffer size directly impacts resource usage, latency and refresh rate and its limits are given by the audio refresh rate. Larger buffers are slower but less resource intensive. A good starting value might be `8192` or tuning to the 0th octave.
|
||||||
|
@ -42,21 +46,26 @@ To change audio buffer size, the PulseAudio client must be restarted. Because of
|
||||||
|
|
||||||
## Controls
|
## Controls
|
||||||
* Use `q` or `CTRL+C` to exit
|
* Use `q` or `CTRL+C` to exit
|
||||||
* Use `t` to toggle triggered mode
|
|
||||||
* Use `<SPACE>` to pause and resume display
|
|
||||||
* Use `<LEFT>` and `<RIGHT>` to increase or decrease time range by 25
|
|
||||||
* Use `<UP>` and `<DOWN>` to increase or decrease amplitude scale by 250
|
|
||||||
* Use `<PG-UP>` and `<PG-DOWN>` to increase or decrease threshold by 250
|
|
||||||
* Combine arrows with `<SHIFT>` to increase or decrease by x4
|
|
||||||
* Combine arrows with `<CTRL>` to increase or decrease by /5
|
|
||||||
* Press `<TAB>` to restore width and scale to default values
|
|
||||||
* Use `v` to toggle vectorscope mode
|
|
||||||
* Use `s` to toggle scatter mode
|
* Use `s` to toggle scatter mode
|
||||||
* Use `b` to toggle braille characters
|
|
||||||
* Use `h` to toggle interface
|
* Use `h` to toggle interface
|
||||||
* Use `r` to toggle reference lines
|
* Use `r` to toggle reference lines
|
||||||
* Use `<ESC>` to show ui and revert to oscilloscope
|
* Use `<SPACE>` to pause and resume display
|
||||||
* Use `<C-R>` to reset all options to startup values
|
* Use `<LEFT>` and `<RIGHT>` to increase or decrease X range
|
||||||
|
* Use `<UP>` and `<DOWN>` to increase or decrease Y range
|
||||||
|
* Use `<ESC>` to revert view settings to defaults
|
||||||
|
* Use `<TAB>` to switch between modes:
|
||||||
|
* **Oscilloscope**:
|
||||||
|
* Use `t` to toggle triggered mode
|
||||||
|
* Use `e` to switch edge-triggering mode (rise/falling)
|
||||||
|
* Use `p` to toggle peaks display
|
||||||
|
* Use `<PG-UP>` and `<PG-DOWN>` to increase or decrease trigger threshold
|
||||||
|
* Use `-`/`_` and `=`/`+` to increase or decrease trigger debouncing
|
||||||
|
* **Spectroscope**:
|
||||||
|
* Use `<PG-UP>` and `<PG-DOWN>` to increase or decrease averaging count
|
||||||
|
* **Vectorscope**:
|
||||||
|
* Combine increment/decrement commands with `<SHIFT>` to increase or decrease by x10
|
||||||
|
* Combine increment/decrement commands with `<CTRL>` to increase or decrease by x5
|
||||||
|
* Combine increment/decrement commands with `<ALT>` to increase or decrease by x 1/5
|
||||||
|
|
||||||
# About precision
|
# About precision
|
||||||
While "scatter" plot mode is as precise as Pulseaudio and the terminal lets us be, "line" plot mode simply draws a straight line across points, meaning high frequencies don't get properly represented.
|
While "scatter" plot mode is as precise as Pulseaudio and the terminal lets us be, "line" plot mode simply draws a straight line across points, meaning high frequencies don't get properly represented.
|
||||||
|
|
Loading…
Reference in a new issue