In a project I released last year, I stopped a background sound, then would follow it up with a play. Then I would pause it with a global muted variable to toggle off the sound. This was only called in
sound.stop("#happybounce")
sound.play("#happybounce", { delay = 1, gain = 1.0, pan = 0 })
sound.pause("#happybounce", MUSICMUTED )
This was only called after the splashscreen ended or the level was reset.
In a update function, i would pause the sounds with the muted variable as well in case the user clicked a mute button.
sound.pause("#happybounce", MUSICMUTED )
This worked flawlessly. Now, after loading the project, when i move from menu screen to screen, the background plays over itself and with each new click.
muting still works, but when its unmuted, the multiple copies then play again.