Go Back   Cockos Incorporated Forums > REAPER Forums > REAPER Bug Reports

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Old 08-17-2016, 07:37 AM   #1
mccrabney
Human being with feelings
 
mccrabney's Avatar
 
Join Date: Aug 2015
Posts: 3,669
Default MIDI overdub: infinite notelength bugs (FIXED)

6+ report confirmations

one aspect of this bug has been fixed in a recent pre but the others still exist as described.

this bug was discovered by snooks in the "Drum Machine Edit script" thread in the JS/Reascript forums (http://forum.cockos.com/showthread.php?t=175297). i'll summarize his findings and provide licecaps.



Reproduction:
1- Set a short time selection to loop.
2- create a midi item to fit that time selection
3- overdub arbitrary notes. make sure to hold a note past the end of the loop.

ISSUE:* additional note ons are recorded at the beginning of the loop.

ISSUE: the notes extending beyond the boundary have an end position before the start position.

ISSUE: in overdub mode, REAPER assumes midi notes have infinite length until it receives a NOTEOFF. this is not the case in other record modes. this is perhaps the root of all other described behaviors? see more on this issue here: http://forum.cockos.com/showthread.php?t=176552 -- desired behavior would be that notes should exist up til play cursor and, in the case of a looped overdub recording, drop a noteoff where the play cursor WOULD BE if the user was not looping.

* regarding the first issue, i can see/agree that this is useful behavior AS OPTION, but i would think that the desired behavior would be that the notes last as long as they are played and end as such, rather than assuming that additional noteons are desired.

Quote:
Originally Posted by snooks
[the] general bug here is that when notes like these exist, extending the unlooped item extends the note indefinitely. That's definitely not what was recorded, so it's defo a bug. Scripts not being able to do anything with these notes is just another symptom of the issue.

I think not recording the notes at the beginning of the loop and leaving the ends of the notes beyond the item boundary would be the way forward too.

The only thing that sets the end position of the note correctly is touching the note in the MIDI editor, you don't need to move it. Trying to 'touch' the note via a script doesn't work, it deletes the notes.

Calling MIDI_Sort also deletes the notes, maybe because it does that with invalid notes. Unless there's anything anyone can think about I think the solution lies with the devs perhaps making MIDI_Sort check for end positions of 0 PPQ for notes that start after that time and doing whatever the MIDI editor does when you touch one of the notes.
here is a another gif showing the issue as it pertains to snooks' "Drum Machine Edit" script. in this script, users are able to selectively delete notes by triggering the script, holding the notes they want to delete, and then turning off the script to return to normal operations. these "end-before-they-start" notes confuse the script and make it hard if not impossible to use when loop recording. see that the last notes are never deleted, because they have no known noteoff. big problem.



thank you for your time
the crab
__________________
mccrabney scripts: MIDI edits from the Arrange screen ala jjos/MPC sequencer
|sis - - - anacru| isn't what we performed: pls no extra noteons in loop recording
| - - - - - anacru|sis <==this is what we actually performed.

Last edited by mccrabney; 09-18-2016 at 10:39 AM.
mccrabney is online now   Reply With Quote
 

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 05:29 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.