Changed audio engine to switch to linear scaler upon entering scratching mode#15845
Merged
daschuer merged 2 commits intomixxxdj:2.5from Jan 30, 2026
Merged
Changed audio engine to switch to linear scaler upon entering scratching mode#15845daschuer merged 2 commits intomixxxdj:2.5from
daschuer merged 2 commits intomixxxdj:2.5from
Conversation
daschuer
requested changes
Jan 18, 2026
Member
daschuer
left a comment
There was a problem hiding this comment.
Thank you, for all your testing with the engine. This fix looks reasonable.
Can you rebase it to the 2.5 branch? This way it will go to all actively maintained branches.
You can than edit the merge target in this PR.
01f3352 to
163a51b
Compare
163a51b to
0c0005a
Compare
Contributor
Author
|
Thanks, guys. Can we also get a look at #15792 while or after this gets approved? |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
There is an issue when using the new Traktor S2MK3 mapping I made, which directly sets the speed using
scratch2. When I scratch back and forth, the track continues to play in the old direction for a moment before correcting itself. This issue might come up in other mappings that directly setscratch2as well.I've attached a video (same as the one in Zulip chat) that hopefully illustrates the point better. In this video, I am moving the IRL jogwheel in a different direction every time I stop, but the virtual jogwheel is "snapping" every time I do that (because it keeps trying to go in the old direction).
bug.mp4
(To reproduce the issue: use my mapping w/ the Traktor S2MK3. Tap the top of the jogwheel without moving the jogwheel to enter scratching mode. Then scratch back and forth and you should see the lag)
I suspect this is due to an improper handoff between the SoundTouch/Rubberband algorithms and the linear scaling algorithm when entering/exiting scratching mode. This PR fixes the issue by making the engine switch to the linear scaler when scratching begins, even if the platter is not moving at all (ie speed is 0).