Forum Replies Created

Page 11 of 597
  • Kevin Camp

    May 3, 2021 at 6:49 pm in reply to: Make a sine wave react to an audio track

    That is correct, it can only look at the audio level and cannot identify/separate frequencies. It was the closest solution I could think of to visually match your example, particularly with the tapered ends.

    I was thinking that you might be able to combine a couple more lines, linking linking each to a different audio levels output — if you add the bass & treble effect to the audio layer, adjusting the bass up & treble down, and then the reverse, you will get different levels based on the frequency change of the bass & treble effect and create something that was somewhat close to what you are looking for and interesting visually.

  • Kevin Camp

    May 1, 2021 at 12:46 am in reply to: Make a sine wave react to an audio track

    Try this:

    Create a new comp, add your audio source, right-click the audio layer and choose Keyframe Assistant>Audio to Keyframes and twirl down the layer properties to see the audio keyframes, then create a long skinny solid (like comp-width and 5 pixels high).

    Add the Repetile effect and set the top and bottom values to a high value, maybe 200 or more and set the Tiling to ‘none’ (this will expand the layer vertically, you won’t see anything but it will help with the next part).

    Now add Wave Warp to the solid (after Repetile), add an expression to the Wave Height property then click-hold the expression pickwhip and drag it to the audio keyframes for Both Channels on the audio keyframe layer you created earlier and add “* value” to the end of the expression. You expression should look something like this:

    thisComp.layer("Audio Amplitude").effect("Both Channels")("Slider") * value

    Position the CTI (current time indicator) at a point where you can hear the audio, then scrub the Wave Height property until you see a wave height that seems good.

    Preview it and make adjustments to the Wave Height as needed.

    If you want the wave tapered at the ends (like your example), try setting the Pinning to ‘Vertical Edges’.

    — EDIT —

    I should have also added if the wave is getting clipped just increase the Expand Up and Expand Down values for Repetile.

  • Kevin Camp

    April 27, 2021 at 11:18 pm in reply to: AE text to Photoshop?

    I have made Illustrator files into Photoshop files and then taken the PSD to AE and maintained editable text…

    In AI you can chose File>Export>Export As… Then choose PSD.

    In the next window you can chose an option for Write Layers and then Preserve Text Editability.

    Now you can bring that PSD into AE and make the text editable.

    Maybe InDesign has a similar ‘export’ function, or maybe you can get the InDesign file into Illustrator and then export a PSD…

  • Kevin Camp

    April 27, 2021 at 6:18 pm in reply to: AE text to Photoshop?

    There is not a way that I know of, but when I’ve needed to do something like that, I’ve done the Save Frame as PSD layers and then copy/pasted the text from AE to PS (select the text, then copy/paste).

    It’s a little tedious, particularly with area/paragraph text, but the copy/paste method maintains the text’s font, size and most other formatting, so that helps.

  • Kevin Camp

    March 16, 2021 at 10:02 pm in reply to: Move object ONLY along path y axis

    Sorry Jules, this method won’t work here… it worked on a simple set up I made, but testing it with a more organic line it will not work.

    And sorry for the typo.

    I think you’d need to do the animation and the wave path with sin or cos calculations.

  • Kevin Camp

    March 16, 2021 at 8:53 pm in reply to: Move object ONLY along path y axis

    You can take the the x-value from one object and combine it with the y-value of another using expressions…

    In your first example where the dot’s position is following the curve, I’ll assume that it is using the keyframes, which will make it a little easier, so start with that one.

    Right-click the position property for the dot layer and choose Edit Expression to add an expression to that property.

    Then add this expression to the expression field:

    target = thisComp.layer("My Line") ;  //change "My Line" to your line layer's name
    x = target.postion[0] ;
    y = position[1] ;
    [ x, y ]

    Make sure to change the “My Line” to the name of your layer, keeping the quotes.

    What it should do is take the y-value from the target layer (your line) but keep the current x-value of the current layer (the dot).

  • Kevin Camp

    March 2, 2021 at 10:18 pm in reply to: Carriage Return in CSV linked data?

    In the spredsheet cell, are there two names in the cell. like ‘John Doe’?

    If so, you could parse the sourceText for that text layer and replace the space with a carriage return.

    Here is a simple expression to do that:

    txt = value.split(" ") ;
    txt[0] + '\r' + txt[1]

    However this may not work if there is more than two words in the cell… ex: ‘John Doe Smith’.

    If you can insert a less common character in the spreadsheet to use to determine the break it would give you better control… like add a ^ where you want the break, then change the expression like this:

    txt = value.split("^") ;
    txt[0] + '\r' + txt[1]
  • Would animating the tracking achieve what you need?

    If you wanted to try it, create a text layer in the center of the screen and make the it center justified.

    With the text layer selected, choose Animation>Animate Text>Tracking to add a text animator for tracking.

    Now you can keyframe that Tracking property to make all the letters in the center of the screen and then move outwards to their final position.

  • Kevin Camp

    March 2, 2021 at 5:56 pm in reply to: Automating a rendering process

    You probably can do it with a script, but I would set it up with a simple expression that uses a number from the comp name to drive keyframe changes on the dropdown… Sounds more complicated than it is.

    Try this:

    Change you comp name to have a 1 at the end of it (like “My Comp 1”) and add a keyframe for the first menu selection (time doesn’t matter).

    Then add a new keyframe for the second menu selection and continue doing the same for all menu selections. Again the time doesn’t matter, it could be one frame or one second…

    Then add this expression to the dropdown’s ‘menu’ property:

    n = thisComp.name ;
    n[ n.length - 1 ]

    at this point, if you comp has a ‘1’ at the end of the name, the first menu item should be selected no matter what keyframe you are on.

    Now just duplicate the comp so you have 4 of them. Each comp should now have a menu selection set to the number at the end of the comp name.

    Add them to the render queue and render.

  • Kevin Camp

    March 1, 2021 at 5:22 pm in reply to: Playing easy in keyframes using expressions.

    Try using easeOut(). That should make the animation ease into the final value…

    This seems to produce very similar values in on my end, although not precisely the same:

    easeOut( time, key(1).time, key(2).time, key(1).value, key(2).value )
Page 11 of 597

We use anonymous cookies to give you the best experience we can.
Our Privacy policy | GDPR Policy