Jump to content
Corsair Community

iCUE: Macro within a program


fender__

Recommended Posts

Hi,

 

I am using the K95 keyboard (old one with 18G keys)

I am wondering if it is possible to have a macro controlling parameters inside another program.

 

Example:

 

Pressing G1 opens a plugin within a DAW (digital audio workstation).

When I do that manually today within the DAW (Cubase in this case) I need to 1. rightclick on a specific area of the daw so that I get a list with actions

2. leftclick on a action called "instrument chanel"

3. a window pops up, I choose the plugin i want

4. Done.

 

Is this possible to create as a macro?

Is it possible at all to work in a external program like this?

Say if I with a macro want to open microsoft word and inside of word i want to have the "header 1" activated.

 

Thanks! :)

 

And also, is there a iCUE manual? Cannot find one.

 

/Emir

Link to comment
Share on other sites

yes in brief you make a new profile, link it to an exe and then go to actions and then add a new action make it a macro action, create new events (I prefer one at a time as you cannot remote control the record button and it creates many events for mouse moves but you can usually just have a single mouse move and then click event).

 

as you add keys or clicks, make sure you use the keystroke not press as it is easy to muck that up and have it held down permanently.

 

Let us know how you make out, but def review the inheritance guides first as they are quite good.

Link to comment
Share on other sites

Hi,

 

Okey so I have been studying this advanced program (iCUE) for a couple of days now. And I actually think it is quite easy to understand after a while of trial and error :)

 

So, I have had som luck with some shortcuts I wanted to create and less luck with some other.

 

For example: I used a combination of mouse movements and keyboard typings for one macro. But the problem is that a window that opens is not in fixed position. It moves depending on what project I am working on. And it seems like there is no fixed location for new projects I start. In order for you to easier understand, please look at the attached picture.

 

So my macro opens up the smal window and then I use mouse movement to choose "instrument" and then mouse movement aggain down to massive, and here I can use different plugins so I have several macros that do the same thing but changes the type of plugin. So if this window moved I just simply can not press for example Instrument and hover down to "massive".

 

Hope you guys understand? Otherwise I'll try to explain better :)

keyboard.thumb.PNG.8370d0caefa5a837be94630975fdd9ab.PNG

macros.thumb.PNG.f8e9473741e8380fc114f7e7f9529f76.PNG

Profile.PNG.bd5da3aa62179343691b4c0aa63702a6.PNG

Link to comment
Share on other sites

So honestly there are reasonable limitations of the software, and there may be no easy way to control the position of your sub window.

 

There are a couple work a rounds available. You can use autohotkey and that's probably your best bet, but alternatively (perhaps) Ultramon or other software could hotkey a window maximize event and then maybe your sub menus would be forced into the right place or a more consistent place. I do that some times, but not always.

 

You're best bet for consistent functionality is to use a bmp in autohotkey and use the ImageSearch function. Some of my example code is below. You need to download and install the latest AHK version 1 (AHKL but whatever the newest release is that isnt version 2). Then you'd copy and save my code and edit it.

 

SysGet, Mon1, Monitor, 1

if(numMonitors = 1 && Mon1Right = 1920)

{

;assume a 1080p setup

maxWidth := 1920

maxHeight := 1080

}

else if(numMonitors = 1 && Mon1Right>1920)

{

;what if this was 4k

maxWidth := 3840

maxHeight := 2160

}

else if(numMonitors = 2)

{

SysGet, Mon1, Monitor, 1

SysGet, Mon2, Monitor, 2

if(Mon1Right > 1920 || Mon2Right > 1920) {

;must be fourk

maxWidth:=Mon1Right+Mon2Right

maxHieght:=Mon1Bottom+Mon2Bottom

;maybe i am not thinking of a negative area here?

}

else {

;assume a double 1080p setup initially

maxWidth := 3840

maxHeight := 1080

}

}

else if(numMonitors = 3)

{

SysGet, Mon1, Monitor, 1

SysGet, Mon2, Monitor, 2

SysGet, Mon2, Monitor, 3

if(Mon1Right > 1920 || Mon2Right > 1920 || Mon3Right > 1920) {

;must be four k

maxWidth:=Mon1Right+Mon2Right+Mon3Right

;maxWidth := 3840

maxHieght:=Mon1Bottom ;+Mon2Bottom+Mon3Bottom ;what am i an idiot

MsgBox we are here the three monitor scenario

}

else {

;assume a tripe 1080p setup initially

MsgBox Look at this part of the script...are we at the office?

maxWidth := 5760

;was causing work issues

;maxWidth := 3840

maxHeight := 1080

}

}

else

{

}

;MsgBox, there are this many monitors: %numMonitors% and the maxWidth is: %maxWidth% and the maxHeight is: %maxHeight%

findArbitraryBMP(bmpFileName){

FoundPosArray := new xyPos

CoordMode Screen

ImageSearch, FoundX, FoundY, 0,0, %maxWidth%, %maxHeight%, %bmpFileName%

;MsgBox %maxWidth%, %maxHeight%, %bmpFileName%

if (ErrorLevel = 2) {

;MsgBox "Couldn't"

FoundPosArray.xPos := -1

FoundPosArray.yPos := -1

}

else if (ErrorLevel = 1) {

CoordMode Screen

ImageSearch, FoundX, FoundY, 0,0, %maxWidth%, %maxHeight%, %bmpFileName%

if (ErrorLevel>=1) {

;MsgBox "Couldn't find the image onscreen"

FoundPosArray.xPos := -1

FoundPosArray.yPos := -1

}

else {

;Click %FoundX%,%FoundY%

FoundPosArray.xPos := FoundX

FoundPosArray.yPos := FoundY

return FoundPosArray

}

}

else {

;Click %FoundX%,%FoundY%

FoundPosArray.xPos := FoundX

FoundPosArray.yPos := FoundY

return FoundPosArray

}

}

^h::

FoundPosArray:=findArbitraryBMP("c:\tmp\enhance scans.bmp")

Sleep 80

xtoclick:=FoundPosArray.xPos + 5

ytoclick:=FoundPosArray.yPos + 5

Click %xtoclick%, %ytoclick%

return

 

in this example, control and the h key will find the starting position of a bmp (bitmap) file from the top left. assuming it is found, it adds five to the x and y coordinates and then clicks there. You are going to need to screencap, crop and save out a bmp file with no compression (just paste the printscreen into mspaint should work fine as with its crop tool).

 

th en you can experiment with offsets that may be required and if you like, add the ctrl h event in your macro and it should trigger. Alternatively you can just use Autohotkey for these types of macros where they need to be decision making, AHK and cue play nice together.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...