Skip to content

Configuration

McSnurtle edited this page Aug 14, 2025 · 3 revisions

Client 🎙️

usr/conf/client.json

Section ID Default Type Description
Networking Section Configuration options for how things are sent over the interwebs.
server_ip 127.0.0.1 String The target IPv4 address of the server you would like to stream your microphone to. Defaults to your own computer.
server_port 20000 Integer The target port of the server you would like to stream your microphone to. Do not change unless your server provider has told you to.
Audio Section Configuration options for the microphone recording setup.
microphone_id 0 Integer The ID number of the microphone you would like to use for streaming. To see a list of options, run list_microphones.bat.
sample_rate 44100 Integer The exact sample rate of the selected microphone. Careful! Setting this wrong results in some seriously funky sounds! Make sure to tell your server provider what sample rate you are using so they can match it.
chunk_size 441 Integer The size of chunks to get from the microphone and send to the server. Do not change this unless your server provider has told you to.
mysery_number 1 Integer The coefficient to muliply the chunk_size with to determine the number of frames per buffer in PyAudio.
suppression_level 3 Integer The level of aggression when applying noise suppression to the microphone. Range: 1 - 3. CAUTION: not fully implemented.

Server 🔈

usr/conf/server.json

Section ID Default Type Description
Audio Section Configuration options for how to handle incoming audio, should match the incoming audio specifications of the client.
sample_rate 44100 Integer The sample rate of the incoming traffic.
chunk_size 441 Integer The chunk size of the incoming traffic.
mystery_number 1 Integer The coefficient of chunk_size to get the frames per buffer, should match the total frames per buffer of the client.
hear_audio true Boolean Whether to playback the incoming audio data on the server host's speakers.
Networking Section Configuration options for how the server is networked.
server_ip 0.0.0.0 String The ip to bind the server to. It is recommended to leave as is, since "127.0.0.1" will only listen to incoming traffic from the local PC, and anything else may produce undefined behaviour.
server_port 20000 Integer The port to bind the server to. It is recommended to leave as is for compatibility.
enforce_whitelist false Boolean Whether the server should only accept requests from the IPv4 addresses outlined in usr/conf/whitelist.json.
relay_audio false Boolean Whether to broadcast the incoming traffic to all clients sending it, functions as a group call.

Clone this wiki locally