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>
Note
Added from git.stormux.org/storm/barnard/gumble for ease of future work and development.
gumble
Sub-projects
- gumble
- Client library
- gumbleopenal
- OpenAL audio system for gumble
- gumbleffmpeg
- ffmpeg audio source for gumble
- gumbleutil
- Extras that can make working with gumble easier
Example
package main
import (
"layeh.com/gumble/gumble"
"layeh.com/gumble/gumbleutil"
)
func main() {
gumbleutil.Main(gumbleutil.Listener{
UserChange: func(e *gumble.UserChangeEvent) {
if e.Type.Has(gumble.UserChangeConnected) {
e.User.Send("Welcome to the server, " + e.User.Name + "!")
}
},
})
}
Related projects
- barnard
- terminal-based Mumble client
- piepan
- an easy to use framework for writing Mumble bots using Lua
License
MPL 2.0
Author
Tim Cooper (tim.cooper@layeh.com)