MIDI Reverse doesn't work correctly.

Overview: Using MIDI > Functions > Reverse on a MIDI track does not work as expected.

Repro:

  1. Create a MIDI or Instrument track
  2. Create a part on that track, put in some MIDI data
  3. Use MIDI > Functions > Reverse

Expected outcome: The MIDI part should be reversed, with the notes happening in reverse order, as a reverse of the original part, as you would do a retrograde. Where the original melody does not overlap notes, the new one shouldn’t. Where rests are present, their length should be preserved.

Current outcome: The MIDI part’s notes are placed in an unpredictable reversal of the original part. Where notes previously were not overlapping, they may do. The rhythm of the part is not preserved, nor is the note order.

Screenshots: Input Data
reverse-1.png
Current Output Data
reverse-2.png
Desired Output Data.
reverse-3.png
This is quick and easy to test, and it surely can’t be hard to fix. I can’t even think of what this is supposed to do at present, other than make a mess of a simple job! Having to explain that Reverse doesn’t work to every student I have is a bit tedious to say the least, plus of course having to reverse MIDI data manually whenever I want to do something like this, which is fairly often.

Hi,

now I am curious whether this is confirmed as a bug. The critical thing is the ASSUMPTION of how it should work (expected result). “Note Offs become Note Ons and vice versa”.


One could easily have a DIFFERENT expectation, like. e.g.

“Note Ons stay where they are and the Note Offs are mirrored with the note-on-position as the axis”

This would explain the not-preserving of stops and creation of overlaps, etc.

Now I am curious.

Ernst

Hi,

Yes, unfortunately, Reverse isn’t the only one functions, which doesn’t work well. Double Tempo, and Half Tempo moves all notes left or right. :cry: Logic makes the same issue, just the Digital Performer can do this right, as I know.

Best,

Are you a lawyer, Ernst? :wink:

I think it’s obvious how the Reverse function should work, and I can’t see a musical reason for the way it currently does - it’s useless, as if it was made by someone who never used Cubase for actually making music… now, I wonder… :laughing:

Either way, I would appreciate it if the behaviour was actually confirmed on here, although obviously I’ve seen it on many machines, on many versions of Cubase.

:confused: Yeah, that makes no sense

Hello,

Hi there,

I think there is a misunderstanding how the Reverse function is supposed to work. It does not work in a way of mirroring the events (“optical reverse”). When you perform an optical reverse, the musical result is wrong, if the length of the notes is not quantized. We had complaints, that the output would not sound in time on a optical reverse. (NoteOff-position becomes NoteOn-position). So we use the start-position of the last note as an “anchor” and only reverse the start-positions of the rest of the notes. This gives the best musical result.

Cheers,

Chris

I’m sorry, but if Mr. D thinks that gives “the best musical result”, then he’s either tone deaf, or just deaf! It doesn’t work well, no matter how you try to frame it. It’s not useful to have a tool that requires you make the lengths all the same to allow it to be used - you then have to go back through the part to alter them again, which can make it as laborious as doing it manually anyway. Sibelius manages to do this without issues, and I can’t see a good reason why Cubase shouldn’t either. It looks to me to be another case of “We’ve programmed it this way, and that’s how it -should- be”, despite it making what could be a useful musical tool into a mess.

Obviously if you didn’t quantize off messages then reversing them would mean there would be timing issues, but to “solve” the problem by making the function next to useless isn’t the right way to fix it, IMO. A much better way would be to offer an options dialogue box which would give the option of either reversing it and ignoring the note off issues, or to make the part legato before doing so, thereby avoiding the issue, and providing a quick, simple way to do it.

Puts it perfectly, IMO.

If you want a musical result then in my experience it’s always best to play the music and not trust any machine. It’s usually a lot faster.
Sometimes it’s best not to put your new mohair suit into that shiny new internet-connected washing machine that told you it needed cleaning and just send it to a specialist cleaner.

It has pretty much always worked that way as have the rest of the early-inspired “toys”. Cubase is really no different to a lot of software and even hardware keyboardds, mixers and so on that all have “features” that most people only use the once (and see that it’s too much like more work) and can get along without.

I’d give yourself a break and forget it.
Could be an idea for Steinberg to look at (the rarity of) usage of old features and maybe do a little streamlining.

I don’t see your logic or the relevance of the analogy.

Retrogrades are a useful way of creating development, hence having been used for hundreds of years. Performing them by an efficient and reliable process done by the computer is a lot quicker and easier than doing so manually, particularly on long passages. In the same way inversions can’t be done by Cubase - if you try to do them with the logical editor it doesn’t work properly (yes, I am trying to keep them in key) - it can only do a semitone-based mirror which doesn’t work when you try to keep it in a given key.

Computers are supposed to make repetitive stuff like this quicker and easier. These and many other things are a piece of cake in Sibelius, but useless in Cubase. While the two are completely different (and I far prefer Cubase), being able to do them in Cubase would be worthwhile. Remember that the music people make is often a function of the facilities available to them, so I think it’s worthwhile for such features to be present and working.

Hi and Hihi :slight_smile:

I am NOT a lawyer and I definitely agree with the standpoint that the midi functions should provide meaningful musical results. There are some standard techniques (musically) to work with motives and these could be supported EASILY by correct algorithms.

My initial reaction was more out of curiosity what “technical” explanation steinberg will give.

I am happy that now the discussion is about “more musical results” :slight_smile:

Cheers, Ernst

Retrogrades are a useful way of creating development, hence having been used for hundreds of years. Performing them by an efficient and reliable process done by the computer is a lot quicker and easier than doing so manually, particularly on long passages

Accepted but some things take more time than others and it’s not always the logical ones that get developed fully.
“Development” is a two edged blade and sometimes it’s best to mix your dough by hand rather than spend two days washing the fangly-new Alldoughperfectbreadmixer which does perfect bread.
And yes, I know what the title says. Some developments are slow coming and how many people reverse “long passages”? I wouldn’t say enough to goad anyone yet into dveloping this feature. Even if SibAbletonLogic does it “properly”.

Talking of score writing, what does the reversed music LOOK like in the score editor? I’ll have a wee peep later.

Never trust a machine to deliver “more musical results” 100% :mrgreen: We’re supposed to do that. We bought the machine to help us do it and not actually do it for us.

Is this being fixed? - the reverse behavior in 6.5 is completely different to that of 5… very frustrating and the new version is completely unusable.

can anyone from steinberg confirm that this issue is being resolved?

cheers

It isn’t. In the Cubase 6.5, it’s exactly the same, as it was in Cubase 5, and previous versions.

You’re right actually Martin, i just checked in 5 - it seems I must have only used reverse with stacatto notes before - it’s when long notes are involved that the difficulty becomes apparent.

i would like to see the ability to reverse a block of midi optically as i think this would be a creative feature - for example if you have a melody line over ong chords, when you reverse using the current reverse implementation, the melody is dissociated from the chords leading to a mess.

I guess not a bug - so this has to be a feature request.

please can we see a proper optical reverse in 6.6

cheers

T

I have the same vision of Reverse.

Unfortunately, this “feature” has really long history. In my experience, Logic do this the same (non-logical) way, as Cubase. Studio One and Pro Tools can’t do this. Digital Performer is the only one, which can do this right way.

Having read the explanation for why the reverse is as it is, I can see the logic. Personally I was expecting an optical reverse and wasn’t happy with what I got. It seems the reverse function does/doesn’t work depending on how exactly you want to use it. As users seem to have two expectations of the function then it makes sense to me to simply have the option of the two reverse definitions and then the user can decide. Clearly people want both, it’s just that they aren’t always the same people.

+1 Let’s go Steinberg!

At least two expectations, probably more but I will add the caveat that under normal compositional and engineering usage that it’s probably not that well used and that is why it has received so little attention. To me it seems more of a detail in that if it wasn’t there I don’t think there would be a desperate call for it.
However it is there and it is worth a mention and a little study at least. It has been there a long time after all.

What a load o’ blather. Look it’s a bug. There are a lot of bugs in various MIDI functions. Just try Delete Doubles or doing a scalar Transpose.

My conclusion is that:
a) 5-8 years ago SB was so frickin’ far ahead of the competition MIDI-wise they focused more on audio and just left these sorts of nigglies around–with best intentions of fixing.

b) more and more people seemed to do audio, or don’t do lots of heavy-duty MIDI so such buglets fell off the radar… which drives those of us who still -do- a lot of tweaking kinda nuts. But what’s to do? They’re a small company and maintaining such a large app is a job + 1/2.

As Ockham might say, always go for the simplest explanation… well, except in Latin of course. :smiley:

And AFA 'conman’s recurrent trolling (play your own notes, problem solved! Boy -that’s relevant. ‘Avoid air crashes: Don’t fly!’), one thing THIS piece of software needs is a ‘hide posts from this user’ feature—which is supported in PhpBB—so I don’t have to wade through that sort of wasteful crap.

(My Emphasis)

I would disagree with this completely. It may be in your experience that it’s not well used, but in my experience it is something that a lot of users (or rather students) want to have that will work quickly. At present that’s not the case - creating a straight retrograde of a melody is not done quickly.

Sibelius does it. Cubase should too.