Logic Pro - Macro Megathread (2022)

I'm not by my mac at the moment, but where is "Set Value"? Can't see it on the screenshot

1 Like

The posted script is one of beta versions, I think using 'set value' script is gone as I clean the clipboards up.

Do you think set value would help it?

I think it goes like this:

tell application "System Events"
   tell process "Logic Pro"
      
      set marker_window to title of first window whose title contains "- Marker List"
      
      click menu button 1 of group 1 of group 1 of window marker_window
      click menu item "Select All" of menu 1 of group 1 of group 1 of window marker_window
      
      click menu button 3 of group 1 of group 1 of window marker_window
      
      set value of menu item 1 of menu 1 of group 1 of group 1 of window marker_window to 1
      
   end tell
end tell

Assuming both options are unchecked when the macro runs, this will check them, using keystrokes:

tell application "System Events"
	tell process "Logic Pro"
		
		set marker_window to title of first window whose title contains "- Marker List"
		
		click menu button 1 of group 1 of group 1 of window marker_window
		click menu item "Select All" of menu 1 of group 1 of group 1 of window marker_window
		
		click menu button 3 of group 1 of group 1 of window marker_window
		key code 125 --down arrow
		key code 36 -- Enter key
		click menu button 3 of group 1 of group 1 of window marker_window
		key code 125
		key code 125
		key code 36
	end tell
end tell

This will do it depending on whether each item is checked:

tell application "System Events"
	tell process "Logic Pro"
		
		set marker_window to title of first window whose title contains "- Marker List"
		
		click menu button 1 of group 1 of group 1 of window marker_window
		click menu item "Select All" of menu 1 of group 1 of group 1 of window marker_window
		
		click menu button 3 of group 1 of group 1 of window marker_window
		
		if value of attribute "AXMenuItemMarkChar" of menu item "Show Event Position and Length as Time" of menu 1 of group 1 of group 1 of window marker_window is "✓" then
		else
			click menu item "Show Event Position and Length as Time" of menu 1 of group 1 of group 1 of window marker_window
		end if

		click menu button 3 of group 1 of group 1 of window marker_window

		if value of attribute "AXMenuItemMarkChar" of menu item "Length as Absolute Position" of menu 1 of group 1 of group 1 of window marker_window is "✓" then
		else
			click menu item "Length as Absolute Position" of menu 1 of group 1 of group 1 of window marker_window
		end if

	end tell
end tell

However, if you're not already aware, you can also set both of these options as key commands in Logic, which is quicker and less visibly obtrusive.

1 Like

I'm seeing a new addition here, Plugin Drill.

Have you effectively built your own version of PlugSearch? If so, I'm curious what prompted you to replace it.

A rudimentary version, yeah.

It was a request; I don't use it myself.

Oh wow didn't got notification (I might be passed during bedtime).

Thanks for the options I applied it to my macros and works smoothly.

Since my macros gotta be applied in co-worker's systems, I intentionally avoid using customized key commands if it's essential (i.g Tap Tempo)

I'm considering to assign KM (or SD) command directly to Logic as a controller commands but it seems much complex than just make script.

Thanks as always.

And check out the new Plugsearch/Gaincontrol that automatically shrinks the region/track inspector windows. It's awesome!

1 Like

Added my own spin on doing fades with a Stream Deck. Hope it's useful!

2 Likes

lol - I just found this post after a few months by searching on "double dip." Thank you for using memorable language!

1 Like

Hi everyone
Just finding out the wonders of Km link + streamdeck, thank you all

Is there a way to have a macro that simply mutes the video, meaning, that activates the mute function in the video settings of Logic pro? so I can parse this to my stream deck and be abble to mute a video whithout opening the video settings? in Logic 9 this function was permantent (permanent mute if wanted) and with Logic X it's always unmuted unless I import the audio from the movie, that I dont want.
thank you

Hi and welcome to the forum! :wave:t3:

Sorry for the delay in response; I've been away for a week.

Is this what you're looking for? You can assign a hotkey and trigger it via the SD.

1 Like

Thank you very much.

I did actually found out a simple "open menu shortcut+press button action" in keyboard maestro that did the trick.

Can't seem to change your cross fade macro to work as the fade in fade out macro that you created, with a pop up option menu....is it possible to do? pressing the crossfade streamdeck button that opens a box to insert a value that applies the basic crossfade time that was typed in the box (no need to change the type)?

thank you for the help.

You need to use the KM Link SD plugin and put prompt in the parameter field in order for the macro to know you want the prompt to appear.

Thank you. I'll have a go and see what happens.

cheers

Hey Guys,

I just found this software, have anyone tried this?

Auto bouncing is the number 1 reason I started to digging KM, but unfortunately I haven't found a satisfactory way to use auto bouncing tools in Logic Pro.

Cost is not cheap at all (regular cost is more expensive than LPX itself), but it would be priceless if it works stably.

Wanna know how do you guys think?

Have you tried this macro?

Bounce Tracks.kmmacros

Does it do what you want it to and, if not, what would you like it to do?

Hey @noisneil, I've tried your macro of course and I love it.

But several missed things were critical adapting to my projects.
I've also tried to mod your macros but did not worked properly due to my lack of skills.

These things were essential and I tried to achieved.

  1. Queueing multiple tasks for batch export/bounces
    An extreme example of mine had to deliver over 30 songs in 1) stereo ref mixes (on both mp3 and WAV), 2) group stems, 3) individual tracks (dry/wet optional).
    Too extreme case though but anyway, just for setting prompts were consuming time a lot and I wanted save / load presets for batch prompts badly.
    If the batch bounce function can be achieved, wish having 'creating folder by its batch name' too.
    Cubase offers batch function but they put all the batches into a single folder if you don't manually create new folders and specify (wonder why?)

  2. Distinguish Folder/Summing stacks from general tracks.
    It was the biggest reason that decided not to use the macro.
    I use lots of folder stacks to put the tracks in order and to get advantage when bouncing as group stems.
    Macro just bounces the folder stacks same as general inst/audio tracks, so the dummy wav files were created a lot.

If I remember correctly, the moment that you shared the macro was before Logic offered 'Select Folder Stacks Only' menu,
At this point, I guess it would be easier to get which tracks are folder/summing stacks and which are not to be bounced.

  1. Select between Export and Bounce.
    As you might know, There is a significant difference in the amount of time required between Export and Bounce.
    Wished I could have options between them.

  2. Options for prepended numbers.
    It might be tiny stuff but I couldn't customized.
    I don't know the exact term for it but hope the prepended number starts with 01, 02, 03... like this.
    Most softwares imports files 11 after 1 and 21 after 2.

Hope my comment helps

I don't have any more time today so this isn't thoroughly tested, but I've added the following:

  1. The ability to trigger the macro...
  • While a project is open and Logic is at the front (bounces this project only).
  • With one or more projects and/or folders containing projects selected in the Finder (bounces all selected projects as a batch).
  1. The option to bounce a reference mix (.wav) as part of the batch processing. Plugins on the Output Track will be bypassed after the reference mix bounce.

  2. The option to skip Track Stacks. There's no perfect way to determine that the selected track is a Track Stack, so I've resorted to found images.

  3. The option to skip tracks that contain no regions. This could be good enough to account for Track Stacks too, but this depends on whether you have a habit of recording MIDI directly to a track stack track or adding MIDI regions to it in order to easily manipulate region-based automation, so I included both options.

  4. Prepended numbers with 00 formatting, as requested.


Notes on your requests:

I'm not sure if this was just an illustrative example or a request. By wet/dry you mean with/without any processing? That's surely going to vary from project to project. We could do a second bounce pass wherein we bypass all effects plugins for each track, but is that really what you'd want?

This macro (and the previous version) already creates a folder per project bounced. Is that what you mean?

Given that Export All Tracks as Audio Files is built-in to Logic, this could be a separate, far simpler macro. Would you actually need one at all? You'd end up with empty/track stack exports, as you're not going track-by-track.

Make sure to have a good dig through this macro and change any keystroke simulation actions to match your own key commands if necessary. Let me know if you encounter any issues.

Bounce.kmmacros (57 KB)

Macro screenshot

Bounce Tracks (Current Session) (SUB-).kmmacros (158 KB)

Macro Screenshot

The "Bounce" macro is the one to trigger, whether bouncing the current session or one (or more) from the Finder.

@noisneil Wow thank you for putting together such a comprehensive thread for us Logic Pro users!

Im not much of a scriptor, and am looking for some assistance setting up a few Mactros that I believe will change the game for me and hopefully many other users.

Specifically, id like a macro that would import specific tracks and session data from a session template, so that I can import multiple track types, many that may be part of stacks and have plugins engaged on them already.

Is this something you may be able to assist with, or provide some guidance on?

Thank you!

1 Like

Hi! I'm happy to help where I can, but before we go down that road, can I ask what kind of scenario this might be?

Reason I ask is that I already created a macro for loading patches, which is functionally the same as importing a track stack.

Absolutely, and thank you!

My goal is to have a library of audio track types available to import into my session.

As an example, I might have a folder which contains 3 track stacks, each of which contain 4 tracks - all pre color coded, labeled, routed etc, many with disabled plug ins instantiated.

For now I have begun prepping for this by creating a master track list session which contains all of the track types i typically create, but Im told it may be easier to create a session for each track type, rather than having them all stored in one session.

Ill definitely want to apply the same structure to instrument tracks, aux tracks etc, master etc.

Does this answer your question?