Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

I rewrote the unpitch-rater entirely this time #1323

Merged
merged 1 commit into from
Sep 24, 2024

Conversation

graemephi
Copy link
Contributor

It sounds good now. The way I did it doesn't work well for downrates, but it turns out to not work well in a different way than the old SpeedChange method, so in that case you can use them both and get alright results in the 0.8-0.95 range? Really nice how that turned out. Anyway what I implemented here is dirt simple, and never skips or moves beats on uprates. Sometimes 32nd rhythms get mangled up at like 1.8 but that's about it I think.

Like half the code is just for an easter egg when you go down to 0.05, everything in the range 0.5-3.0 is time domain only so should still run on a toaster

Notable changes outside SpeedChange good:
- RageSound.cpp: Moving PostBuffering. This lets you change volume
  immediately. Before nothing buffered long enough for this to happen,
  but at rates of 0.05 the amount of buffering by SpeedChange_Good is
  very long, so if you have it really loud and try to reduce the volume,
  nothing happens. Very bad
- GameSoundManager.cpp: Initialising music with the current rate
  pre-applied. Without this the first few reads of a file often have
  no rate applied which is audible in the music wheel
@poco0317 poco0317 merged commit 3a939df into etternagame:develop Sep 24, 2024
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants