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

Reply
 
Thread Tools Display Modes
Old 02-01-2013, 08:13 AM   #1
MrJones
Human being with feelings
 
Join Date: Sep 2011
Posts: 203
Default MIDI item start/end loop segment change is, by user mistake, easily bugged (FIXED)

Bug tracker link: http://forum.cockos.com/project.php?issueid=4860

There is some really nasty issue which I encountered throughout all my REAPER time, which I mostly managed to avoid, but once you run into it, it is pretty much impossible to get rid off without _renotating the whole track_ (if you copied one item without noticing it suffered from this and now all your items are screwed up). And yes, that has just happened to me again.

Basically it is more of a design problem the way REAPER calculates how the grey bars move around when you drag one of them than a code bug.

Triggering the bug:
What happens is, at some point you might want to change the start of your looped segment and you will move both the grey loop bars around, and also the visible beginning of the segment in the midi editor. As soon as you end up with the visible beginning being at _another_ grey loop bar (of which you got an infinite amount, always when your segment repeats) than the one particular bar where your segment originally began when you constructed it, you're in big trouble.

I also thought this could be triggered by simply moving things around but so far I couldn't reproduce it - but it might be because I did many time changes in old projects which often seems to move items slightly around due to some accuracy problems I suppose, and then shifting/resizing things back into place might have caused me to trigger this.

What happens:
Now see what happens if you ever plan to modify the loop start/end of an affected item ever again:

BEFORE DRAGGING OF LEFT START BAR:


AFTER DRAGGING OF LEFT START BAR:


I highlighted the amount I dragged the left bar to the right, also the amount the *right* bar has now gone further to the right. Now there are two problems with that:

- I cannot move the start of the item without changing its length. If my start isn't on the exact beginning of the bar, and I want to move it back, then the right end moves around weirdly. That isn't very intuitive and also useless, since if I wanted to change the length of the looped segment, I could simply drag the right grey bar afterwards. Anyway, it wouldn't be so bad if I could simply drag the right bar now to correct the length...
- ... but now, moving the right end will cause the left end to move aswell! The mess is complete: moving the left bar will change item length (= item too long/too short), moving the right bar again will screw up the starting point.

And worst of all, the only way to fix this I know of is either: a) find the original place of the original leftmost draggable loop bar again, and move the original bar exactly there (at least I think that would work in theory). That is just somewhat impossible because you need to find both the exact right bar, and then the exact right place (imagine you have moved that bar away from it!). Or you can also b) recreate the whole item (or all items affected if it's more than one, e.g. the whole track).

How things should actually work:
Moving the leftmost *visible* grey bar should ONLY alter the loop segment start, not the length.
Moving the second-to-left grey bar (or any further right bars) should NOT move the leftmost bar around EVER, also not when the left bar is in another place than it originally was in.

How can this be done?
Technical solution: pick the leftmost grey bar that is *visible* in the current segment (at the point in time where I click on any grey bar and start dragging) as the leftmost non-affected-by-any-righter-bars-moved bar/fix point. Visible bar also means a grey bar that is exactly at the start of the visible midi segment, so maybe just not actually visible, but part of the visible area of the midi editor.
DON'T pick the grey bar that was at some point the leftmost one at item creation and stick to it, as it appears to be done right now.
And then, additionally don't change the segment length if I drag that "fix point leftmost bar" around, only if I pick any others not at the start of the visible area.

Please implement/fix this! It's really a mess right now as soon as you run into this.
Attached Images
File Type: jpg before.jpg (47.1 KB, 1420 views)
File Type: jpg after.jpg (47.5 KB, 1409 views)

Last edited by MrJones; 09-27-2013 at 08:25 PM.
MrJones is offline   Reply With Quote
Old 06-27-2013, 03:01 PM   #2
MrJones
Human being with feelings
 
Join Date: Sep 2011
Posts: 203
Default

Just to make this more clear since I kinda fuzzled around on how to run into this (since there are many ways, but of course you'd want a single one to reproduce):

Reproducing it is pretty trivial, open up any midi item in the midi editor, then drag the left item start pane (NOT the grey bar which represents the segment/source loop) and drag it so that the SECOND grey bar ends up being at the item start.

Now try to forget you did that (that can legitimately happen), and reopen the midi item in the editor later and try to adjust its length and get crazy as its start grey bar starts moving around every time you just want to change the length of the looped source!

I think simply moving the midi items around in the regular track overview can somehow end up with the same result (I haven't tried because it's not really that relevant - as long as the behaviour in this situation is properly fixed, there is no reason to care which other ways lead into this situation), which is what makes this more of an issue (since then you can run into it even if you take care not to change the segment start).

The problem I see here is not that the grey start bar might end up no longer being the start bar, but the totally nonsensical way REAPER behaves as soon as that happened which pretty much ruins the affected items (since why should it even make any difference? who cares which grey bar was the original starting point - there isn't even any visual indication which one it was)

Last edited by MrJones; 09-27-2013 at 08:27 PM.
MrJones is offline   Reply With Quote
Old 06-27-2013, 03:20 PM   #3
MrJones
Human being with feelings
 
Join Date: Sep 2011
Posts: 203
Default

Ok just to make it super clear, let's add some licecap:

How things work normally (and nicely):


What happens if you accidentially manage to get another grey bar at your item start (which you might totally not notice! they all look the same)


And the behaviour should always look as in the upper picture, since the lower behaviour just makes no sense (maybe in a technical internal way, but not in a way that is usable in a meaningful way)
Attached Images
File Type: gif good.gif (61.3 KB, 1381 views)
File Type: gif bad.gif (49.4 KB, 1413 views)
MrJones is offline   Reply With Quote
Old 07-01-2013, 12:11 PM   #4
MrJones
Human being with feelings
 
Join Date: Sep 2011
Posts: 203
Default

Since my bug report was closed and I'm not sure why (was it too hard to understand? I could attempt a rewrite with nicer pictures and clearer reproduce instructions) - what should I be doing at this point? Wait a while for people to comment here? (the thread isn't exactly new) Refile the bug?

Last edited by MrJones; 07-01-2013 at 12:18 PM.
MrJones is offline   Reply With Quote
Old 09-25-2013, 03:41 PM   #5
MrJones
Human being with feelings
 
Join Date: Sep 2011
Posts: 203
Default

I don't mean to be rude, but as a honest question: how many months should I be waiting for a response? Just any sort of feedback or possible acknowledgment of this would be nice. Or if I am ever allowed to file this as an issue ticket!

Edit: and yes, I am a paying customer of REAPER, and also I'd like to add I am a bit disappointed how this is currently being handled. I might not have described it perfectly in the first place, but hey, I'm not a professional bug reporter, and I'm trying to improve it... now just any response would be nice. (I hope I'm allowed to add this here as a personal note)
MrJones is offline   Reply With Quote
Old 11-03-2013, 11:31 AM   #6
IXix
Human being with feelings
 
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,184
Default

I'm trying to reproduce this but I can't get it to happen. Perhaps you could post a project with step by step instructions for how to reproduce the bad behaviour?

What version of REAPER are you using? The MIDI editor had a big overhaul recently.
IXix is offline   Reply With Quote
Old 11-03-2013, 11:44 AM   #7
IXix
Human being with feelings
 
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,184
Default

I think I understand what you're talking about now. I'm not sure it's really a bug, although I can see how it could screw you up.

If the item "start in source" is non-zero and you change the length of the source, it stands to reason that the item start position will be affected. What would you suggest be done to improve the behaviour?
IXix is offline   Reply With Quote
Old 11-03-2013, 11:57 AM   #8
IXix
Human being with feelings
 
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,184
Default

Quote:
Originally Posted by IXix View Post
If the item "start in source" is non-zero and you change the length of the source, it stands to reason that the item start position will be affected.
Actually I'm not sure about that now. It's confusing.
IXix is offline   Reply With Quote
Old 11-03-2013, 12:06 PM   #9
MrJones
Human being with feelings
 
Join Date: Sep 2011
Posts: 203
Default

It is not a bug in terms of programing but pretty certainly a bug in design. It's just implemented in a way that doesn't make much sense:

Upper licecap is what happens if "Start in source" is set to zero, lower licecap is what happens if "Start in source" is a multiple of the source length:
http://forum.cockos.com/showpost.php...73&postcount=3

If it's a multiple, it LOOKS as if everything was fine and normal, until you attempt to resize.

The reason is that REAPER takes the start in the source as a "fixed point" of the resize, no matter if the start of the source is actually the leftmost grey bar (which it normally is), or if it isn't (in that case the lower licecap behaviour happens).

If REAPER just took whatever is represented by the leftmost grey bar (which is the lowest multiple of source length that is equal or just right after the midi item start) as a "fixed point" during resize, things would always work as expected even if the "Start in source" accidentially becomes a multiple of the source length - which really isn't a bad thing and doesn't affect anything, except this weird behaviour.

With simply resizing and moving midi items around, it is possible to accidentially end up with "Start in source" being a multiple of source length without realizing it. Happened to me quite often in the past. Then this current behaviour really bites you.
MrJones is offline   Reply With Quote
Old 11-03-2013, 12:19 PM   #10
IXix
Human being with feelings
 
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,184
Default

I do think that it is a bug that the "start in source" value can be greater than the length of the source. I can create a MIDI item 8:00 long and set the start offset to 16:00. I can't see why that should be allowed.
IXix is offline   Reply With Quote
Old 11-03-2013, 03:22 PM   #11
MrJones
Human being with feelings
 
Join Date: Sep 2011
Posts: 203
Default

Yea that would also solve it. Simply clamp the source start to the source length, problem gone.
MrJones is offline   Reply With Quote
Old 11-07-2013, 08:05 AM   #12
schwa
Administrator
 
schwa's Avatar
 
Join Date: Mar 2007
Location: NY
Posts: 9,194
Default

Sorry for the trouble. The source media offset should never be allowed to be less than zero, or equal to or greater than the source media length. It is a bug that those conditions ever occur. We should be able to fix this shortly.
schwa is offline   Reply With Quote
Old 11-07-2013, 08:20 AM   #13
schwa
Administrator
 
schwa's Avatar
 
Join Date: Mar 2007
Location: NY
Posts: 9,194
Default

To confirm, I believe this bug only occurs when editing the left edge of the media item via the MIDI editor. The same edit in the arrange view behaves properly. Do you agree?
schwa is offline   Reply With Quote
Old 11-07-2013, 10:55 AM   #14
schwa
Administrator
 
schwa's Avatar
 
Join Date: Mar 2007
Location: NY
Posts: 9,194
Default

The latest prerelease version of REAPER may solve this problem:
http://forum.cockos.com/showthread.php?t=130943
schwa is offline   Reply With Quote
Old 11-07-2013, 02:12 PM   #15
IXix
Human being with feelings
 
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,184
Default

Quote:
Originally Posted by schwa View Post
The latest prerelease version of REAPER may solve this problem:
http://forum.cockos.com/showthread.php?t=130943
Yes, it makes much more sense now.

edit: but I can still enter bad values for "start in source" in the item properties dialog. This is deliberate abuse of course but still...
IXix is offline   Reply With Quote
Old 11-17-2013, 04:52 PM   #16
MrJones
Human being with feelings
 
Join Date: Sep 2011
Posts: 203
Default

I just tested it in 4.57, I can no longer reproduce the problem by resizing in the midi editor. Works perfectly! Thanks a lot for fixing this.
MrJones is offline   Reply With Quote
Old 12-19-2013, 05:36 AM   #17
truthsurge
Human being with feelings
 
Join Date: Aug 2010
Posts: 22
Default This bug is not fixed. i have 4.58 and still it's there

You drag the right gray bar... it starts MOVING your MIDI items so that you can never extend the length of the MIDI area to add more time.

When is this actually going to be fixed?

Thanks
TS
truthsurge is offline   Reply With Quote
Old 12-19-2013, 12:39 PM   #18
gofer
-blänk-
 
gofer's Avatar
 
Join Date: Jun 2008
Posts: 10,998
Default

Works here, can you give some more details?


(the second part, after I extend the left item border, is where the bug discussed in this thread used to creep in. That bug is properly fixed, as far as I can tell)


Ah, wait, maybe this helps:

As a rule of thumb, if you want to tweak MIDI loop source length in Reaper, it's best to always tweak the border of the first (complete) loop iteration.

Last edited by gofer; 12-19-2013 at 12:54 PM.
gofer 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:22 PM.


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