Repository navigation
Voice Checks and Load Test
Tobias Vorwachs edited this page Oct 27, 2026
·
1 revision
The test bot sends and receives real Opus voice (same codec settings as the Mumcord client), over UDP with the TCP tunnel as fallback.
| Subcommand | Does | Prints |
|---|---|---|
play <FILE> [--loop] [--seconds S] [--position x,y,z] |
Plays a WAV file as voice into the current channel. | played <n> packets in <ms> ms |
record <OUT> --seconds S [--from USER] |
Records received voice to a 48 kHz mono WAV. | recorded <s> s to <path> |
expect-audio [--from USER] [--min-rms DBFS] [--timeout S] |
Waits until voice reaches the level (default -40 dBFS). | <level dB> <latency ms> |
game-context <CONTEXT> |
Announces a Mumble Link game context for positional audio. |
Start expect-audio before the sender plays; only audio after the command counts.
# Ear waits for Mouth's voice; exit 0 when it arrived loud enough.
printf '%s\n' 'join Lobby' 'expect-audio --from Mouth --min-rms -50 --timeout 12' \
| mumbot --port 44738 --name Ear script &
sleep 3
printf '%s\n' 'join Lobby' 'play testenv/audio/speech.wav' | mumbot --port 44738 --name Mouth script
wait $!A 6 s speech-like reference clip is in testenv/audio/speech.wav.
examples/loadtest.rs is a separate program (not a mumbot subcommand). It connects many users to a local load-test server, then adds churn (moves, leaves, joins, chat) and talkers while control files exist.
testenv/scale/up.sh
mkdir -p /tmp/loadtest
cargo run --release --example loadtest -- --users 1000 \
--churn-file /tmp/loadtest/churn --talk-file /tmp/loadtest/talk --cert-dir /tmp/loadtest/certs
touch /tmp/loadtest/churn # churn on; rm switches it off
testenv/scale/down.sh
| Option | Default | Meaning |
|---|---|---|
--users |
1000 | Users to connect. |
--talkers |
6 | Users speaking in bursts. |
--moves / --joins / --chat
|
10 / 2 / 1 per second | Churn rates. |
--connect-parallel |
50 | Logins in flight. |
--churn-file, --talk-file, --cert-dir
|
required | Control files and certificate folder. |
Only for the local load-test server. Details: docs/cli.md.
Mumbot is licensed under the AGPL-3.0 · Source code · Mumcord · Website