sugarlabs / musicblocks

Music Blocks -- A musical microworld
https://musicblocks.sugarlabs.org/
GNU Affero General Public License v3.0
588 stars 823 forks source link

Fixing issue that requires 'No Clock' block #3882

Open myra-hasan opened 6 months ago

myra-hasan commented 6 months ago

Description

In instances with blocks that have multiple music notes, the software attempts to catch up and rushes the notes, leading to notes being played for a shorter duration or in the wrong order. This can be fixed with a 'No clock' block but there is a bug that causes this.

Expected Behavior

The notes should play in succession and according to their assigned note values

How to Reproduce

Adding multiple music notes that play in succession, there are instances where it lags or does not act as it should

Environment:

pikurasa commented 3 months ago

This is a good observation.

The "no clock" block is a bit tricky because sometimes we want all the voices to perform together, and to catch up, even if they are falling behind. They do this by following a common clock.

However, especially with more interactive programs, we want to override this behavior, because the sequence of notes is more important than the timing.

So that's why we have the "no clock" block.

However, I agree that MB would be vastly simpler if that block were not needed.

@myra-hasan given this, do you have any thoughts on what we might want to do to improve this?

akshayw1 commented 2 months ago

@pikurasa, I think could be improved ? Should I give the hand on this?