Skip to content

Improve song select audio transitions#37022

Merged
bdach merged 3 commits intoppy:masterfrom
peppy:song-select-better-audio-transition
Mar 18, 2026
Merged

Improve song select audio transitions#37022
bdach merged 3 commits intoppy:masterfrom
peppy:song-select-better-audio-transition

Conversation

@peppy
Copy link
Member

@peppy peppy commented Mar 18, 2026

Based on feedback I've heard more than once (most recently), there's too much overlap compared to stable. And it can sound a bit "jumbled" as a result, especially when transitioning between two songs with loud and "complex" audio.

This also fixes noticeable audio glitching that some users may have been experiencing when switching tracks.


Unless there's any very loud objections, I'd ask that review is on the code not the audible change. This is the kind of change that I tweak to my personal spec and then push out to hear the general reaction.

b8d0dfe Better default preview time based on global fade

This is an oversight. The preview point wasn't being offset to account for the fade in. This is something we do when generating web-side previews, which allows for the actual preview point to be audible, rather than mid-fade.

8de323b Adjust fade in and fade out during track transitions to reduce overlap

Yes, I'm aware that the delay is not accounted for in the constant. This is intentional because it sounds better. I want this to be an internal adjustment which is not to be considered by any external usages of those constants. Just sounds better.

aab01b0 Remove weird/dated schedule usage

This causes audible artifacts in playback. The track is not set to zero volume early enough. Original change was made in this ancient PR (see commit). The original failure does not occur. Tests still pass. I'd argue that if we encounter this again, it's an issue at the call site, not this code.

This is a drive-by fix, as I noticed this glitching while working on the main issue here. Arguably should be it's own PR 🤷 .

peppy added 3 commits March 18, 2026 13:54
Based on feedback I've heard more than once, there's too much overlap
compared to stable. And it can sound a bit "jumbled" as a result,
especially when transitioning between two songs with loud and "complex"
audio.

Yes, I'm aware that the delay is not accounted for in the constant. This
is intentional because it sounds better. I want this to be an internal
adjustment which is not to be considered by any external usages of those
constants. Just sounds better.
This causes audible artifacts in playback. The track is not set to zero
volume early enough. Original change was made in [this ancient
PR](ppy#9792) (see
[commit](ppy@688e447)).

The original failure does not occur. Tests still pass. I'd argue that if
we encounter this again, it's an issue at the call site, not this code.
@bdach bdach self-requested a review March 18, 2026 09:49
@bdach bdach merged commit 978e380 into ppy:master Mar 18, 2026
6 of 9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants