• Jon

    @rivalpro

    The way to avoid the issue is to use a # before all hex values in spreadsheet data. This shouldn’t happen with JSON data, as it is a quirk of how spreadsheet software (including Google Sheets) attempts to detect the data type in a cell and set the formatting. Using # will override the Sheet from setting incorrect formatting while the Bot is processing its data. While the Bot is running, the Sheet will think that you are changing data, and will try to automatically format all-numerical hex values as numbers unless they use the #.

    posted in Templates read more
  • Jon

    @Singit Yes, as you discovered, it will immediately poll the data. I don’t believe that it’s possible to leave AE open without using the CLI to launch the Bot, which defeats the purpose of using the CLI for immediate polling of data. You will need to assess which is more important to you, and which saves you more time in your particular processing tasks.

    posted in Remote URL Feeds read more
  • Jon

    @rivalpro Yes, you can pull in the value as a text layer, then use an expression to tie your shape size / percent completion to the SourceText property of the text layer by wrapping it in a parseInt(). If your text layer is “text-1”, and your text layer is in the same comp as whatever numerical value you are using to control your bar, the expression would be:

    parseInt(thisComp.layer("text-1").text.sourceText)
    

    That would convert your text value from being just a text string into a number.

    posted in Templates read more
  • Jon

    @Singit we’ve lowered the polling time to 30 seconds for the next release. Shorter polling than that can cause unexpected results or instability.

    Also, if you architect your app to use the CLI instead of the Bot, you can “push” data into Templater, instead of “pulling” with the Bot. You could set up triggers with your app that launch Templater whenever data is added. Check out this thread for some basics.

    posted in Remote URL Feeds read more
  • Jon

    @Ridvan Text color is not a directly accessible property, but you can control the color via expressions and a Fill effect. We have a sample project on our GitHub page that demonstrates one of the ways you can approach the issue.

    posted in Local JSON read more
  • Jon

    @groundless Yes, the Bot will work in trial mode. What are the contents of your test.json file? If you named your bot “xx”, then in your data, every JSON object will require a key/value pair of:

    "bot":"xx",
    

    If you don’t set those values, in addition to the “render-status”, the Bot won’t know to pick up your data.

    posted in Templater Bot Deployment read more
  • Jon

    @rivalpro I wrote a forum post a while back for this type of “slideshow,” with a variable number of slides. You can find it here.

    There is one minor tweak that you can do with this method. We’ve added comp switching via a flag in your data (wrapping the comp name in double curly braces) to the latest version of Templater, so instead of swapping with a video asset, you could swap with an empty 2-frame comp that is double the framerate of the containing comp.

    posted in Templates read more
  • Jon

    @spelgrift

    Make sure that at least one of the layer is set to “Initialize to center”. In the Attachment properties, set the top layer’s Attach on to “Top Edge”, Group Position to “Cap”, and Center on edges selected. For the bottom layer, make sure that you have Attach on “Bottom Edge”, Group Position “Base”, and Center on edges selected. If you have more than two layers, use Group Position “Middle” for layers that aren’t a “cap” or “base”.

    posted in Templates read more
  • Jon

    @kdav82 Are you using a local JSON file, or a JSON feed/URL? If you’re using a JSON feed, have you registered a script with the post-output or post-job event in Templater’s Preferences, and if you have, what is the script/incantation that you’re using? When you are using the CLI, are you launching the Bot, or are you launching a batch render job? If you’re using a render job, it will ignore the render-status. The downside of using the CLI to run the Bot is that it won’t ever spin down-- the process needs to be ended manually, where a batch render job can close on completion.

    posted in Templater Bot Deployment read more
  • Jon

    @cspinks

    Which version of Templater are you currently using? Relying on the selection in the Templater Preferences can cause issues when switching between AEP files. It’s best to set a default comp within each project by wrapping the name of the comp in double braces in the Project panel, then using the “target” value as an override. Let us know if that resolves the issue.

    posted in Pulling Data read more
  • Jon

    @cmoyer What kind of layers are the ones that seem to hang up? Audio? Video? Stills? Precomps? Is it always the same layers or footage sources, or does it change? If you remove any precomps (leaving only footage) does it still stall?

    If you’re able to do a screen recording, that’d be really helpful, for you to demonstrate your project setup. If you don’t want to share it publicly, you can submit a ticket

    posted in Templates read more
  • Jon

    @cmoyer Two quick questions. Which version of Templater are you currently using? And how deeply are your time sculpted layers precomped?

    posted in Templates read more
  • Jon

    Hello! A quick tip on how to fade audio with Templater via an expression. Since Templater can dynamically swap a wide variety of media sources of varying lengths, you can’t count on keyframes to be able to accommodate the variation of durations for consistent fade-outs of audio tracks. Here’s a sample of how to do that. Apply this expression to the Audio Levels.

    fadeTime = 30; //frames for fade
    audio.audioLevelsMin = -48; 
    audio.audioLevelsMax = audio.audioLevels[0];
    layerDuration = outPoint - inPoint;
    singleFrame = thisComp.frameDuration;
    animateOut = linear(time, (outPoint - framesToTime(fadeTime+1)), (outPoint-singleFrame), audio.audioLevelsMax, audio.audioLevelsMin);
    [animateOut,animateOut];
    

    In this example, the expression takes the audio level you’ve set and fades to -48 db over 30 frames (assuming 30fps composition, that is 1 second).

    posted in Templates read more
  • Jon

    @cmoyer

    Testing the collapse transformations issue, it looks like any effect (not limited to the Templater Settings effect) that you apply to that precomp will break or change your collapse transformation in unexpected ways. There is something weird happening in the way that AE applies effects to collapsed precomps. I’m not entirely sure of a way around this issue.

    From Adobe’s help (with my highlights):

    “When a closed mask (with mask mode other than None), a layer style, or an effect is applied to a nested composition with collapsed transformations, the layers in the nested composition are first rendered on their own, then masks and effects are applied, and then the result is composited into the main composition. This rendering order means that the blending modes of the nested layers are not applied to any underlying layers in the main composition, and that 3D layers above and below the collapsed layer cannot intersect or cast shadows on each other.”

    posted in Templates read more
  • Jon

    @rens Unfortunately AE’s API access to the character palette is extremely limited, so your best bet would be to create a pre-job script that copies your master AEP and opens the project in AE, to run Templater off of the copy instead of the master. This will leave your master always untouched. In the instance that a missing glyph breaks one project, it won’t break all of the subsequent projects. You could also try running an ExtendScript that updates the font on that layer on the post-update event every time, but I think that could be more problematic.

    Bot events.

    posted in Batch Output read more
  • Jon

    @zen169

    Hi Jean-Michel, we are working on adding a new feature that will make this easier, but in the meantime, if you want to access a value from your data, you need to connect the value to a text layer, then enable expressions for the slider and connect the slider to the sourceText value of the text layer, and wrap it in parseInt() to convert the string to an integer that the slider control effect can read. It would look like:

    parseInt(comp("your comp name").layer("your text layer name").text.sourceText)
    

    posted in Google Sheets read more
  • Jon

    @v_47 Hello!

    You are very close to getting it working. Underscores are reserved characters for Google Sheets, so using them in the titles of column headings won’t work. If you remove those or replace them with a dash, that should resolve the issue. There are a few other caveats about Google Sheets than you can read about in the notes here.

    posted in Templates read more
  • Jon

    Hi @Rens In After Effects, try doing Edit > Purge > All media and disk cache. It’s possible that there were old cached frames that still had the watermark, or perhaps there was a moment before the Templater license check happened where some frames loaded with the watermark. Let us know whether that resolves the issue.

    posted in Environments read more
  • Jon

    If you are interested in setting up your dynamic layers to accommodate both portrait and landscape footage (photos or videos) within a composition, here’s how to do that:

    We will assume that you are creating a “square” precomp, and that you want the footage to fill the composition in either direction and to letterbox or pillarbox that footage appropriately.

    First, the most important thing is that rather than having the composition be a perfect square, you need to make sure that your width is at least 1px longer than the height. So rather than 800 px x 800 px, it would need to be at a minimum 801 px x 800 px. This is going to be true even if you aren’t going for a square precomp. The letterbox/pillarbox will not work if the comp is taller than it is wide.

    Add the Templater Settings effect to your desired footage layer. In the Templater Settings effect, in the “Layout” section, you have the option to set a “Scale factor”- you’ll want to set that to 100%. In the “Alignment” section there is an option “initialize to center”- make sure to enable that.

    That should be all you need to accommodate footage sources of different dimensions.

    posted in Templates read more