-
-
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
same note layering when sustain pedal is pressed #3774
Conversation
Haven't tested yet, but looks good. I'll test it soon. |
Tested. It works great, and I can't find any regressions caused by this. |
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.
Tested summarily. Works like a charm!
@@ -252,8 +252,17 @@ void NotePlayHandle::play( sampleFrame * _working_buffer ) | |||
if( m_released && (!instrumentTrack()->isSustainPedalPressed() || | |||
m_releaseStarted) ) | |||
{ | |||
m_releaseStarted = true; | |||
if (m_releaseStarted == false) |
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.
Don't mix styles. This would be comparably to the rest of your changes in this PR and surrounding code.
if( m_releaseStarted == false )
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.
if (a)
is new convention, if( a )
is old one. Many things are written with old convention, which make the code inconsistent for recently edited files.
I suggest using new style in line 252.
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.
OK. ;)
So, I have to change something? |
It'd be better to either change line 252 and 258 to new style, or use old convention in line 255. |
We had a discussion on this over at the discord developer channel. Since the conventions have changed the code base is inconsistent anyway. Merged. Thanks for fixing this! |
[cherry-picked from master]
Backported in efd0d34 |
An oops with this PR. Recording single streamed instruments just disappeared... |
@PhysSong I will use your proposed solution (here #3757 (comment)). |
I will take a look at #3777,
and are you on this? |
👍 I think so. |
I tried my suggestion in #3757 (comment). It seems to fix both issues, but it is an incomplete solution for #3777. |
@serdnab That can be a permanent and fundamental solution, if the uniqueness is guaranteed and the ID won't be changed. I'll send a PR for single-stream recording fix. |
The problem is not that instruments are single-stream, it is that they don't have a release. |
Confirmed. sfxr too. |
I don't have time to write up an issue for this right now. RC4? |
I will open a PR that fixes recording single-stream instruments tomorrow. RC4 is really coming :) |
This reverts commit e387e77.
This reverts commit e387e77.
This reverts commit e387e77.
This reverts commit e387e77.
[cherry-picked from master]
…LMMS#3803) * Revert "same note layering when sustain pedal is pressed (LMMS#3774)" This reverts commit ab80176. * Fix recording of sustained notes
fix for #3757
I moved the signal emission for note ended to where all notes (sustained and not sustained) go, the release process on
NotePlayHandle:play