Skip to content

fix: correctly reset tempo on frame change when retrieve channel state setting is used#373

Merged
Gumball2415 merged 2 commits intoDn-Programming-Core-Management:mainfrom
henrikvilhelmberglund:fix-retrieve-channel-state-on-manual-frame-switch
Aug 14, 2025
Merged

fix: correctly reset tempo on frame change when retrieve channel state setting is used#373
Gumball2415 merged 2 commits intoDn-Programming-Core-Management:mainfrom
henrikvilhelmberglund:fix-retrieve-channel-state-on-manual-frame-switch

Conversation

@henrikvilhelmberglund
Copy link
Copy Markdown
Contributor

This pull request aims to correctly reset the tempo on frame change when the retrieve channel state setting is used.
Eg. right now if you have a groove Oxx or Fxx in only the first pattern and change the frame while playing back, the tempo is reset using the default speed/tempo instead of the retrieved groove/speed settings. This PR changes this to correctly reset the tempo to the actual groove setting used so the tempo stays consistent even when changing frames during playback.

It looks like there was some groove/speed handling in there already (which didn't work using retrieve channel state) so I split that code with an if/else depending on General.bRetrieveChanState and took the working code from CSoundGen::ApplyGlobalState(). Maybe there's a smarter way to fix this, if that's the case feel free to edit.

fixes #357

Changes in this PR:

@Gumball2415
Copy link
Copy Markdown
Collaborator

i cannot edit PRs with branches from external repositories, so i'll have to recreate this PR in a new branch, if desired

@henrikvilhelmberglund
Copy link
Copy Markdown
Contributor Author

Do you know why? I have Allow edits by maintainers checked

image

But yes you can make a new PR if that's better.

@Gumball2415
Copy link
Copy Markdown
Collaborator

oh, i guess i was wrong. i recall trying this on a different PR of yours and it didn't work

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.

Pressing up/down in focused frame list makes playback ignore inherited Fxx commands

2 participants