Quick answer: Pygame mixer.music.set_volume during an active fade producing a volume jump? Fade and set conflict; current fade overridden - cancel fade first.

Music fading out; player adjusts volume; volume jumps to set value, fade restarts.

Cancel fade first

music.fadeout(0)
music.set_volume(v)

Stops the fade; sets directly.

Or queue volume changes

Hold pending volume changes; apply after fade completes.

Audit fade interactions

Each fade overlap with other audio actions. Document.

“Fades and direct sets conflict. Pick one path at a time.”

If your audio jumps, the fade-then-set sequence is the suspect.

Related reading