Creative Communities of the World Forums

The peer to peer support community for media production professionals.

Activity Forums Adobe After Effects Expressions One Expression Massively Increasing Render Time

  • One Expression Massively Increasing Render Time

    Posted by Lewis Snook on April 26, 2016 at 7:11 am

    I’ve been posting here the past couple weeks to gather different expressions to achieve what I’ve come to call and Audio Avatar. Just to give all the info about the composition before I ask my question:

    Comp Size: 60x60px
    Composition Length: 2 hours approx.
    Description: A simple face made of various shapes. The mouth scale is pickwhipped to Audio Amplitude. As is the position of the eyebrows. The eyes used to also be pickwhipped to the audio in a reversed fashion (whereby they get smaller in response to the audio) – However, this looked silly as the face looked like it was sneezing everytime it spoke. So I replaced that expression on Scale, with this expression on Opacity:

    minSeg = 2.0;
    maxSeg = 5.0;
    blinkDur = .2;
    fadeTime = .07;

    seedRandom(index,true)
    segStartTime = -random(minSeg,maxSeg);
    segEndTime = segStartTime;
    i = 1;

    while (time >= segEndTime){
    i += 1;
    seedRandom(i,true);
    segStartTime = segEndTime;
    segEndTime = segEndTime + random(minSeg,maxSeg);
    }

    if (time < segStartTime + blinkDur/2)
    easeOut(time,segStartTime,segStartTime+fadeTime,100,0)
    else
    easeIn(time,segStartTime+blinkDur-fadeTime,segStartTime+blinkDur,0,100)

    This expression is much better for making a simple blink effect. However, before I added this expression, the 2 hour comp was taking around 1-2 hours to render. With this expression, the render runs with the estimation of 1-2 hours, but then about 40 minutes in, the render time begins to increase until it reaches in the range of 7-9 hours. Watching the initial render shows that it is rendering multiple frames per second, but by about 40 minutes in, this slows to a crawl and then only 1 or 2 frames are rendered per second.

    There are no other effects that begin during this time. It’s the same all the way through. I was just wondering if anyone could explain what the cause of this might be? (I also have multiprocessing switched on)

    Lewis Snook replied 10 years, 3 months ago 2 Members · 2 Replies
  • 2 Replies
  • Dan Ebberts

    April 26, 2016 at 1:50 pm

    The expression’s loop gets longer and longer as the comp goes on. For a 2-hour comp, towards the end, the expression will have to loop approximately 2000 times per frame. As you’ve discovered, it may not be practical for really long comps.

    Dan

  • Lewis Snook

    April 26, 2016 at 5:19 pm

    Thanks, I really appreciate you explaining that to me! I don’t suppose you know a way of achieving the same effect without this looping 2000 times?

    Or is there some way to refresh the expression so I can just render it in smaller parts and then edit them together in Premier. (For example, when I have rendered 30 mins, and then stopped, and then rendered another 30 mins, the render time remains slow – so is there a way to refresh the expression if there is no alternative way of achieving this effect?)

    Thanks alot Dan.

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