Commit Graph
33 Commits
Author SHA1 Message Date
Tyler SpiveyandClaude Opus 5 4393739ffa Add F12 hotkey to toggle microphone AGC
Automatic gain control was always on with no way to turn it off. Toggle
it with F12, the /agc command, or the agc FIFO command, and persist the
choice in the configuration file the same way noise suppression does.

AgcEnabled defaults to true so existing setups keep their current
behavior, and the saved value is applied to the stream on connect. The
enabled flag becomes an atomic.Bool because the capture goroutine reads
it while the UI goroutine writes it, and the lazily created right
channel AGC now inherits the left channel's state.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-14 13:16:44 -07:00
Brandon McGinty (chatgpt) e9ba7f580a Synchronize connection-owned stream access 2026-08-10 11:25:08 -04:00
Brandon McGinty (chatgpt) 1d6ab79ed0 Cancel reconnect retries during shutdown 2026-08-10 10:24:38 -04:00
Brandon McGinty (chatgpt) 3ba5e03208 Restore output navigation hotkeys 2026-08-10 08:26:37 -04:00
Brandon McGinty (chatgpt) 55772fa459 Synchronize connection and transmission state 2026-08-10 00:45:22 -04:00
Brandon McGinty (chatgpt) 3efbd019ce Synchronize selected user access 2026-08-10 00:42:09 -04:00
Brandon McGinty (chatgpt) 20c6997ab0 Synchronize muted channel state 2026-08-10 00:31:29 -04:00
Brandon McGinty (chatgpt) 219acad951 Reject file playback in tone-test mode 2026-08-09 23:14:38 -04:00
Brandon McGinty (chatgpt) df185cc9f5 Queue status updates from network callbacks 2026-08-09 23:13:20 -04:00
Brandon McGinty (chatgpt) dc9dedb523 Render initial chat prompt and submitted messages 2026-08-09 22:17:24 -04:00
Brandon McGinty (chatgpt) 6bf79acc6a Exit on fatal microphone device errors 2026-08-09 21:33:16 -04:00
Brandon McGinty (chatgpt) d50c6726ad Route network UI callbacks through UI queue 2026-08-09 19:47:14 -04:00
Brandon McGinty (chatgpt) 12761f29ca Queue UI output and status updates 2026-08-09 19:37:18 -04:00
Brandon McGinty (chatgpt) cbc6369071 Preserve UTF-8 when truncating input status 2026-08-09 15:12:53 -04:00
Brandon McGinty (chatgpt) d64e5125dd Bound notification delivery and expansion 2026-08-09 14:38:02 -04:00
Brandon McGinty (chatgpt) 4497d41077 Persist microphone mute and volume settings 2026-08-09 14:37:06 -04:00
Brandon McGinty (chatgpt) 6aeab4fd5c Strip terminal controls from server text 2026-08-09 14:30:07 -04:00
Brandon McGinty (chatgpt) c3fe4f88f3 Remove panic-prone optional beep helpers 2026-08-09 14:29:34 -04:00
Brandon McGinty (deepseek) 8967fdff1a Fix nil b.Stream dereference in tone-test mode
setTransmit, OnMicVolumeUp, OnMicVolumeDown, and the file-playback
auto-transmit path all dereferenced b.Stream without checking for nil.
In tone-test mode b.Stream is never set (OpenAL is skipped), so guard
all call sites.
2026-08-09 00:24:44 -04:00
Storm Dragon 9bc514e74f Remove voice effects 2026-07-14 18:41:50 -04:00
Storm Dragon 342f934029 Improve action menu escape handling
Make the F11 action menu close through a shared close action so Escape and the explicit Close actions menu item follow the same path. Treat Escape-prefixed Up and Down events as close inputs while the action menu is active, which handles termbox InputAlt behavior after pressing Escape. Preserve and restore the user/channel tree selection across action menu open and close, and preserve selection across live tree rebuilds.

Tested with: GOCACHE=/tmp/barnard-go-cache go test ./...
2026-06-28 23:57:29 -04:00
Storm Dragon cc483685ef Add actions menu admin features 2026-05-19 01:06:01 -04:00
Storm Dragon eef7454c0f Notifications for recording. 2026-05-15 20:56:46 -04:00
Storm Dragon 69674a0dab Add standards-aware recording 2026-05-14 00:42:30 -04:00
Storm Dragon 6191132620 Move time stamps to the end of the message instead of the beginning. 2025-11-30 20:41:44 -05:00
Storm Dragon fae372bb78 Added /file and /stop commands. 2025-11-30 20:31:06 -05:00
Storm DragonandClaude f96cb1f79b Add real-time voice effects for outgoing audio
Implements 7 voice effects that can be cycled through with F12:
- None (default)
- Echo: Single repeating delay with feedback (250ms)
- Reverb: Multiple short delays without feedback
- High Pitch: Chipmunk voice using cubic interpolation
- Low Pitch: Deep voice effect
- Robot: Ring modulation for robotic sound
- Chorus: Layered voices with pitch variations

The effects are applied after noise suppression and AGC in the audio
pipeline. Selected effect is persisted to config file. Includes
comprehensive documentation in README.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-13 16:27:08 -04:00
Storm DragonandClaude 82b308000d Add automatic gain control for outgoing microphone audio.
This addresses low microphone volume issues by automatically normalizing
outgoing audio levels with dynamic range compression and soft limiting.
The AGC is always enabled and applies voice-optimized parameters to
ensure consistent audio levels are sent to other users while preserving
manual volume control for incoming audio.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-31 15:33:18 -04:00
Storm Dragon df7159bad1 Initial noise suppression added. 2025-08-16 21:29:52 -04:00
Storm Dragon fac8c8bfad new command for fifo interaction status. 2025-06-12 02:22:11 -04:00
Storm Dragon 356ff5a3a8 Muting a channel now stops you from transmitting, it acts sort of like deafen. 2025-01-16 17:47:39 -05:00
Storm Dragon 2e337db3c5 Updated everything for dependencies. All sub packages are now part of the project. This was a massive update, hopefully won't have to be reverted. 2025-01-16 17:03:01 -05:00
Storm Dragon 3f0246a4f8 Initial commit, lots of cleanup and stuff to do, it may not work. 2025-01-15 23:43:44 -05:00