Settings - SocketSVC Docs
SocketSVC Docs

Settings

Settings tabs, devices, volume, audio processing, instruments, HUD, status icons and custom icon packs

Press V or run /ssvc to open "Voice settings". If first-run setup hasn't been completed yet, "Welcome to voice" opens instead; it has the same contents and is finished with "Get started".

Settings is a centered dialog (capped at 600 × 360 GUI units). The tabs run down a rail on the left, each with an icon and its full name; on a panel too narrow to afford the names the rail keeps the icons and moves the names into tooltips. At the foot of the rail, under a divider, Documentation opens this site in your browser. The connection state (Connected / Connecting / Offline) sits at the top right behind a coloured light, and the footer carries the microphone and incoming-voice switches on the left and "Done" on the right, which closes and saves. Related settings are grouped into titled cards. On smaller screens the settings scroll while the rail and the footer stay in place.

If the connection has failed, a red banner across the top of the settings says so and how to retry — that being the reason every other setting on the screen is doing nothing.

TabContents
GeneralMicrophone / incoming voice switches, voice mode, devices, and microphone, voice and soundboard volume
AdvancedMicrophone test, audio processing, interface options, diagnostics
InstrumentLine in, MIDI, the drum machine and the looper — played alongside talking
Player volumeSpeaker volumes and per-player voice volume
CustomizeCustom icon packs
FlashbackVoice recording and replay volume; only shown when Flashback is installed

General

Two icon buttons sit in the footer, on every tab rather than only this one:

  • Microphone — toggles the microphone. It stays off while incoming voice is disabled.
  • Incoming voice — toggles hearing other players (deafen). Turning it off also mutes your microphone; turning it back on restores the previous mute state.

The tab is two cards — Talking and Listening — with a link to the voice groups menu underneath them, showing the group you are in without having to open it. Settings marked └ are indented under the device row above them: the input channel and microphone volume belong to the microphone, and the two playback volumes belong to the output device.

SettingOptions / rangeDefaultDescription
Voice modeVoice activated / Push to talkVoice activatedVoice activated: transmit automatically when you speak. Push to talk: hold the talk key (default B) to talk; release to stop
MicrophoneSystem default or a specific deviceSystem defaultClick to choose a device; changes apply immediately, no reconnect needed
└ Input channelMix both / Input 1 / Input 2Mix bothWhich socket of a multi-input device to record from. Harmless on a mono device, where it falls back to mixing
└ Microphone volume0–200%100%Outgoing mic volume; 0% sends silence, above 100% amplifies with limiting
Output deviceSystem default or a specific deviceSystem defaultAs above
└ Voice volume0–200%100%Master volume for all received audio (including soundboard)
└ Players' soundboard0–200%100%A second master over every other player's soundboard audio only, on top of Voice volume. Turns clips down without touching anybody's voice; 0% silences incoming clips entirely. It does not affect the clips you play yourself — that is the soundboard master volume on the Soundboard screen

If your saved device isn't detected, it is shown as "(not detected)" and the system default is used for now.

USB audio interfaces

An interface such as a Volt 2, Scarlett or AudioBox reports itself as a two-channel device, and often at 44.1 kHz rather than 48. Any capture format it offers is accepted and converted, so it works as a microphone as well as an instrument input.

Set Input channel, just under the microphone picker on this tab, to the socket you actually used. An interface has your microphone in input 1 and nothing in input 2, so leaving it on Mix both costs 6 dB and mixes the empty input's hiss in with your voice.

The instrument tab has its own Input channel for its own device, so a guitar in input 2 and a microphone in input 1 can share one interface.

Two devices with the same name

Identical hardware — two of the same USB headset, or a hub with two matching microphones — reports the same name to the system. SocketSVC numbers the repeats in the picker (Headset, Headset (2)) so each entry points at one specific device. If the one you chose cannot be opened, its twin is tried before anything else, and if the system default has to stand in instead the status line says so rather than continuing to show the name you picked.

Advanced

"Automatic settings work well for most players." Switching to this tab starts the microphone test automatically; leaving the tab stops it.

Microphone test

SettingDefaultDescription
Level meter—Responds when you speak; shows the input before the microphone volume adjustment. If the mic is unavailable, choose a device on the General tab
Hear yourselfOffPlays your mic back through your speakers with a short delay — use headphones to avoid feedback

Audio processing

SettingOptions / rangeDefaultDescription
Noise suppressionOn / OffOnRNNoise, applied before gain, voice detection and Opus encoding
└ Advanced Noise CancellationOn / OffOnA much stronger AI noise model that also cleans up game sound and music, not just steady background noise, at some extra CPU/latency cost. Only shown while noise suppression is on and the platform is supported
└└ ModelDownload / deleteNot downloadedAbout 50MB, downloaded on demand. Left click to download (a confirmation screen appears first); right click to delete once ready
Echo cancellationOn / OffOnAdaptive echo cancellation
└ Automatic echo delayOn / OffOnWaits for a confident match before cancelling
└└ Echo delay0–500 ms100 msManual delay when automatic is off, for difficult devices/rooms
Microphone gainAutomatic / ManualAutomaticAutomatic gain with peak limiting
└ Gain-30–30 dB0 dBInput gain in Manual mode
Voice detectionAutomatic / ManualAutomaticAutomatic uses RNNoise speech probability when available
└ Threshold0–2000300RMS threshold in Manual mode; Automatic uses a fixed 300
  • Advanced Noise Cancellation is available on Windows x64, Linux x64 and macOS Apple Silicon; other platforms show "Not available on this platform". Until the model is downloaded, or if it fails mid-session, RNNoise is used instead.
  • Echo cancellation only uses SocketSVC's own playback as its reference, not Minecraft game or system audio. If a processed frame ends up louder than the original mic signal, the original samples are kept and the filter relearns, so switching speakers/headphones does not require toggling it off and on. During simultaneous local and remote speech, some real echo may pass through temporarily while it relearns.
  • Automatic voice detection keeps the last 60 ms before speech starts and sends it with the speech, and keeps transmitting for 300 ms after speech ends, so word onsets and endings aren't clipped. Releasing push-to-talk stops immediately.

The bottom of the tab shows the current processing status, for example "Noise suppression active / Echo delay 120 ms" or "Learning echo".

Surroundings

What the world does to other players' voices. All three are off by default, and each changes only what you hear.

SettingOptions / rangeDefaultDescription
Follow Sound Physics RemasteredOn / OffOnOnly shown when Sound Physics Remastered is installed. While on, the three settings below are replaced by its settings
Walls muffle voicesOn / OffOffA player on the other side of a wall sounds duller and a little quieter
└ Muffling0–100%100%How much a wall muffles
Muffled underwaterOn / OffOffWhen you, or whoever is talking, is under water, they sound it
Room echoOn / OffOffCaves and big halls echo around voices; open ground does not
└ Echo amount0–100%100%How much echo a room adds
└ Hear your own echoOn / OffOffWhen you talk in a cave or hall, hear the room echo your voice back
  • Muffle, never mute. Fully muffled is a voice with its highs taken off at a little over half the volume: clearly behind something, never gone. The first block in the way does most of it; three or more is as muffled as it gets. Anything with a collision shape counts, so glass and fences dull a voice too.
  • Worked out by your client, from the world it already has. Your client raycasts from your eyes to each player within 96 blocks a few times a second. The server does nothing extra, and nobody else is affected by your choice. A voice whose source your client cannot see as a player — too far away to be tracked, or a plugin's speaker — is not muffled by walls.
  • Under water muffles every voice while your head is under water, and a speaker's voice while theirs is.
  • Room echo feels out the space around you with rays in every direction: the more of it is wall and ceiling, the more it echoes, and the bigger it is, the longer the echo rings. A forest or a village street is too open to echo. Leaving a cave lets the last echo ring out rather than cutting it.
  • Hear your own echo feeds what you transmit into the same room, so you hear the echo of your own voice — the echo only, never your voice played back. It follows exactly what others hear: nothing while you are muted or not holding push-to-talk. Echo cancellation takes it back out of your microphone, so it cannot feed back.
  • These apply to player voices and other players' soundboard clips. Cinema screens and other addon sound are not affected.
  • With Sound Physics Remastered installed, walls, water and room echo are taken from its settings instead: its block absorption sets the muffling, its underwater filter the underwater muffle, its reverb gain the echo and its Simple Voice Chat hear self option whether you hear your own echo, with its defaults matching 100% here. If Sound Physics Remastered is switched off, or its Simple Voice Chat integration option (its switch for voice chat effects) is off, voices get no effects. Turn Follow Sound Physics Remastered off to use the settings above instead.

Instrument

Non-microphone inputs, played into voice chat alongside talking rather than instead of it. The instrument is a separate stream, so your own playing does not stop when you speak, and muting your microphone does not silence it.

Each source has its own switch and they work together — a drum pattern under a MIDI keyboard, with a guitar on a line-in over the top. Everything switched on is mixed into the one instrument stream.

Each switch is named after its source, and that source's own settings appear indented under it once it is on — the same nesting the General tab uses for a device and its settings. Settings that apply to everything at once are collected under All sources at the bottom, and appear only once at least one source is on.

Every row on the tab, and every control in the drum and looper editors, explains itself on hover. If a control's name is not enough, rest the pointer on it rather than guessing.

SourceWhat it is
Line inA second capture device: an audio interface, a keyboard's audio output, or a virtual cable from a DAW
MIDIA MIDI keyboard or guitar, played through SocketSVC's own synthesiser or a sound bank you load
Drum machineA built-in step sequencer with eight synthesised drums, 1–32 beats long
LooperRecords what you play and layers over it, on up to 16 tracks
All sourcesOptionsMeaning
Push to playOff by defaultOnly transmit while the "Play instrument" key is held
Instrument volume0–200%Trim before the instrument is sent, and the level you monitor at
Hear yourselfOn by defaultPlay the instrument through your own speakers as well as sending it

A source that cannot start does not take the others down with it: an unplugged MIDI keyboard leaves the drum machine playing and says why the keyboard is silent. When several are loud at once the mix is ridden down rather than clipped.

Drum machine

A step sequencer with eight synthesised drums — kick, snare, closed and open hi-hat, clap, tom, rim and cymbal. Nothing to install: the sounds are made from oscillators and noise, in the manner of an analogue drum machine, so it works with no sample pack or SoundFont.

The hats and cymbal are built from a bank of six detuned square waves rather than from noise, which is what makes them ring like metal instead of hissing, and the kick and tom sweep in pitch as they decay. Levels across the kit are set so a pattern sits together without any one drum having to be turned down.

Switch on Drum machine, then Edit pattern to open the grid, which fills the window. Click a square to place a hit, or drag across several to fill a run in one go — the first square you press decides whether the drag is placing or clearing. Click a drum's name to audition it.

SettingRangeDefaultDescription
Tempo40–240 BPM100Shared with the metronome and the looper
Swing0–50%0Pushes every second step later for a shuffled feel, without changing the tempo
Beats1–3216How long the pattern is
Beats per bar1–124Where a bar line falls in the shading. The same setting as the looper's, since it is also what the metronome accents
Steps per beat1–84How finely each beat is divided — 4 is sixteenths, 3 gives triplets, 8 gives thirty-seconds

Columns are shaded at two depths: lightly where a beat starts, more strongly where a bar does — and how many beats make a bar is Beats per bar, so a waltz reads as three. The numbers along the top count the beats. The longest pattern is 32 × 8 = 256 columns, so the squares shrink to fit the window and, when they can shrink no further, the grid scrolls sideways — drag the bar under it, or use the wheel or a trackpad over the grid. The drum names stay put while it scrolls.

Making the grid shorter hides the steps past its new end rather than deleting them, so shortening and lengthening it again brings the pattern back. A pattern saved on a shorter grid repeats across a longer one, so an existing beat keeps sounding the way it did.

The pattern is saved with your settings and keeps playing while you do other things, so you can lay down a loop and then talk, play a guitar on another input, or walk around over the top of it.

Looper

Switch on Looper, then Open looper for an editor that fills the window. It sits at the end of the chain, so what it records is everything above it — a guitar on the line-in, a MIDI keyboard, the drum machine, or all three at once. What you play passes straight through, the way a looper pedal works.

Each of the 16 tracks is one line: its number, five buttons, what it is doing in words, the waveform, and its volume. The track you last touched is highlighted — that is the one the keyboard acts on.

KeyWhat it does
1–9, 0Record on that track. The same press that the ● button makes, so it cycles record → play → layer
RRecord on the highlighted track
SpacePlay everything, or stop everything if anything is running
MMute the highlighted track
ZUndo its last layer
DeleteClear it
↑ ↓Choose a track

A looper is played with your hands on an instrument, so the number keys matter more than the buttons — they are how every hardware looper arms a track. The buttons stay for reading the state and for reaching a track that is not the one you are on.

The five buttons are:

ButtonWhat it does
●Record. Press once to start, again to close the loop and play it, again to layer another pass on top, again to stop layering. With a count-in set, the first press counts you in — pressing it again during the count calls it off
▶ / ■Play or stop that track, without losing what is on it
↶Undo the last layer — press again to put it back
MMute
×Clear the track

Each track draws the waveform of what is recorded on it, brightening as the playhead passes and with a line at the playhead itself, so you can see where the hits are and whether a layer landed in time — not just how far through the loop you are. 3× at its end is how many layers deep the track is, and the short bar on the right is its volume. An empty track says press ● to record. A track waiting on the count says counting in and shows an amber record light, not the red one — nothing is being recorded yet, and the take only begins when the count ends. Stop all calls a pending count off.

An overdub gets no count-in: it joins a loop that is already running and already in time.

Metronome, in this editor, is a click on every beat at the drum machine's tempo — it is what you play along to while recording, which is why it lives here. It is heard only by you: the click is rendered separately from the instrument mix and reaches your speakers through the local monitor, so it is never encoded and never sent to anyone else. Switching it on starts the count on beat one rather than wherever it had got to, and the first beat of each bar is higher and louder, because a click that does not say where the bar starts tells you the tempo but not the time.

SettingRangeDefaultDescription
Count-in0–8 beats4Clicks this many beats before a first take starts, so the downbeat is something you hear coming. Four means four ticks, and recording begins on the silent beat after them. Sounds even with the metronome off; 0 records straight away
MetronomeOn / OffOffThe click, for you only
Click volume0–200%70%
Beats per bar1–124The time signature's top number — 3 for a waltz, 4 for most things. Also on the drum machine's editor, since it draws that grid's bar lines
Loop length1–32 beats8How long a new recording is, in beats at the drum machine's tempo, so loops line up with a pattern you already have. The line under it says what that is in seconds — eight beats at 100 BPM is 4.8 s
Loop volume0–200%100%The looper's own level, over every track

Tracks keep the length they were recorded at, and all of them share one clock, so tracks of different lengths stay in phase with each other. Play all, Stop all and Clear all act on everything at once.

The controls above stay put and only the track list scrolls, so the transport is still there when you have scrolled down to track 14 with a take running. A single track cannot be longer than 40 seconds.

Loops are not saved

Recorded audio is minutes of samples rather than a setting, so loops live only while the game is running. A looper whose loops came back after a restart would be a sampler.

Custom drum samples

The built-in generator exists so the drum machine works with nothing installed, not because oscillators are the goal. To use recorded sounds instead, put a folder of samples in config/socketsvc/drumkits/ and pick it with Drum kit.

Name each file after the drum it is — WAV, MP3, OGG, Opus, FLAC or AIFF:

config/socketsvc/drumkits/
  my kit/
    kick.wav
    snare.wav
    closed hat.wav
    open hat.wav
    clap.wav
    tom.wav
    rim.wav
    cymbal.wav

Matching ignores case, spaces and punctuation, and accepts the abbreviations sample packs usually ship with, so BD.WAV, 909 Kick Drum 01.wav and kick.wav all land on the kick. SideStick is the rim and crash is the cymbal. Open and closed are read wherever they appear in the name, so Open HH, HH Open, Hat Open and OH are all the open hat, and a bare hat or HH is the closed one. Two-letter abbreviations (BD, SD, HH, OH, CH, CP, CY) have to be words of their own, so a China.wav or Vocal Chop.wav sitting in the folder is left alone rather than taking a drum's place. If two files name the same drum, the more specific name wins — kick.wav over bd.wav.

The Drum kit setting lists anything it did not use, and why: a name that matches no drum, a second file for a drum already taken, or a file it could not read. If a drum is still playing the built-in sound, that line says which case it is.

Any drum without a file keeps its synthesised sound, so a folder holding nothing but a kick is a valid kit, and the setting lists which drums that applies to — if your clap is still the built-in one, its file name matched no drum. A file that will not decode costs that one drum rather than the whole kit. Adding, replacing or renaming a file in a folder you have already selected takes effect on its own; there is no need to pick the kit again. Samples at any sample rate are converted, so the 44.1 kHz files most packs ship work as they are, and a closed hat still cuts off an open one.

For a full acoustic kit, a SoundFont also works

A General MIDI SoundFont played from a MIDI pad controller gives you a whole sampled kit with velocity layers, which a folder of one-shots does not — see Sound banks.

Playing from a DAW (FL Studio, Ableton, Reaper...)

Switch on Line in, send the DAW's output to a virtual audio cable, then pick that cable as the input device. Everything the DAW makes — its own synths, any VST3 you own, a guitar through its effects chain — arrives in voice chat.

PlatformCableIn the DAW
WindowsVB-Cable or VoiceMeeterSet the audio device to the cable's input. With ASIO, FL Studio needs FL Studio ASIO or ASIO4ALL pointed at it
macOSBlackHole or LoopbackSet the audio output device to the cable
LinuxPipeWire / PulseAudio null sinkRoute the DAW's sink to it with pw-link or qpwgraph

To keep hearing the DAW yourself, either use a multi-output device that feeds both the cable and your headphones, or leave Hear yourself on in SocketSVC.

The device's own format is used as-is — stereo is downmixed and any sample rate is converted to what the voice pipeline needs, so a cable left at 44.1 kHz stereo works without reconfiguring it.

SocketSVC cannot be a DAW output device itself

A DAW can only send audio to a real audio device, and creating one means shipping a system audio driver — a kernel extension on macOS, a signed driver on Windows — which a Minecraft mod cannot do. That is exactly the job a virtual cable already does, which is why the route goes through one.

Line in suits anything that already makes its own sound: an electric guitar through an audio interface, a keyboard's audio output, or a virtual cable carrying a soft-synth you already use.

On an interface with more than one socket, set the instrument's own Input channel to the one the instrument is plugged into. It is separate from the microphone's channel on the General tab, so a guitar in input 2 and a microphone in input 1 can share one interface without either picking up the other. Changing it reopens the device, which briefly cuts the instrument.

Hear yourself is on by default for both kinds. MIDI has no other sound at all, so without it you would be playing in silence. A line-in is only self-monitoring if the hardware it is plugged into happens to do that — many interfaces do not — so it starts on there too rather than leaving you wondering whether anything is working. Turn it off if you are already hearing the instrument some other way, otherwise you will hear it twice.

MIDI listens to a MIDI keyboard or guitar and makes the sound itself. Note velocity, the sustain pedal and pitch bend all work. It sounds like a synthesiser, not a sampled piano: see Why the built-in synth is oscillators.

The "Play instrument" key has no default binding — set one under Controls if you want push-to-play.

Use headphones while monitoring

What you monitor goes out of your speakers, and your microphone picks it up — and unlike SocketSVC's own voice playback, the monitor path is not in the echo canceller's reference, so it cannot be cancelled out. On speakers, other players will hear your instrument twice: once from the instrument channel and once bleeding into your microphone. Headphones remove the problem entirely.

None of the speech processing runs on the instrument

Noise suppression, automatic gain, voice activation and echo cancellation all exist to serve one talking voice, and each one actively damages music: noise suppression is trained to keep a voice and discard everything else, automatic gain flattens a deliberate crescendo, and voice activation cuts a sustained note as soon as it decays past a threshold meant for pauses in speech. The instrument is sent as played, with only your volume trim and a limiter in the way.

Sound banks (SoundFont)

Drop .sf2 or .sf3 files into config/socketsvc/soundfonts and pick one under Sound bank. Notes then play that bank's recorded instruments — a real piano, guitar or strings — instead of the built-in oscillators, and Bank preset chooses which of the bank's instruments to play.

Sound bank, Bank preset, MIDI device and Input device each open a searchable list rather than stepping one entry per click. Type to filter: every word has to appear somewhere in the name, in any order, so grand piano and piano grand both find the same preset. That matters most for Bank preset — a General MIDI bank has well over a hundred presets, which is not a list to click through. Free General MIDI banks are widely available; .sf3 is the same format with Ogg-compressed samples, which is how a full GM bank fits in tens of megabytes instead of hundreds.

Loading happens in the background, since a large bank takes a moment; the status line says so, and the oscillators keep playing until it is ready. Velocity, the sustain pedal and pitch bend work either way.

Drum kits work: a one-shot sample stops at its own end, and a preset that splits its instruments across the keyboard is honoured, so each key plays only what belongs to it.

Not every SoundFont feature is implemented: samples, tuning, loop points and volume envelopes are, while modulators, filters, LFOs, chorus and reverb are not. Those shape a sound; the sample, its pitch, its loop and its envelope are the sound.

Your own recordings as an instrument

A SoundFont is a real sampled instrument, but you have to find one, and making one is a project in itself. To play your own recordings instead, put a folder of them in the same config/socketsvc/soundfonts directory — it appears under Sound bank alongside the .sf2 files.

Name each file after the note it was recorded at, in WAV, MP3, OGG, Opus, FLAC or AIFF:

config/socketsvc/soundfonts/
  my piano/
    A0.wav
    C2.wav
    C4.wav
    A4.wav

C4.wav, C#4.wav, Db4.wav and the MIDI number 60.wav all work, and the note is read from the end of the name, so Grand Piano A4.wav and piano-A3.wav are fine too. A file whose name says nothing about pitch is assumed to be middle C, so a single unnamed recording still plays.

A note with no file of its own is played from the nearest recording, resampled by the pitch ratio. One file therefore covers the whole keyboard, and each one you add narrows the stretch around it — four or five across the range is usually enough to stop it sounding obviously transposed.

Stretching costs quality, and the cost is not symmetrical. Notes near a recording are clean. Notes played well above one lose top end and pick up a faint ringing, because the recording's own high frequencies fold back as the playback speeds up — audible from roughly an octave and a half up, and plain by two octaves. Adding a recording higher in the range is the fix; nothing downstream can recover what folding destroys.

A note lasts as long as its recording

There are no loop points in a bare audio file, so a held key plays the recording once and stops rather than sustaining. That suits struck and plucked sounds — piano, guitar, bells, drums, one-shot vocals. For sounds that have to hold indefinitely, a SoundFont carries the loop points that make that possible.

Why the built-in synth is oscillators

With no bank loaded, SocketSVC synthesises notes itself, and it sounds like a synthesiser rather than a real instrument. The JDK does ship a General MIDI soundbank, but every route to it — rendering it to audio, or reading its samples — lives in a package the Java platform does not export, and a mod cannot change another player's launcher to open it. That is why sound banks exist as an option, and why the fallback is oscillators.

VST3 plugins

Not supported, and not planned to be hosted inside SocketSVC. VST3 has no Java binding, so it would need a native host built per platform; its SDK is GPLv3 or a signed Steinberg agreement; and a third-party plugin running in the game's own process can crash Minecraft outright, which is why audio software sandboxes plugins in a separate process.

The supported route is Line in: run the plugin in whatever host you already use, send that host's output to a virtual audio cable, and pick the cable as the instrument device. Every plugin you own works, with nothing able to take the game down with it.

If MIDI makes no sound

  • "No MIDI input device found" in the status line means nothing on the machine can send notes. Only hardware MIDI ports count: the JDK's built-in "Real Time Sequencer" is not one, despite looking like an input, and is deliberately not offered.
  • Turning the instrument on works at the title screen too, and monitors locally, so you can check a keyboard before joining a server. Nothing is transmitted until you are connected.
  • If you hear yourself but nobody else does, check you are connected and that the server allows socketsvc.soundboard.
  • If the device will not open at all, it offers no capture format SocketSVC can read; try setting the cable to 16-bit stereo at 44.1 or 48 kHz in its own control panel.
  • If the sound stutters or cuts in and out while monitoring, that was a bug in the monitor mixer up to this version: a tick where no audio happened to be ready skipped the write entirely and let the output device run dry. It now writes silence instead, so the device is never starved, and the monitor's own buffer is capped at 160 ms so playing a note is heard promptly.
  • If you hear nothing at all, check Hear yourself is on — with a line-in it is the difference between silence and sound on any interface that does not monitor by itself.

Requirements and limits

  • The server must support the soundboard channel, which is how a second concurrent stream reaches other players. On a server too old for it the instrument falls back to riding your microphone stream, which means it stops being independent of it.
  • The socketsvc.soundboard permission covers the instrument too, and listeners' soundboard volume applies to it.
  • Up to 24 notes can sound at once; beyond that the quietest is reused.

Interface

SettingDefaultDescription
Speaking indicatorOnBottom-left HUD status icon; also toggled with H
Group overlayOnTop-left list of everyone on your voice group — heads and names, no panel behind them. Only drawn while you are in a group, and hidden while the player list (Tab) is showing
Player nameplate voice iconsOnVoice icons next to other players' nameplates
Server list voice badgeOnMicrophone badge in the margin to the left of a server's row in the multiplayer server list, for servers that run SocketSVC. Read from the status ping the list already sends, so it costs no extra connection; a server that does not advertise simply has no badge. See Server list badge
Reduce motionOffDisables UI transition animations, and holds animated GIF icons on their first frame

Diagnostics

Not things you see, but things you turn on to work out what is wrong — which is why they are a card of their own rather than the bottom of Interface.

SettingDefaultDescription
Developer modeOffShows local voice statistics at the top right, not true network loss. See Troubleshooting
Verbose loggingOffWrites a detailed connection, audio and network trace to latest.log for troubleshooting
Share anonymous usage metricsOnSends aggregate mod/Minecraft version and OS info to the stats system; never player identities or voice data

Player volume

"Only changes what you hear. 0% mutes a player."

  • Speakers — when the server defines spatial speakers, they are listed at the top with one 0–200% slider each, saved per server and speaker ID.
  • Players — one row per player connected to voice, with their skin head and a speaking level. Players who spoke most recently are listed first; players who never spoke are listed last.
    • Voice volume 0–200% (default 100%). 0% silences only that player, 100% is normal, 200% increases gain subject to the shared peak limiter.
    • Click the player head or their name to toggle mute; unmuting restores the last non-zero volume. Anywhere left of the slider works, so it is an easy target in a long list.

Each player's soundboard audio is no longer given its own row here — use Players' soundboard on the General tab instead.

Volumes are saved and survive reconnects and game restarts. When not connected the tab shows "Connect to voice to adjust other players' volume."; on an older server without roster support it shows "Waiting for players. Older servers do not support this list."

Headphone spatial audio

Positioned voices are processed with MIT KEMAR head-related transfer functions (HRTFs) so headphone users can tell whether a voice comes from in front or behind. There is nothing to configure, but note the limits:

  • The protocol only supplies horizontal X/Z offsets, so you get front/back and left/right localization, not elevation or head-pitch cues.
  • Generic HRTFs cannot guarantee that sound feels "outside your head" for every listener and headphone.
  • Use stereo headphones with other surround processing disabled for the best result.

Status icons

IconCustom icon nameWhere it appears
Mic - UnmutedMic - UnmutedMicrophone button, on state; HUD: you are speaking
Mic - MutedMic - MutedMicrophone button, off state; HUD: your mic is muted
Audio - OnAudio - OnIncoming voice button, on state; nameplate: that player is speaking
Audio - DeafenedAudio - DeafenedIncoming voice button, off state; HUD: you are deafened; nameplate: that player is deafened
DisconnectedDisconnectedHUD: voice is not connected; nameplate: that player is not connected to voice
Soundboard playingSoundboard playingNameplate: that player's soundboard is playing, shown after any other status icon

HUD

The HUD sits unframed at the bottom left of the screen and shows one state, in this priority:

  1. Voice not connected (shows "Connecting..." text while connecting, and "Reconnecting..." while an automatic retry is pending)
  2. Deafened
  3. Microphone muted
  4. Speaking

Nothing is shown while connected, unmuted and idle. On a server that doesn't run SocketSVC, the disconnected icon shows straight away — there is nothing to connect to, so it doesn't say "Connecting..." first. On a server where Simple Voice Chat or Plasmo Voice has connected instead, nothing is shown, leaving the corner to that mod's icon. The HUD is also hidden by F1, by turning off "Speaking indicator", and while any screen is open.

Nameplates

Icons are drawn to the right of another player's name, never inside it, so toggling an icon never shifts the nametag. Priority is disconnected, deafened, speaking; otherwise nothing is shown. A soundboard-playing icon is appended after it.

  • "Speaking" reflects audio actually played back on your client.
  • An unknown roster or your own disconnection does not falsely mark everyone offline.
  • Deafened status is synchronized through a separately negotiated extension; update both ends for it.
  • TAB list and chat names are not modified.
  • Turn off all nameplate icons under Advanced → Interface → Player nameplate voice icons.

Custom icon packs

The Customize tab lets you build icon packs from your own images to replace the six status icons above. Any picture works; it is auto-cropped to square and resized.

Create a pack

Click + at the top right to create a new pack. It starts as a copy of the currently active pack (or the defaults) and opens the pack editor.

Add images

In the editor, left click an icon to open the "Choose an Image" list. Click "Open folder...", drop your image into that folder from your file browser, click "Refresh", then pick the file. Right click an icon to reset it to the default.

Save and activate

Enter a name (up to 48 characters) and click "Save" — this also activates the pack. "Delete" removes the whole pack; deleting the active pack reverts to the default icons.

In the pack gallery, left click a tile to apply it and right click to edit it. "Default by DragonL" can only be applied, not edited.

ItemRule
Icon folderconfig/socketsvc/icons/inbox/ (inside the game directory; files are listed newest first)
Image formatsPNG, JPG/JPEG, GIF, BMP
ProcessingCenter-cropped to square and scaled to 128×128
Animated GIFsStored frame by frame and animated everywhere the icon appears — the HUD, the settings buttons and the nameplate icon above players' heads; up to 200 frames, per-frame delay clamped to 20 ms–30 s. Gallery thumbnails stay on the first frame, and so does everything while Reduce motion is on
Pack storageconfig/socketsvc/icons/packs/

Export and import

  • Export... saves the active pack as a zip in the icon folder (named <name>-<timestamp>.zip) and opens that folder. Icons that weren't customized are filled in with the defaults, so the zip is self-contained.
  • Import... picks a zip from the icon folder and imports it as a new pack (never overwriting an existing one, and not activated automatically). If the zip has no recognized icons, it reports "That zip didn't contain any recognized icons".

Zip entries are recognized by icon file name: pack.json (the name), speak.png, mute.png, mic.png, defend.png, disconnected.png, soundboard.png. An animated icon is a folder with the same name containing anim.json plus 0.png, 1.png, and so on. The file names are historical internal names and don't necessarily describe the artwork — see Status icons for the mapping (for example, mic.png is "Audio - On").

Flashback

This tab appears when Flashback is installed. Flashback's own voice setting only shows up in its menu when Simple Voice Chat is installed, so these settings are the real switches for SocketSVC.

SettingRangeDefaultDescription
Record voice chat in FlashbackOn / OffOnCaptures nearby voice chat into Flashback recordings so it's audible when the replay plays back
Include my own voiceOn / OffOnAlso captures your own outgoing mic audio
Hearing range8–256 blocks48Audible distance used for recording and playback
Fade start distance0–255 blocks0During playback, full volume until this distance, silent at the hearing range; must stay below the hearing range

The server's actual values aren't sent to the client, so set these to match the server. "Recorded players" below lists the voice sources heard in the current replay, each with its own 0–200% volume, saved separately from live player volumes.

The recording itself is built into the Fabric/Quilt JAR on some Minecraft versions only — see Compatibility.

Config file

All client settings are stored in config/socketsvc.json in the game directory and written when a settings screen closes. The following option has no UI and can only be changed by editing the file:

FieldDefaultDescription
lanVoiceHostingtrueWhether opening a world to LAN (vanilla or Essential Mod's world hosting) also starts the built-in voice server — see LAN and singleplayer