Old 07-22-2019, 04:50 PM   #1
Greg Savage
Human being with feelings
 
Join Date: Apr 2016
Posts: 653
Default Reversing MIDI

Is there a way to reverse a MIDI item like you can with audio items? I know this can be done in the midi editor, that's not what I'm looking to do.

Thanks in advance
Greg Savage is offline   Reply With Quote
Old 07-23-2019, 12:52 AM   #2
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 13,333
Default

So how do you want to reverse your midi? Any example?
vitalker is offline   Reply With Quote
Old 07-23-2019, 01:07 AM   #3
Greg Savage
Human being with feelings
 
Join Date: Apr 2016
Posts: 653
Default

Quote:
Originally Posted by tonyburgos View Post
One option is using the Inline MIDI Editor (there's a separate [MIDI Inline Editor] section in the Action List):

1) Open the Item in the MIDI Inline Editor
2) Use a Reverse Action

The audios should look great like that. I hope it serves you friend
Darn, I was hoping to just highlight the event and reversing it exactly like you would an audio clips. Bummer, thanks though
Greg Savage is offline   Reply With Quote
Old 07-23-2019, 04:43 AM   #4
Coachz
Human being with feelings
 
Coachz's Avatar
 
Join Date: Oct 2010
Location: Charleston, SC
Posts: 12,770
Default

Quote:
Originally Posted by Greg Savage View Post
Darn, I was hoping to just highlight the event and reversing it exactly like you would an audio clips. Bummer, thanks though
Yeah an extra double click is brutal
Coachz is offline   Reply With Quote
Old 07-23-2019, 05:15 AM   #5
Phazma
Human being with feelings
 
Join Date: Jun 2019
Posts: 2,872
Default

The fastest way I can think of is as as follows:

- Create keyboard shortcut in 'action list - Section: Main' for the action "Item: Open item inline editors"
- Create a custom action in 'action list - Section: MIDI Inline Editor' that consists of the following 2 actions:
> "Edit: Reverse all events"
> "Close inline editor"
- Assign the same keyboard shortcut that you assigned to the first action also to your custom action.

This way you just have to select the item and double-click the keyboard shortcut and it is reversed.
Phazma is offline   Reply With Quote
Old 07-23-2019, 06:04 AM   #6
Michael AD
Human being with feelings
 
Michael AD's Avatar
 
Join Date: Jul 2017
Location: Hackensack
Posts: 347
Default

Quote:
Originally Posted by Greg Savage View Post
Darn, I was hoping to just highlight the event and reversing it exactly like you would an audio clips. Bummer, thanks though
Are you trying to have a MIDI clip play in reverse and sound like an audio clip playing in reverse?

If so, you would need to record the MIDI playback (playing normally in a forward direction) as a WAV and then play the WAV backward.
Michael AD is offline   Reply With Quote
Old 07-23-2019, 08:50 AM   #7
Greg Savage
Human being with feelings
 
Join Date: Apr 2016
Posts: 653
Default

Quote:
Originally Posted by Coachz View Post
Yeah an extra double click is brutal
It's more than a double click actually and it should work exactly how it works with the audio. Highlight and reverse its a basic feature every linear daw has

Quote:
Originally Posted by tonyburgos View Post
One option is using the Inline MIDI Editor (there's a separate [MIDI Inline Editor] section in the Action List):

1) Open the Item in the MIDI Inline Editor
2) Use a Reverse Action

The audios should look great like that. I hope it serves you friend
The reverse action stays greyed out for some reason

Last edited by Greg Savage; 07-23-2019 at 09:08 AM.
Greg Savage is offline   Reply With Quote
Old 07-23-2019, 12:08 PM   #8
Michael AD
Human being with feelings
 
Michael AD's Avatar
 
Join Date: Jul 2017
Location: Hackensack
Posts: 347
Default

Quote:
Originally Posted by Greg Savage View Post
It's more than a double click actually and it should work exactly how it works with the audio.
Reverse audio would mean that that the end of each note would occur first, then it's sustain, then it's attack sound.

Reverse MIDI would mean that the order of the notes would be reversed, but each note would have it's normal attack, sustain and release in their natural order.
Michael AD is offline   Reply With Quote
Old 07-23-2019, 12:53 PM   #9
Greg Savage
Human being with feelings
 
Join Date: Apr 2016
Posts: 653
Default

Quote:
Originally Posted by Michael AD View Post
Reverse audio would mean that that the end of each note would occur first, then it's sustain, then it's attack sound.

Reverse MIDI would mean that the order of the notes would be reversed, but each note would have it's normal attack, sustain and release in their natural order.
I'm aware of what it is, I'm interested in performing the same action on the midi item like i can on the audio item. I want to be able to click the item or highlight the item and hit 1 command to reverse its contents just like you can with an audio item

Last edited by Greg Savage; 07-23-2019 at 01:13 PM.
Greg Savage is offline   Reply With Quote
Old 11-07-2022, 08:56 PM   #10
abnegative
Human being with feelings
 
Join Date: Sep 2022
Posts: 222
Default Solution

Quote:
Originally Posted by Greg Savage View Post
I'm aware of what it is, I'm interested in performing the same action on the midi item like i can on the audio item. I want to be able to click the item or highlight the item and hit 1 command to reverse its contents just like you can with an audio item
This .eel script will do exactly what you're asking for; you can import the script as a custom action and then add it to the Media Item context menu so that it's just as accessible as the Audio Item reverse action:


selected_midi_item = GetSelectedMediaItem(0, 0); // Get Selected MIDI Item
Main_OnCommand(40153, 0); // Open MIDI editor
MIDIEditor_OnCommand(MIDIEditor_GetActive(), 40019); // Reverse MIDI
MIDIEditor_OnCommand(MIDIEditor_GetActive(), 2); // Close MIDI editor

//////////////////////////////////////////////////////////////////////
// Edit: Alternative method accounting for empty space
/////////////////////////////////////////////////////////////////////

selected_midi_item = GetSelectedMediaItem(0, 0); // Get Selected MIDI Item
Main_OnCommand(40290, 0); // Set Time Selection to MIDI Item
Main_OnCommand(40153, 0); // Open MIDI editor
MIDIEditor_OnCommand(MIDIEditor_GetActive(), 40006); // Select All Events (including space)
MIDIEditor_OnCommand(MIDIEditor_GetActive(), 40904); // Reverse MIDI (including space)
MIDIEditor_OnCommand(MIDIEditor_GetActive(), 2); // Close MIDI editor

Attached Images
File Type: gif reverse_midi.gif (254.7 KB, 429 views)
Attached Files
File Type: zip reverse_midi.zip (276 Bytes, 39 views)

Last edited by abnegative; 11-08-2022 at 04:32 AM. Reason: Add visual; Provide alternative
abnegative 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 02:15 AM.


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