playCmd := flag.String("play", "play "+soxParams, "play command")
vadRaw := flag.Uint("vad", 0, "VAD threshold")
passwd := flag.String("passwd", "", "Protected room's password")
+ muteToggle := flag.String("mute-toggle", "", "Path to FIFO to toggle mute")
flag.Parse()
log.SetFlags(log.Lmicroseconds | log.Lshortfile)
}
*Name = strings.ReplaceAll(*Name, " ", "-")
+ go func() {
+ if *muteToggle == "" {
+ return
+ }
+ for {
+ fd, err := os.OpenFile(*muteToggle, os.O_WRONLY, os.FileMode(0666))
+ if err != nil {
+ log.Fatalln(err)
+ }
+ Muted = !Muted
+ var reply string
+ if Muted {
+ reply = "muted"
+ } else {
+ reply = "unmuted"
+ }
+ fd.WriteString(reply + "\n")
+ fd.Close()
+ time.Sleep(time.Second)
+ }
+ }()
+
vad := uint64(*vadRaw)
opusEnc := newOpusEnc()
var mic io.ReadCloser