# CodeUltra Custom Logic Pro X Midi Transforms Kit: Set MIDI length by key shortcut! (+ 30 More)



## S.M Hassani (Aug 5, 2018)

*See **Latest Version Here*​
After reading this discussion:

https://vi-control.net/community/th...atures-new-to-a-logic-x-composer.73793/page-2

I decided to render a little service to the VIC/LPX community. 

Here's a Logic Pro 10.3.3 Project with my own Midi Transform settings (Attached) (New V2 ones from blue line down)






You can use the Import Settings function to load them into your other projects. You can also make this file a template and go from there. I left some midi notes in there for you to test the functionality.

Make sure you assign them to your choice of key commands so you can apply them instantly within your workflow. I've indicated my shortcuts below.

Do see the included videos.






And The Transforms are: (NEW V2 Transforms in Blue)

*Expand Notes:* This command will space selected notes away from each other evenly, while maintaining their length (Unlike the default trim functions) It's an excellent tool if you happen to scale a linear group of notes so much they overlap. (e.g using the Alt+Shift+Mouse drag edge or Arrow keys)

*Collapse Notes:* The opposite of the above command.

I use these key commands: Alt+Command+. (or the > key) to expand | Alt+Command+, (or the < key) to collapse

*Length = 1/xx*: Yes this will finally give you the ability to set note length by rapid key command!
Available in these sizes: 1/1 - 1/2 - 1/4 - 1/8 - 1/16 - 1/32

I use these key commands: Alt+Command+1 = 1/1 | +2=1/2 | +4=1/4 | +5=1/8 | +6=1/16 | +7=1/32

*Duplicate 3rd Up:* Duplicates your notes a Major 3rd Up or 4 semitones in one keystroke!
*Duplicate 5th Up:* Duplicates them a Major 5th Up or 7 semitones
*Duplicate Octave Up:* Duplicates them an octave Up or 12 semitones

I use these key commands: Alt+Command+F12 and F13,F14 respectively (Still using the good ol' extended keyboard)

Some Theory:

Use these shortcuts to form the following chords:

Maj 7th: Add a 5th over the 3rd (using Alt+Command+F13)
Dominant 7: Drop the result from above 1 semitone
9th: Add a 5th over your 5th
Augmented Chords: add a 3rd over your 3rd (No 5th)

(The above assumes you have a full triad)

*Double Note Length:* Doubles all selected notes in length (My Shortcut: Alt+Cmd+2)

*Half Note Length:* Reduces all selected notes to half length (My Shortcut: Ctl+Alt+2)

*Add Half Note Length:* Adds %50 of current length to all selected notes. (i.e notes grow to %150 current length) (My Shortcut: Alt+Cmd+3)






*Remove 1/3 Length:* Opposite of above, but not 100% accurate (reduces to 0.6666 of current). Use the provided Set Length commands to quantize length if needed. (My Shortcut: Ctl+Alt+3)

*Duplicate +1 Beat:* Duplicates 1/4 notes and shifts the resulting copies to the next beat. (My Shortcut: Alt+F13)






*Duplicate In Place:* Duplicates an event over itself. Useful for quickly adding notes to chord stacks without using the mouse. (My Shortcut: Alt+F14)

*VFilp CC Data:* Takes a selection of CC data and flips if vertically in one keystroke. Useful to repurpose played in automation.

Aside from this I also use these key commands:

To set my *Grid Division* units: Shift+1 = Lower | +2 = Higher | +4 =1/4 | +5=1/8 | +6=1/16 | +7=1/32 | +8=1/64
To set my *Grid Snap to Smart*: CMD+ALT+` (or ~ Key)
To set my *Grid Snap to Division*: CMD+ALT+SHIFT+` (or ~ Key)
To toggle between *Relative and Absolute Snap* modes: CMD+ALT+/ (or ? Key)

Hoping this helps make the Logic Pro X experience better for everyone.

Enjoy!

IMPORTANT: Use this file at your own risk. Do not test it on important/sensitive project files unless you are 100% sure it works for you. I will not be held liable or accountable for any loss or damages of any kind to any party.


----------



## S.M Hassani (Aug 5, 2018)

You can assign the Midi Transform keyboard shortcuts from the panel above which can be accessed using the Alt+K shortcut.

Search for "Transform" as indicated in the screenshot.


----------



## nordicguy (Aug 5, 2018)

Many thanks for sharing!


----------



## Alex Fraser (Aug 5, 2018)

Thanks so much for sharing!
Best A


----------



## anp27 (Aug 5, 2018)

S.M Hassani said:


> *Expand Notes:* This command will space selected notes away from each other evenly, while maintaining their length (Unlike the default trim functions) It's an excellent tool if you happen to scale a linear group of notes so much they overlap. (e.g using the Alt+Shift+Mouse drag edge or Arrow keys)
> 
> *Collapse Notes:* The opposite of the above command.



I like these two the most, thanks so much for these!


----------



## mc_deli (Aug 7, 2018)

Oh my


----------



## S.M Hassani (Aug 9, 2018)

*V2 Update*: Added even more commands as seen in screenshot (new ones from blue line down)


----------



## anp27 (Aug 9, 2018)

S.M Hassani said:


> *V2 Update*: Added even more commands as seen in screenshot (new ones from blue line down)


Great work! Could you please explain what "Add Half Length", "Remove 1/3rd Length" and "Duplicate +1 Beat" do?


----------



## S.M Hassani (Aug 9, 2018)

anp27 said:


> Great work! Could you please explain what "Add Half Length", "Remove 1/3rd Length" and "Duplicate +1 Beat" do?



Thanks, I've added some GIFs to demonstrate them.


----------



## anp27 (Aug 9, 2018)

S.M Hassani said:


> Thanks, I've added some GIFs to demonstrate them.


Great, thanks again!


----------



## Matt Riley (Aug 17, 2018)

This is genius work! Thank you! I will adding these to my template soon.


----------



## Matt Riley (Aug 17, 2018)

@S.M Hassani do you know if there is a way to select a 3 note chord and have Logic invert it?


----------



## S.M Hassani (Aug 17, 2018)

Hey @Matt Riley

I'm glad you like the presets and thank you for those kind words. Looking into some new ones which I hope to have soon. Chord inversions would be nice but I'll have to dig deeper, as they are not easily done with Transforms.


----------



## Matt Riley (Aug 17, 2018)

S.M Hassani said:


> Hey @Matt Riley
> 
> I'm glad you like the presets and thank you for those kind words. Looking into some new ones which I hope to have soon. Chord inversions would be nice but I'll have to dig deeper, as they are not easily done with Transforms.


Ah, thanks!


----------



## S.M Hassani (Aug 17, 2018)

For now you can use the Alt+Shift+Up/Down Arrow to transpose individual notes a whole octave.

Tip: "Flipping" the 3rd gives you that nice open voicing, often used by the masters on strings and brass.


----------



## Vik (Aug 17, 2018)

Matt Riley said:


> @S.M Hassani do you know if there is a way to select a 3 note chord and have Logic invert it?


If you want key commands for inverting chords, your best bet is to send feedback to Apple, here: https://www.apple.com/feedback/logic-pro.html


----------



## S.M Hassani (Aug 17, 2018)

If you're ever annoyed with Logic's *Playback Functions*, this will allow you to control them better:

1- Set your MIDI chase function like this *to* *hear your midi chords even if you play them from the middle* of the event:










Check the top most "Notes" and "Sustained" buttons as shown. You can also access this panel with the Command+, or (lowercase <) shortcut.

2- Set your playback settings like this to have full control over the playback position. (By default it jumps depending on your selections)





Click and hold the Play button to access this dropdown.

*Now:*

- Pressing the space bar will start playback from exactly where the playhead is. (unless you are in cycle mode, or have a marquee selection)
- Shift+Spacebar will play from the start of your current selection
- Press the 0 key on the keypad to move playhead to the start of your project.
- Press the Shift+Enter key on the keypad to play from the right edge of your piano roll window.
- Use the , and . keys (i.e lowercase < and >) to move play head 1 Bar.
- Adding shift moves the playhead 8 bars.
- I have the § key as my custom shortcut for "Set Rounded Locators and Cycle Play" Which will set a cycle around my selection and start looping it in one keystroke.

Hoping this makes LPX even better for our friends here.

Enjoy

-S.M


----------



## anp27 (Nov 3, 2018)

Have run into a problem. I have over 30 MIDI Transform presets saved in my template now. I know that you can only assign up to 30 of these as key commands. How do you guys deal with this? Having to go through the MIDI Transform menu is a major momentum killer. Would love to hear your thoughts...


----------



## stonzthro (Nov 3, 2018)

I have them assigned to keystrokes, which I trigger via TouchOSC/OSCulator on my iPad. The last update also allows you to assign Select and Process, which really opens things up a little. Not as slick as Cubase's quantization features, but you can do a lot with what we currently have.


----------



## anp27 (Nov 3, 2018)

stonzthro said:


> The last update also allows you to assign Select and Process, which really opens things up a little.



Right, but this is limited to a maximum of 30... I need more than just 30...


----------



## stonzthro (Nov 3, 2018)

anp27 said:


> Right, but this is limited to a maximum of 30... I need more than just 30...



don't we all...

Sorry bud, as of 10.4.2 you're out of luck


----------



## anp27 (Nov 3, 2018)

stonzthro said:


> don't we all...
> 
> Sorry bud, as of 10.4.2 you're out of luck


----------



## jbuhler (Mar 23, 2019)

I stumbled on this old thread while looking for some other things. These are nice and useful midi transform presets! I'm wondering how to rearrange the user presets and/or how to find a list of them so you know what user preset 1, user preset 2, etc in the key commands refers to. When I added a new preset based on one of these, Logic filed it right after the preset I based it on instead of at the end of the list, as when I made one based on a Logic preset. This seems to throw off the key commands. In any case, where does Logic keep these and determine which user preset gets which number?

A second question: can you make a key command for the Logic transform presets? If I'm understanding how all of this works, they don't seem to be one of the numbered user presets.


----------



## S.M Hassani (Apr 30, 2019)

jbuhler said:


> I stumbled on this old thread while looking for some other things. These are nice and useful midi transform presets! I'm wondering how to rearrange the user presets and/or how to find a list of them so you know what user preset 1, user preset 2, etc in the key commands refers to. When I added a new preset based on one of these, Logic filed it right after the preset I based it on instead of at the end of the list, as when I made one based on a Logic preset. This seems to throw off the key commands. In any case, where does Logic keep these and determine which user preset gets which number?
> 
> A second question: can you make a key command for the Logic transform presets? If I'm understanding how all of this works, they don't seem to be one of the numbered user presets.



Hi,

Been very busy, so I'm truly sorry I missed your questions. I'll post a reply soon.


----------



## GdT (Apr 30, 2019)

One that I use all the time, when arranging, is transpose up or down one octave.


----------



## S.M Hassani (May 1, 2019)

jbuhler said:


> I'm wondering how to rearrange the user presets and/or how to find a list of them so you know what user preset 1, user preset 2, etc in the key commands refers to...where does Logic keep these and determine which user preset gets which number?



I don't think there is a way to rearrange or delete them. LPX just adds newly created ones to the end of the list. The shortcuts are assigned in the same listing order as the Functions -> Midi Transforms drop down menu. You can see them there listed by name as I shared here: Transforms List



jbuhler said:


> A second question: can you make a key command for the Logic transform presets? If I'm understanding how all of this works, they don't seem to be one of the numbered user presets.



Non that I could find, but you can assign a shortcut to open the Transform window. (Command-9) is what I use. You can also create user duplicates of the stock functions to quickly access them with KS.

If you have a template running you can import my set from the provided file by following Apple's procedure:

*Import all transform sets from another project*

You can import transform sets from other projects, allowing fast access to a transform preset you created earlier. This function is also useful for adding existing transform sets to new template projects.


Choose File > Project Settings > Import Project Settings (or press Command-I).


Browse to, and select, the project that contains the transform sets you want to import.


Click the Import button.

The project’s tracks are displayed in the All Files Browser.


Click the Import Project Settings button at the bottom of the All Files Browser, then select the Transform Sets checkbox.


Click the Import button.

The names of imported transform sets are retained and added to the bottom of the Presets list.

I hope this helps.


----------



## jbuhler (May 1, 2019)

S.M Hassani said:


> I don't think there is a way to rearrange or delete them. LPX just adds newly created ones to the end of the list. The shortcuts are assigned in the same listing order as the Functions -> Midi Transforms drop down menu. You can see them there listed by name as I shared here:
> 
> HERE
> 
> ...


Thanks for the reply. Very helpful!


----------



## dt2080 (Aug 3, 2019)

S.M Hassani said:


> *V2 Update*: Added even more commands as seen in screenshot (new ones from blue line down)


This is absolutely excellent. Thanks! one Question. If i want to change the key command associated with a transform (eg i want to replicate the rhythm numbers for extended keys as sibelius has them eg 1/2 = 5, 1/4=4 etc, how do i edit them? Many thanks. Best David


----------



## anp27 (Aug 3, 2019)

dt2080 said:


> This is absolutely excellent. Thanks! one Question. If i want to change the key command associated with a transform (eg i want to replicate the rhythm numbers for extended keys as sibelius has them eg 1/2 = 5, 1/4=4 etc, how do i edit them? Many thanks. Best David


You can set the key command to whatever you like actually, you can do that in the Key Commands window.


----------



## dt2080 (Aug 3, 2019)

anp27 said:


> You can set the key command to whatever you like actually, you can do that in the Key Commands window.


Hmm.. it's just that in the key commands window i don't see a key command for this already set, but yours already works. So it seems to be happening "behind the scenes". Am i missing something?


----------



## S.M Hassani (Aug 3, 2019)

Hi there,

It's simple, load the panel I show in this post: (using the Alt+K shortcut)





__





CodeUltra Custom Logic Pro X Midi Transforms Kit: Set MIDI length by key shortcut! (+ 30 More)


See Latest Version Here After reading this discussion: https://vi-control.net/community/threads/top-10-cubase-features-new-to-a-logic-x-composer.73793/page-2 I decided to render a little service to the VIC/LPX community. :cool: Here's a Logic Pro 10.3.3 Project with my own Midi Transform...




vi-control.net





Then simply assign your keyboard shortcuts as you prefer them.

Your shortcut list is currently empty because you don't have any assignments. To make your own, take a look at this image where you'll see the order of my custom transform presets as I saved them in the supplied file:






Now simply go through them one by one and assign your own keyboard shortcuts on the Alt-K menu.

I hope this helps!


----------



## dt2080 (Aug 4, 2019)

Just to say i'm totally using this now. It's awesome. Thanks so much! And by the way... i exported the stuff via XML into sibelius, and even the articulations show up perfectly!


----------



## S.M Hassani (Aug 4, 2019)

Thank you DT2080, I'm truly happy it works so well for you.


----------



## MLP Aarts (Sep 24, 2019)

Great stuff, I'm building a Lemur template with these transform sets, it's going to be awesome.

Minor improvement: I guess for the 'Reduce by half' transform set you used a multiplication by 0,6666 which gives rounding errors. Instead, you can use 'div' by 1.5. This gives you a better result.


----------



## S.M Hassani (Sep 24, 2019)

Thank you for the tip. I'm glad you're finding them so useful.

I will revisit them this evening and make an update.


----------



## S.M Hassani (Oct 27, 2019)

We've been busy:




Now a Free part of Arkeon: Major update with 30 Presets and much more!

Also Available as a standalone product.


----------



## S.M Hassani (Nov 29, 2019)

Available as a FREE part of Arkeon, our Multi-Synth Cinematic Toolkit for Film, Media and Games composers. Read all about it here: CodeUltra Arkeon

Also Available as a standalone product. DM me for details.


----------

