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

Reply
 
Thread Tools Display Modes
Old 02-02-2017, 09:35 AM   #1
Fergler
Human being with feelings
 
Fergler's Avatar
 
Join Date: Jan 2014
Posts: 3,608
Default Definitive demonstration of time/beats/MIDI desync [LiceCap]

Ok, this is a long licecap so if you get lost in it maybe relaunch the new tab so you can start again.

https://i.imgur.com/yV4VA9K.gifv

Each iteration I change both project timebases in order to combine them both for a total of 6 combinations. After that I attempt to insert an 8 bar section of 10/8 where 4/4 was. However, no change should occur at any point beyond this time selection because:

1. I have a tempo marker that starts a new tempo and time signature preventing alteration of the grid from that point on, and;
2. The replacement bars are in 150bpm, which fits 10/8 into 120bpm 4/4 perfectly. They are completely interchangeable tempi. (30 x 4 = 120, 30 x 5 = 150).

As you can see in the Licecap, no combination allows me to make this change without screwing up the MIDI that comes afterwards.

The only thing that allows me to make this change is to set the individual MIDI items to ignore project tempo, which I do at the end to just one of the items. As you can see, it stays put while everything else that I didn't touch gets moved as before. Of course, this is a terrible workaround because it now cannot cross tempo changes or be moved around the project to other tempos.
__________________
Check out my hip-hop, funk-rock band Theatre Crisp

Last edited by Fergler; 02-03-2017 at 09:41 AM.
Fergler is offline   Reply With Quote
Old 02-03-2017, 09:40 AM   #2
Fergler
Human being with feelings
 
Fergler's Avatar
 
Join Date: Jan 2014
Posts: 3,608
Default

Can anyone please confirm, this is a really major bug. Thanks
__________________
Check out my hip-hop, funk-rock band Theatre Crisp
Fergler is offline   Reply With Quote
Old 02-03-2017, 09:56 AM   #3
schwa
Administrator
 
schwa's Avatar
 
Join Date: Mar 2007
Location: NY
Posts: 9,688
Default

I believe what is happening here is:

- MIDI items are always beat-based, regardless of project or track timebase setting. As you note, the workaround is to set the individual MIDI media item to "ignore project tempo, use XXX."

- When changing time signatures, beat-based positions of media items are preserved. When inserting the earlier 10/8 time signature, the MIDI media items remain at the same number of quarter notes from the start of the project -- not the same number of seconds, or bars.

- When inserting time signatures, later time signature change markers remain at the same bar location.

The problem you are seeing is the difference between how media items are handled and how time signature markers are handled, when earlier time signature changes are inserted. A time signature change at bar 35 will remain at bar 35 regardless of time signatures changing earlier in the project. A beat-based media item at bar 35 will end up in a different bar if earlier time signature changes change the total number of beats in a bar.

You could make a reasonable argument that a beat-based item at bar 35 should remain at bar 35 even if the total number of beats occurring before bar 35 changes. I'm not saying one behavior or the other is correct or wrong, I'm just explaining the reasons why the current behavior exists.
schwa is offline   Reply With Quote
Old 02-03-2017, 02:57 PM   #4
Fergler
Human being with feelings
 
Fergler's Avatar
 
Join Date: Jan 2014
Posts: 3,608
Default

There is definitely room for improvement here, I'm not really understanding the benefit of how it works at the moment.
Particularly:

"When inserting the earlier 10/8 time signature, the MIDI media items remain at the same number of quarter notes from the start of the project -- not the same number of seconds, or bars."

What is the point of that? Within a MIDI item, that could matter... but outside of it, in the project arrange, I would expect all items to behave within proportion to each other at all times, audio or MIDI. Reaper should never decide that their sequencing can be shifted asynchronously to other tracks.
__________________
Check out my hip-hop, funk-rock band Theatre Crisp
Fergler is offline   Reply With Quote
Old 02-05-2017, 11:42 AM   #5
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 2,105
Default

Quote:
Originally Posted by Fergler View Post
The only thing that allows me to make this change is to set the individual MIDI items to ignore project tempo, which I do at the end to just one of the items. As you can see, it stays put while everything else that I didn't touch gets moved as before. Of course, this is a terrible workaround because it now cannot cross tempo changes or be moved around the project to other tempos.
Until REAPER gets better MIDI timebase options, the SWS functions SWS/BR: Enable "Ignore project tempo" for selected MIDI items and preserve time position of events (use tempo at item's start), may be helpful. It can be applied to multiple items simultaneously, and also works on items that cross tempo changes.
juliansader is online now   Reply With Quote
Old 02-05-2017, 01:55 PM   #6
Fergler
Human being with feelings
 
Fergler's Avatar
 
Join Date: Jan 2014
Posts: 3,608
Default

Thanks I'll give that a shot and see if it is a useable workaround.
__________________
Check out my hip-hop, funk-rock band Theatre Crisp
Fergler is offline   Reply With Quote
Reply

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 08:40 AM.


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