Kevin Camp
Forum Replies Created
-
Kevin Camp
May 14, 2021 at 4:09 pm in reply to: Jitter, skipping and green frames when playing back mov filesI’ve had some similar issues with the Adobe products recently… not sure if it was related to recent updates or not, but I fixed it by transcoding with a non-Adobe product.
I used Handbrake to transcode back to another mp4 container, but other products will probably work too (but not AME).
I can’t run MPEG StreamClip anymore — I was forced to update my OSX and now can only run 64-bit apps, but StreamClip could transcode to better codecs and could re-wrap mp4s to movs avoiding further loss to recompression (not sure if re-wrapping would work here, but it would be great if it did)
-
Kevin Camp
May 12, 2021 at 6:53 pm in reply to: Video Only Showing a Solid Color on Import – Tried TranscodingAnd if you do transcode, don’t transcode with another Adobe app. I’ve found when AE has issues with a file, AME often does too.
-
Kevin Camp
May 10, 2021 at 3:58 pm in reply to: Getting a shape to move in relation to typed charactersAs Chris points our, sourceRectAtTime() is the way to go. Here is how I normally do it.
First I parent the shape layer to the text layer and then set the shape layer’s position to 0,0.
Then in the shape layer’s path size try this expression:
rect = parent.sourceRectAtTime() ;
pad = 20 ; //set this as needed to create pad around the text
x = rect.width + pad ;
y = rect.height + pad ;
[ x, y ]And in the path position (this is the contents>shape>path>position, not the transform>position you zeroed earlier) try this expression:
rect = parent.sourceRectAtTime() ;
x = rect.width / 2 + rect.left ;
y = rect.top / 2 ;
[ x, y ]You may find that you want the hight to be fixed, particularly if you are using lowercase or have punctuation that extends bellow the baseline (like most commas). If that is the case, set the y-value in the first expression to a fixed value, like y=60+pad, for example.
-
Since a GIF can’t contain HTLM, you would need to look into an HTML5 solution.
You can google some methods/plugins to make AE animations into HTML5, but I’ve never used them.
-
I don’t think a GIF can have a clickable link (like a specific button or text to click on), but the GIF itself can be clickable.
That would be set in HTML when putting the GIF on a website/email, the same as making a button or other image (PNG, JPG, etc.) clickable.
-
When you paste the mask path as a motion path, it will not be 3D anymore (the mask path is really just a 2D element on a 3D plane). I would just animate the null manually to follow the existing path/string of dots that you had previously.
Remember to move the null in 3D space (ie, animate the z-pos) too. I don’t think it will take too many keyframes to make that path, probably 5 or 6. Also remember to convert the keyframes roving, it will help smooth the movement.
Once you have the string of dots, you’ll be able to make adjustments to the null’s motion path (changing keyframes or bezier curves of the path) and the dots will reposition automatically, so you should be able to make changes fairly easily.
-
Reiner’s solution is nice. Definitely an easier set up than may ‘follow the leader’ expression.
-
I would make the circles separate layers…
To get them to all move along the same path, I’d animate a null in 3D space to follow the line you have. Note that changing the position keyframes to ‘roving’ should help smooth the animation.
Then I’d create the first circle (smallish layer and add a circular mask, or make a circular shape layer).
To make it follow the null’s motion, I’d use an expression on the circle’s position property, something like this:
target = thisComp.layer("Null 1"); // change "Null 1" to your null or layer to follow
n = .5 ; // change this value to change the spacing between dots
target.position.valueAtTime(time - index * n)You should be able to scrub through the time line and see that circle follow the null, but be offset in time just a little.
Now if you duplicate the circle a few times you should start to see a trail of circles. Adjust the ‘n = .5’ value in the expression to get the spacing you want. Once you have that set, delete the circles that don’d have that value and then duplicate the circles(s) that do and they should all have consistent spacing.
For colorizing, you could do each manually, or you could us another expression. I would try the Fill effect if you use the layer and mask method, or you can use an expression on the Fill property of the shape layers. Either way, the next steps are the same.
First create a keyframe for each color that you want to randomly select from. Then try this expression:
seedRandom(index, timeless = true) ;
r = Math.ceil( random( numKeys ) ) ;
key(r).valueAs you duplicate out the circles, each should be random color from the colors you stored as keyframe values.
If needed, you can also set the circles to always face the camera by selecting all of them and choosing Layer>Transform>Auto-Orient and then choose ‘Towards Camera’
-
Hi Daniel, I had a bit of time this morning to learn about a newish expression addition that Adobe made in 2018 that allows us to access mask/shape points (something I had wanted to do for a while, but never had the need)
It seemed that using a shape layer would be the best way to achieve a smooth sine wave, and having a way to link nulls to shape layer points would be a better way to go rather than trying to control a displacement map.
Here is a basic comp that uses 16 nulls to create a path on a shape layer. If you are able to find a way to convert more frequencies to keyframes (or values of some kind), I think you could use that to drive the y-positions of the nulls and create the wave animation that way.
If needed, you can adjust the curve tangents with point controls on the shape layer.
-
I was able to make something closer. I found that if you create a bunch of black and white vertical lines, blur them and use that as a displacement map on a line, it creates a sine wave.
Then I did Bass & Treble trick to create 3 different audio level keyframe sets and use that to drive opacities of 3 layers that overlap the blurred vertical lines and created a sine wave that has some variance in amplitude across the waveform.
I’ve attached the zip here. To use your own audio you would just need to convert your audio to keyframes 3x (using the bass/treble trick) and name the audio level layers as they are in the ‘disp map’ comp and delete the ones in there now.
This set would be improved if you had a better way to separate frequencies. Trapcode/Red Giant had (and probably still does have) an effect called SoundKeys that gave more control over frequencies and that might help a lot here.