-
-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Fixing the arpeggiator #3858
Fixing the arpeggiator #3858
Conversation
Note: |
|
src/core/InstrumentFunctions.cpp
Outdated
@@ -378,9 +378,7 @@ void InstrumentFunctionArpeggio::processNote( NotePlayHandle * _n ) | |||
// used for calculating remaining frames for arp-note, we have to add | |||
// arp_frames-1, otherwise the first arp-note will not be setup | |||
// correctly... -> arp_frames frames silence at the start of every note! | |||
int cur_frame = ( ( m_arpModeModel.value() != FreeMode ) ? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm dropping this test altogether but perhaps it should be kept and changed to m_arpModeModel.value() = SyncMode
?
I went ahead and fixed up some other issues. Merge will wait. |
1e620a0
to
a984c23
Compare
I think I'm done with the arpeggiator now for 1.2 . I reverted one of the changes but the rest is fine to go and also took the liberty of bumping the default arp time from 100ms to 200ms. half the speed that is. Else it will just fire away and scare our beloved beginners. The fixes here basically takes care of regressions from 1.1.3. I'll merge this in a day if there is no objection. |
839fdb3
to
b2ea4b6
Compare
Two of the fixes didn't pass testing and had to be reverted. I'll open a new ticket (meta) for the remaining issues once this PR is merged. |
Set 'master note' for silent notes on sort mode. Prevent silent notes to play as ordinary notes in the background when they are waiting for their turn to arpeggiate. Remove unnecessary test (it will always return TRUE). Slower default speed (200ms).
b2ea4b6
to
3a03181
Compare
Set 'master note' for silent notes on sort mode. Prevent silent notes to play as ordinary notes in the background when they are waiting for their turn to arpeggiate. Remove unnecessary test (it will always return TRUE). Slower default speed (200ms).
Fixing some of the issues with the arpeggiator.
The decay of the last arpeggio note is added to the length of the master note so after the first run there will be extra notes played along with the arpeggio, forming chords or doubling the notes for increased volume.
* * *Fix reverted* * *
Sort mode. If the envelopes are off, the notes that should be silent are playing as ordinary notes while waiting for their turn. Solving this by using the same hack as the 'skip' algorithm as it had the same issue.
Set as master note.
Adresses #3342
Issues remaining
Edit: New arpeggiator meta issue opened here: #3880