docs: add pitch shifting documentation
F6/F7 keybindings, audio.pitch config option, voice pitch section in USAGE.md. Updated profiling notes to reflect per-thread coverage.
This commit is contained in:
@@ -11,6 +11,7 @@ TUI Mumble client with voice support and push-to-talk.
|
|||||||
- Chat input history (Up/Down arrow navigation)
|
- Chat input history (Up/Down arrow navigation)
|
||||||
- Self-deafen toggle
|
- Self-deafen toggle
|
||||||
- Volume control (input/output gain)
|
- Volume control (input/output gain)
|
||||||
|
- Voice pitch shifting (deeper/higher)
|
||||||
- Client certificate authentication
|
- Client certificate authentication
|
||||||
- Auto-reconnect on network loss
|
- Auto-reconnect on network loss
|
||||||
- Config hot-reload (F5)
|
- Config hot-reload (F5)
|
||||||
@@ -25,6 +26,8 @@ TUI Mumble client with voice support and push-to-talk.
|
|||||||
| `F3` | Cycle input volume |
|
| `F3` | Cycle input volume |
|
||||||
| `F4` | Push-to-talk (configurable) |
|
| `F4` | Push-to-talk (configurable) |
|
||||||
| `F5` | Reload config from disk |
|
| `F5` | Reload config from disk |
|
||||||
|
| `F6` | Pitch down (1 semitone) |
|
||||||
|
| `F7` | Pitch up (1 semitone) |
|
||||||
| `Enter` | Send message / join channel (sidebar) |
|
| `Enter` | Send message / join channel (sidebar) |
|
||||||
| `Up` | Previous message (input) / previous channel (sidebar) |
|
| `Up` | Previous message (input) / previous channel (sidebar) |
|
||||||
| `Down` | Next message (input) / next channel (sidebar) |
|
| `Down` | Next message (input) / next channel (sidebar) |
|
||||||
@@ -57,6 +60,7 @@ username = "myname"
|
|||||||
[audio]
|
[audio]
|
||||||
# output_gain = 1.0
|
# output_gain = 1.0
|
||||||
# input_gain = 1.0
|
# input_gain = 1.0
|
||||||
|
# pitch = 0 # semitones, -12 to +12
|
||||||
|
|
||||||
[ptt]
|
[ptt]
|
||||||
key = "f4"
|
key = "f4"
|
||||||
|
|||||||
@@ -17,6 +17,8 @@ tuimble --host mumble.example.com --user myname
|
|||||||
| `F3` | Cycle input volume |
|
| `F3` | Cycle input volume |
|
||||||
| `F4` | Push-to-talk (configurable) |
|
| `F4` | Push-to-talk (configurable) |
|
||||||
| `F5` | Reload config from disk |
|
| `F5` | Reload config from disk |
|
||||||
|
| `F6` | Pitch down (1 semitone) |
|
||||||
|
| `F7` | Pitch up (1 semitone) |
|
||||||
| `Enter` | Send message / join channel (sidebar) |
|
| `Enter` | Send message / join channel (sidebar) |
|
||||||
| `Up` | Previous message (input) / previous channel (sidebar) |
|
| `Up` | Previous message (input) / previous channel (sidebar) |
|
||||||
| `Down` | Next message (input) / next channel (sidebar) |
|
| `Down` | Next message (input) / next channel (sidebar) |
|
||||||
@@ -45,8 +47,8 @@ python3 -m pstats /tmp/tuimble.prof # interactive explorer
|
|||||||
# pip install snakeviz && snakeviz /tmp/tuimble.prof
|
# pip install snakeviz && snakeviz /tmp/tuimble.prof
|
||||||
```
|
```
|
||||||
|
|
||||||
Note: cProfile captures the main thread only. Background workers
|
Profiling covers both the main thread and all worker threads
|
||||||
started with `@work(thread=True)` are not included.
|
(including the audio send loop where pitch shifting runs).
|
||||||
|
|
||||||
## Volume Control
|
## Volume Control
|
||||||
|
|
||||||
@@ -60,6 +62,21 @@ output_gain = 0.75 # 0.0 to 2.0 (default 1.0)
|
|||||||
input_gain = 1.5 # 0.0 to 2.0 (default 1.0)
|
input_gain = 1.5 # 0.0 to 2.0 (default 1.0)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Voice Pitch
|
||||||
|
|
||||||
|
`F6` and `F7` adjust outgoing voice pitch in 1-semitone steps,
|
||||||
|
ranging from -12 to +12. Negative values make the voice deeper,
|
||||||
|
positive values make it higher. The current setting is shown in the
|
||||||
|
status bar when non-zero.
|
||||||
|
|
||||||
|
```toml
|
||||||
|
[audio]
|
||||||
|
pitch = 3 # semitones, -12 to +12 (default 0)
|
||||||
|
```
|
||||||
|
|
||||||
|
When pitch is 0, the processing step is skipped entirely (no CPU
|
||||||
|
overhead).
|
||||||
|
|
||||||
## Client Certificates
|
## Client Certificates
|
||||||
|
|
||||||
For servers requiring client certificate authentication:
|
For servers requiring client certificate authentication:
|
||||||
@@ -77,7 +94,7 @@ Both must be PEM-encoded. Leave empty to connect without a certificate.
|
|||||||
`F5` reloads `~/.config/tuimble/config.toml` from disk.
|
`F5` reloads `~/.config/tuimble/config.toml` from disk.
|
||||||
|
|
||||||
**Safe changes** (applied immediately): PTT key/mode/backend, audio
|
**Safe changes** (applied immediately): PTT key/mode/backend, audio
|
||||||
gain values.
|
gain values, pitch.
|
||||||
|
|
||||||
**Restart-requiring changes** (server settings, audio device/rate):
|
**Restart-requiring changes** (server settings, audio device/rate):
|
||||||
shown as warnings. Press `F5` again to confirm reconnect, or any
|
shown as warnings. Press `F5` again to confirm reconnect, or any
|
||||||
|
|||||||
Reference in New Issue
Block a user