How to use it

Three steps to a mix you can hear over the ship.

1 Open the Audio mixer and move the five sliders.

Audio mixer Speech 80% Cues 60% Music 40% Ambience and Alerts sit below these two.

2 Set how far everything else drops while D47 talks.

Duck everything else while D47 speaks -12 dB Move a slider while something is playing and you hear the change as you make it. Nothing has to be re-triggered to audition it.

! The one that stops people.

The AI cannot touch the mixer. Asking it to turn itself down does nothing. Move the slider, or use your Windows mixer.
Why it works this way

How loud each kind of sound is, and how far it drops out of the way while Directive 47 speaks.

1 Five categories, and everything audible is one of them.

SPEECH everything it says out loud ALERTS the one thing that cuts in mid-sentence SOUND CUES listening, thinking, answering THINKING BED the loop under a running turn AMBIENCE follows what you are doing Everything audible goes through one queue, and belongs to exactly one of these. Each has a Level and a Mute, and they are separate on purpose. A level of zero and a mute sound identical and mean different things.

2 Ducking is a fraction, not a second level.

DUCK IS A FRACTION of that category’s own level not a level of its own SO TURNING MUSIC DOWN takes its ducked form down with it 1 does not duck at all. 0 goes silent until the sentence ends. The bed sits at 0.35 — audible enough to prove the turn is running, quiet enough not to compete.

Speech and alerts have no duck row, because there is nothing for them to duck under. A row that does not apply is absent rather than greyed out. And moving a level re-levels whatever is playing at that moment, because setting a level by ear is the only way to set one.

3 Ambience follows only what the game actually states.

docked at a station supercruise in supercruise normal-space and landed too on-foot out of the ship general and the fallback no combat folder, and no exploring folder Neither is something the game reports, and a situation it has to infer plays the wrong music at the worst moment.

Directive 47 ships with no music of its own — drop 16-bit mono 48 kHz .wav files into data/audio and they are picked up while it runs. Tracks shuffle within a folder and the whole folder plays before any repeats, because you did not number your files.

4 There is no tool here at all.

IT CANNOT TURN DOWN its own voice or the danger callouts YOU STILL CAN by voice, through the router and from the Settings tab Those are the two things that would make it harder to hear exactly when hearing it matters.

“By voice” never silently means “by the language model”. Every row here is reachable through the model-free keyword router, which is a different path with a different caller.

The details

How loud each kind of sound is, whether it is muted, and how far it drops out of the way while Directive 47 is speaking.

The five categories

Everything audible goes through one queue, and everything on that queue belongs to exactly one of these:

Category What it is
Speech Everything D47 says out loud.
Alerts The danger callouts — interdiction, shields down, low fuel. The one thing that cuts in mid-sentence.
Sound cues The short markers for listening, thinking and answering.
Thinking bed The loop that plays underneath a turn while D47 works.
Ambient music The background layer that follows what you are doing.

Each has a Level from 0 to 1 and a Mute. They are separate on purpose: a level of zero and a mute sound identical and mean different things, and flicking the mute back should not cost you the level you had it at.

What silences what

Ranking decides who goes next, not who gets cut off. Something already playing is normally left to finish, and there are exactly three exceptions:

What arrives What it cuts What it leaves alone
An alert Anything being said, mid-word Nothing; only “stop” overrules it
You starting to talk to it Invented NPC chatter, playing or queued Everything else, including the sound cue
“Stop” Everything audible, including the alert Nothing

The middle row is the narrow one, and it fires when you open the microphone rather than when the answer arrives. Transcription and the model together take several seconds, and a four-line exchange finishes inside them, so waiting for the answer would mean hearing the whole exchange out anyway.

It stays shut until the loop goes quiet again, rather than only cutting what was audible at that moment. An exchange is written and voiced ahead of what you are hearing, so the next speaker is already on their way when the first is cut off, and would otherwise arrive a second later.

It reaches invented chatter and nothing else: a message the game sent you, a callout you switched on, and a sound cue are all left where they are. And it is only ever you who does it — an unprompted line of Directive 47’s own queues up behind the chatter like anything else, because nobody was waiting on it.

The sound cue is the reason the rule is written this way. A cue is a fifth of a second and it plays immediately before the sentence it introduces, so anything allowed to cut in on rank alone would truncate the cue that announced it, every single turn.

Ducking

Speech and alerts are what everything else gets out of the way of, so the other three carry a Duck while speaking number as well. It is a fraction of that category’s level rather than a level of its own — turn music down and its ducked form goes down with it.

1 does not duck at all. 0 goes silent until the sentence ends. Out of the box the thinking bed sits at 0.35, which is enough to stay audible as evidence the turn is still running and quiet enough not to compete with the words, and music sits at 0.2.

Speech and alerts have no duck row, because there is nothing for them to duck under. A row that does not apply is absent rather than greyed out.

What you hear if you never touch it

The defaults are what D47 sounded like before there was a mixer, with one addition: ambient music arrives at half level and ducking to a fifth, because a background layer that turns up at full volume is one you switch off rather than turn down.

{
  "bed":    { "level": 1,   "muted": false, "duckUnderSpeech": 0.35 },
  "music":  { "level": 0.5, "muted": false, "duckUnderSpeech": 0.2 },
  "cue":    { "level": 1,   "muted": false, "duckUnderSpeech": 1 },
  "speech": { "level": 1,   "muted": false, "duckUnderSpeech": 1 },
  "alert":  { "level": 1,   "muted": false, "duckUnderSpeech": 1 }
}

That block is the audio section of data/settings.json. You never have to edit it — every value has a row — but it is a plain file and it reads the way the rows do.

It takes effect while you are listening to it

Moving a level re-levels whatever is playing at that moment rather than waiting for the next clip. Turn the bed down while a turn is running and it goes quiet under your hand, which is the only way to set a level by ear.

Your own sounds

Drop 16-bit mono 48 kHz .wav files into data/audio beside the executable. The folders are made for you on first run, so opening the data folder is enough to find out what goes where:

data/audio/
  cues/<loop-state>.wav      replaces a shipped sound cue
  beds/<name>.wav            adds a thinking bed to the picker
  music/<situation>/*.wav    ambience — see below

A cue file is named for the loop state it belongs to: idle, listening, transcribing, thinking, speaking, answered, unsure, failed. A bed file is named whatever you like, and the name is what appears in the Thinking bed sound picker, marked as yours.

Files are picked up while D47 is running. Drop one in and it appears in the picker without a restart, and a reload never cuts a clip that is already playing.

A file that will not load is skipped rather than fatal, and the Your own audio row says which one and why — a skipped file is silent in exactly the way a missing one is, so without that the only symptom of a wrong sample rate is a cue that never plays:

2 files picked up from data/audio.
Skipped: stereo-bed: it is 48000 Hz / 2ch; audio must be 48000 Hz mono 16-bit.

Ambience

music/<situation>/*.wav is a background layer of its own, with its own level and its own ducking, separate from the cues and the thinking bed. There are five situations, and they are the five Elite’s Status.json can state without anyone guessing:

Folder When
docked Docked at a station or an outpost.
supercruise In supercruise.
normal-space In a ship, a fighter or an SRV, and neither of the above — including landed.
on-foot Out of the ship.
general Anything else, and the fallback for a situation with no files of its own.

There is no combat folder and no exploring folder. Neither is something the game reports, and a situation D47 has to infer is a situation that plays the wrong music at the worst moment.

Tracks are shuffled within a folder and the whole folder plays before any of them repeats — you did not number your files, and hearing the same one every time you dock is what happens if D47 plays them in name order. A situation with nothing in it falls back to general; general with nothing in it is quiet, which is what every Commander gets until they drop something in. D47 ships with no music of its own.

Changing situation stops the old track rather than letting it play out: arriving at a station is the moment the docking music is wanted, not thirty seconds later. Muting the category stops it, and unmuting starts one — a switch whose effect waits for the next time you dock is a switch that reads as broken.

Not reachable by the model

There is no tool here. Directive 47 cannot turn its own voice down, and it cannot turn the danger callouts down either — those are the two things that would make it harder to hear exactly when hearing it matters, and no request needs them.

Every row is still reachable by voice, through the model-free keyword router, and from the Settings tab. “By voice” never silently means “by the language model”.