global_settings (in the C firmware) and are
mirrored in settings.toml. Most can also be changed at runtime via
GraphQL or gRPC and they persist on the next save cycle.
Equalizer
10-band parametric EQ — gain, centre frequency, Q per band.
DSP
Crossfeed, surround, PBE, AFR, compressor, dithering.
ReplayGain
Track / album normalisation with optional clipping protection.
Crossfade
Overlap track ends with the next track’s start.
Where settings live
Hardware settings flow through
firmware/sound.c → sound_set_*(). DSP
settings flow through lib/rbcodec/dsp/* and are applied in the PCM pipeline
before samples reach the sink.
Volume
global_status.volume — decibels relative to the device’s clipping point.
0 dB is the maximum undistorted level. Negative values reduce output;
positive values may distort. On the CPAL target, volume is implemented as a
software mixer.
Channels & stereo
Pitch & time-stretch
Persisted inglobal_status so they survive across restarts. Time-stretch
uses a TDHS algorithm — best for speech, may sound rough on dense music.