Activity › Forums › Adobe After Effects Expressions › Adjustment Layer on a Grid, controlled by sound keys adjusting Saturation
-
Adjustment Layer on a Grid, controlled by sound keys adjusting Saturation
Posted by Lukasz Pason on March 5, 2010 at 6:13 pmThe grid is actually made up of 14 columns and 4 rows. So 56 individual adjustment layers. That all have a 0-100% Saturation adjustment on them. I want to control the saturation adjustment based on the amplitude of a frequency (Sound Keys). My computer is not liking this at all… Is there another way of doing this that someone might know?
Motion Designer / DJ / Father
http://www.lukaszpason.com
http://www.krop.com/lukaszLukasz Pason replied 16 years, 2 months ago 2 Members · 11 Replies -
11 Replies
-
Dan Ebberts
March 5, 2010 at 8:41 pmHow many Sound Keys outputs are you using to drive the 56 saturation controls?
Dan
-
Lukasz Pason
March 5, 2010 at 8:46 pmActually, I figured it out…
Each Square is linked to a null. The position of the null is driven by an expression that is fed the output of sound keys. The square has an expression that links the the nulls position, if that nulls position is < (x) then the opacity =100, else 0. Now, the comp with grid of squares overlays the rendered out file and then I just change the transfer mode to simulate each individual squares saturation changing to the linked audio file. Was this to crazy? make sense? Motion Designer / DJ / Father http://www.lukaszpason.com
http://www.krop.com/lukasz -
Lukasz Pason
March 5, 2010 at 11:45 pmNow that I figured that one out I tried to make another one that was based off the position X of a null but I cant figure out where I went wrong:
opacityController = thisComp.layer("mover").transform.position[0];if ((opacityController > 0) & (opacityController < 96)) {
100;
}else{ 0; }Motion Designer / DJ / Father
http://www.lukaszpason.com
http://www.krop.com/lukasz -
Dan Ebberts
March 5, 2010 at 11:58 pmIn general, your if statement should be using “&&” instead of “&”, but in this case I don’t think it makes any difference. In what way is it not working the way you expect it to?
Dan
-
Lukasz Pason
March 6, 2010 at 12:03 amThe layer is supposed to show up between 0 and 96. It doesnt work for some reason.I move the null and nothing happens.
Motion Designer / DJ / Father
http://www.lukaszpason.com
http://www.krop.com/lukasz -
Lukasz Pason
March 6, 2010 at 12:15 amLOL!!!
I accidentally turned all of the layers to adjustment layers… That just might do it.
Motion Designer / DJ / Father
http://www.lukaszpason.com
http://www.krop.com/lukasz -
Lukasz Pason
March 6, 2010 at 12:19 amIs there any easier way to copy paste this into the next 50+ layers and set a value that the position is increased by? ie the next layer will be between 96 and 192.
Motion Designer / DJ / Father
http://www.lukaszpason.com
http://www.krop.com/lukasz -
Dan Ebberts
March 6, 2010 at 12:38 amYou could calculate it based on each layer’s position in the stack. This assumes that layer 1 thru n are participating. If that’s not the case, you’d have to add in an offset. Then you could use Edit > Copy Expression Only and paste it into all the other layers.
opacityController = thisComp.layer(“mover”).transform.position[0];
range = 96;
min = (index-1)*range;
max = index*range;if ((opacityController > min) && (opacityController < max)) 100 else 0; Dan
-
Lukasz Pason
March 6, 2010 at 12:44 amThat worked out great except for one thing… I’d like to make two of the squares or more appear at the same time. This does it to one.
Motion Designer / DJ / Father
http://www.lukaszpason.com
http://www.krop.com/lukasz
Reply to this Discussion! Login or Sign Up