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

Groove shuffle implementation #277

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open

Conversation

eethann
Copy link

@eethann eethann commented Apr 26, 2022

This is a first implementation of groove in Orca. It doesn't handle restarts gracefully (wherever you restart will become a downbeat relative to the groove), and the clock needs to be restarted when groove is changed. Basic functionality seems to work though: groove:X;Y;Z sets ratios between ticks, groove:X gives the standard MPC style shuffle, groove:50 is the default, linear clock.

@neauoire
Copy link
Member

If you wanna complete the implementation of the groove command I'll merge it :)

@eethann eethann changed the title WIP Initial rough of groove shuffle implementation Groove shuffle implementation Apr 29, 2022
@eethann
Copy link
Author

eethann commented Apr 29, 2022

Updated to use a setTimeout loop in the worker process and refactored BPM and groove to update the state of that clock without needing to restart when BPM or groove is changed.

Didn't test with animated clocks yet. Used globals for worker process state.

@eethann
Copy link
Author

eethann commented Apr 29, 2022

I think this should be good to merge at this point.

@eethann
Copy link
Author

eethann commented Apr 29, 2022

One possible enhancement would be jitter correction on the clock: check actual time against scheduled time each tick and compensate. Not essential though.

@dfischer
Copy link

What ever happened with this? Any bugs?

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.

3 participants