3 Replies Latest reply on May 24, 2016 9:06 AM by hoggehog

    Start composition when hitting a marker

    hoggehog

      Hey guys!

       

      So I've tried searching and searching but can't find any answers. Here's what I'm trying to achieve:

      1. I've got a comp with a lower third animating in and out (text and an image).

      2. I would like to create 2 markers on this comp. Marker1 starts the in animation of the lower third, and Marker2 starts the out animation.

       

      So when I move the markers, the lower third starts in/out when hitting those markers. Yes, I could just move the comp layer, but that is no challenge. I'm trying to learn :-)

       

      Anyone got any ideas on how this could be done?

        • 1. Re: Start composition when hitting a marker
          Mylenium Most Valuable Participant

          This can only be done by enabling time-remapping and applying a somewhat elaborate expression. You calculate the time based on the original comp in- and out-points in relation to the marker time. For it to be "safe" you need a lot of extra bells and whistles, though, even more so when having the in and out animation on the same layer. Something like this should get you started:

           

          Dan Ebberts's Expressioneering Design Guide

           

          Be warned, though, time-remapping in relation with expressions is a performance hog due to how the efvaluation and lookup of the calculated time works to retrieve the correct rendered frame.

           

          Mylenium

          1 person found this helpful
          • 2. Re: Start composition when hitting a marker
            Rick Gerard Adobe Community Professional & MVP

            I appreciate your efforts to learn but one of the most important things to learn when working in production is how to do things efficiently.

             

            Here are some well established rules for lower 1/3 graphics. The time it takes for a viewer to read and understand a lower 1/3 graphic is pretty constant. Generally you are much better off making all of the lower 1/3 graphics in your program the same length. If you want to have some different lengths for your graphic then it's better to make different templates.

             

            From your description it sounds like you are adding your lower 1/3's to your program inside AE. This is a very inefficient way to work. In almost every case, if your AE comp is longer than a shot or a short sequence then you are wasting production time fiddling around with the wrong tool for editing. 90% of my comps are a single shot that is usually 7 seconds or less. The other 10% are sequences that last no longer than a sentence or two or occasionally a paragraph of voice over. All editing is  done in a NLE. It's way faster in the long run. On very rare occasions I'll use AE to accomplish something on a scene that is a couple of minutes long, but when that happens the scene is already edited and all part of the same part of a story and my AE comp is only a few layers that extend for the entire scene. You'll find that when you start thinking of AE as a tool to make shots and a NLE as the tool for editing the shots into a story that your productivity will go up by a factor of about 10.

             

            Last point, If I have a bunch of lower 1/3's I always make a template in AE that can be used in Premiere Pro that has editable text. One asset in Premiere Pro that can be used for 100 different folks in a 2 hour program where you edit the copy right in the Premiere Pro sequence. All it takes is a check in the Advanced tab of the Composition Settings.

             

            I guess I'll mention another point. It is very possible to use markers or the in and out points of layers to drive animation when using expressions. I do this all the time. Most of my animated graphics in explainer videos do not have any keyframes at all. I just create the graphics in Illustrator on separate layers, position the layers in AI in their resting position, then import the AI file as a comp and start applying animation presets and setting in and out points. Most of the time all I have to do is sequence the layers and adjust the in and out points to match the narration and I'm done. Here's an example of one of my most used presets. A graphic flys in from the left side and bounces to a stop, then just before the layer ends it falls out of the comp disappearing from the frame exactly on the out point. There are Effects Controls added to the layer so I can customize the fly in time, bounce decay rate, and other things. Here's the animation Preset. Feel free to play with it and use it. Dropbox - flyInBounceDropOut.ffx

             

            Here's the expression that is used. If you look carefully you can find the effects controls named in the expression.

            sif = effect("slideIn Frames")("Slider");

            sof= effect("slideOut Frames")("Slider");

            // find in and out point

            inTime = sif * thisComp.frameDuration;

              if (effect("Match SI SO")("Checkbox") == 0) {

              outTime = sof * thisComp.frameDuration;

              }

              else if (effect("Match SI SO")("Checkbox") == 1) {

              outTime = inTime;

              }

            // Fix  layer size when scaled

            sf = scale - [100, 100];

            xSize = width + (width * sf[0]/100);

            ySize = height + (height * sf[1]/100);

            realSize = [xSize, ySize];

            // Set Positions

            spx = 0 - realSize[0] + realSize[0]/2 ;

            rstx = value [0];

            rsty = value[1];

            epy = thisComp.height + realSize[1] - realSize[1]/2;

            // create movement

            freq = effect("bounce Frequency")("Slider");

                    amplitude = effect("bounce Amplitude")("Slider");

                    decay = effect("bounce Decay")("Slider");

                posCos = Math.abs(Math.cos(freq*time*2*Math.PI));

                y = amplitude*posCos/Math.exp(decay*time);

            moveIn = Math.min(linear(time,inPoint,inPoint + inTime,spx  ,rstx-y));

            moveOut = Math.min(linear(time,outPoint - outTime,outPoint - thisComp.frameDuration,rsty ,epy));

            [moveIn, moveOut]

            Here are the Effects Controls that are added:

            Screen Shot 2016-05-24 at 8.40.07 AM.png

            You can position any sized layer anywhere you want in a comp at any scale and then apply the preset. The layer will move just outside the frame to the left at the in point an fall off the screen at the out point. Dig into this idea a bit and learn expressions and you can save yourself a bunch of time. You can use the technique to animate any property that can be controlled with an expression.

            • 3. Re: Start composition when hitting a marker
              hoggehog Level 1

              Wow, thanks for your elaborate response Rick! I'll dive right into this tonight. Really good points you raise, I hadn't realised how inefficient my workflow was...