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>
This commit is contained in:
@@ -3,6 +3,7 @@ package main
|
||||
import (
|
||||
"crypto/tls"
|
||||
|
||||
"git.stormux.org/storm/barnard/audio"
|
||||
"git.stormux.org/storm/barnard/config"
|
||||
"git.stormux.org/storm/barnard/gumble/gumble"
|
||||
"git.stormux.org/storm/barnard/gumble/gumbleopenal"
|
||||
@@ -44,9 +45,12 @@ type Barnard struct {
|
||||
|
||||
// Added for channel muting
|
||||
MutedChannels map[uint32]bool
|
||||
|
||||
|
||||
// Added for noise suppression
|
||||
NoiseSuppressor *noise.Suppressor
|
||||
|
||||
// Added for voice effects
|
||||
VoiceEffects *audio.EffectsProcessor
|
||||
}
|
||||
|
||||
func (b *Barnard) StopTransmission() {
|
||||
|
Reference in New Issue
Block a user