Levels and headroom
What it is#
Not "how loud", but how much room is left above the loudest thing playing. Every layer of a chiptune has its own ceiling — a 4-bit register on the chip, a 00–40 or 00–80 scale in the tracker, 0 dBFS in the render — and every trick that adds signal spends headroom that something else then has to give back. It is the one part of chip music where the constraint is arithmetic rather than taste.
Why chips run out of headroom first#
- The Game Boy wave channel has four volume steps, and three of them cost bits. nitro2k01: "The wave channel volume lowers the volume by shifting each sample and discarding the lower bits. So in effect, wave channel only has 3 and 2 bits of resolution for the lower volume settings. The master volume does not have THIS problem but obviously affects all sound channels routed to that stereo channel" (source: s-chipmusic-lsdj-wav-channel-release). Turning a chip voice down is not the same operation as turning a fader down.
- Additive tricks are paid for in amplitude. Drawing a ghost-channel wave: "you must create more headroom by sacrificing some of your sine wave's amplitude", and bryface states the consequence for the mix — "because you're additively piling on waveforms on top of each other, you need extra volume headroom, which means your wav sounds will sound quieter on average. But that can be worked around somewhat by making all your other instruments quieter" (source: s-chipmusic-lsdj-ghost-channel). The same tax in the pulse channel, from the channel-hacking demo that runs two voices on PU1: "we go from 15 possible amplitudes (excluding zero …) to a measly 7, since we have to be able to add the results without overflowing" (source: s-hackaday-gameboy-channelhacking).
- The sid has one 4-bit master volume for all three voices — "4 bit precision = 16 steps" — and no per-voice level at all; per-voice loudness lives in the ADSR sustain nibble (sources: s-mos-6581-datasheet, s-defmon-wiki-calling-the-player; the ducking consequences are on sidechain-pump).
The chip mixing rule: turn the others down#
Because the ceiling is fixed and the loudest voice defines it, the correct move is almost always downward. roboctopus, on the commonest LSDj complaint: "if you find your WAV channel sounds to be too quiet, turn those pulse and noise channels down! I rarely have anything on pulse above A8, and pulse volumes are usually lower than that" — with the warning attached, that doing so "will increase the apparent volume of panning and envelope clicks" (source: s-lsdj-and-you-collapse-of-the-waveform). The ghost-channel threads reach the same conclusion from the other direction: plan to bring the other channels down rather than the wave channel up (source: s-chipmusic-lsdj-ghost-channel).
So a chip mix has an order of operations: decide the loudest voice, set everything else beneath it, and only then reach for a master level.
LSDj: LIMIT is the volume control, VOLUME is not#
The E command's steps are 25 / 50 / 100 % — "there's nothing between fifty and a hundred percent … sometimes 2 is too soft for an instrument and 3 is too loud in the context of your mix" (source: s-defensemech-wave-channel-ramble). The synth's LIMIT fills the gap, and the reason to prefer it is not convenience:
"VOLUME scales the signal before everything else, so turning it down destroys the clipping or wrapping you liked … LIMIT constrains the dynamic range afterwards, keeping the shape." — "LIMIT, I think, is almost more useful than anything else on this entire thing." (source: s-defensemech-learning-lab-shorts)
The numbers: LIMIT constrains the samples after VOLUME, CUTOFF, Q and PHASE — F allows the full 0–F, 5 allows only 5–A, and whatever spills is handled by the DIST setting (source: s-intense-tech-02-wave-synth-deep-dive-part-2). Calibrated against instrument VOLUME 3: LIMIT 8 ≈ 50 %, 9 ≈ 56 %, E ≈ 94 % — so 9–E is exactly the range E02 and E03 cannot reach, and different LIMIT values on the synth's first and last wave make a volume envelope, driven with W (source: s-intense-tech-15-lets-mix-it-up-and-down).
Two version notes that read as a contradiction and are not: Infu's guide says LIMIT above 0F "does not bring good results easily" and VOLUME above 20 triggers DIST (source: s-infu-getting-started-with-lsdj); version 9.1.0 gave LIMIT two digits, where above 0F it deliberately overdrives, wrapping under CLIP distortion for new harmonics (source: s-intense-tech-19-new-noise-and-910-news). The advice describes the old one-digit behaviour; the feature is the new one.
A transient beats a level. Pain Perdu's snare trick: instrument volume around 90 with the table's E pulling it down after the first tick, so the sound cuts through "without overpowering the other channels" (source: s-intense-tech-15-lets-mix-it-up-and-down; instrument-design).
Samples: normalise before you lose the bits#
- Kits are quiet on purpose and it is a problem. little-scale's rule for the kit channel: normalise, then push 3–6 dB more and accept the clipping, because the channel is quiet against the others (source: s-little-scale-lsdj-kits). The chipmusic-org threads agree the stock kits are simply too quiet — herr_prof in 2013, "I kind of wish someone would do a remaster of all the stock kits… they really are quiet for no reason!" (source: s-chipmusic-lsdj-kit-threads) — and little-scale's 2014 "LSDJ Kit: Loud TR808" is a stock kit rebuilt for level (source: s-little-scale-lsdj-kit-releases).
- Order matters at the bit-depth step. lsdpatch resamples new kit samples with dithering to 4 bits and normalises to full volume (source: s-intense-tech-20-lsdpatch); OpenMPT states the general rule — "samples should be normalized before being converted to 8-Bit" (source: s-openmpt-manual-samples). Normalising after the conversion only amplifies quantisation noise. For source recordings, "normalised and trimmed, but not compressed nor equalised in any fashion", with fades to stop clicks, is little-scale's standing discipline (source: s-little-scale-chip-sample-packs; see recording-samples, chip-samples).
- In impulse-tracker, a sample's global volume "scales every use of the sample — the way to attenuate 8-bit samples", and
Alt-Mamplifies 0–400 % with the default being the maximum without clipping (source: s-it-manual). Per-channel level isMxx, song levelVxx; ST3 has a global volume00–40plus a master volume that controls Sound Blaster oversampling (source: s-st3-manual). See volume-slides. - Keep the global volume high while mixing. At
V05–V08a volume-column fade jumps instead of sliding (source: s-it-hints). - Echoes need a real drop. necros: copy the track, then take its volume down at least a third — 22 from 64 — "I hate leads where people copy the track, move it down, and forget to drop the volume" (source: s-tw012-advanced-tracking-tips; fake-echo).
Checking it#
Zinc's adaptation of a studio-magazine checklist is the most complete list the archive has (source: s-tw096-studio-tracking-tips): check the mix on several systems, in mono, on bad speakers, at very low and at high level, from the corridor, and from different spots in the room; switch off Loudness and any boost on the monitoring hi-fi; keep bass in the centre, drums near but not always dead centre, strings and guitars wider; "don't normalise to 100 % if the song is meant to be quiet"; and the rule that governs all of it — "Garbage In, Garbage Out. There's no such thing as 'hiding it in the mix'."
Airon adds the monitoring caveat: headphones are the cheapest accurate reproduction, but a song mixed on headphones must be mixed again on speakers, because speakers have better bass and worse treble and panning "doesn't sound as extreme" (source: s-tw119-reverb-and-audio-gear; stereo-panning). And at the input end, "an A/D conversion never improves on what went in", so the source's own output level is set first, before any cable or converter question (source: s-tw066-sound-recording).
Tips & pitfalls#
- Lowering a chip voice costs resolution, not just level — three of the wave channel's four volume settings throw away bits (source: s-chipmusic-lsdj-wav-channel-release). Where the level has to come down a long way, do it once at the master and keep the voices near the top.
- Every additive trick is a loan against the mix. Budget the amplitude before drawing the wave, not after (source: s-chipmusic-lsdj-ghost-channel).
- Quieting everything else makes the noise floor louder. Clicks from panning and envelope changes are the first thing to surface (source: s-lsdj-and-you-collapse-of-the-waveform).
- Normalise before bit reduction, never after (sources: s-openmpt-manual-samples, s-intense-tech-20-lsdpatch).
- Deliberate clipping is a legitimate choice in one documented place — the LSDj kit channel, 3–6 dB past normalisation (source: s-little-scale-lsdj-kits). Everywhere else the sources say leave the room.
Related#
volume-slides · sidechain-pump · reverb-and-compression · recording-samples · chip-samples · ghost-channel · instrument-design · stereo-panning · tracking-workflow
Sources#
s-chipmusic-lsdj-wav-channel-release · s-chipmusic-lsdj-ghost-channel · s-hackaday-gameboy-channelhacking · s-lsdj-and-you-collapse-of-the-waveform · s-defensemech-wave-channel-ramble · s-defensemech-learning-lab-shorts · s-intense-tech-02-wave-synth-deep-dive-part-2 · s-intense-tech-15-lets-mix-it-up-and-down · s-intense-tech-19-new-noise-and-910-news · s-intense-tech-20-lsdpatch · s-infu-getting-started-with-lsdj · s-little-scale-lsdj-kits · s-little-scale-lsdj-kit-releases · s-chipmusic-lsdj-kit-threads · s-little-scale-chip-sample-packs · s-it-manual · s-it-hints · s-openmpt-manual-samples · s-st3-manual · s-tw096-studio-tracking-tips · s-tw119-reverb-and-audio-gear · s-tw066-sound-recording · s-tw012-advanced-tracking-tips · s-mos-6581-datasheet · s-defmon-wiki-calling-the-player