<p>To expand on Florian's answer: ffmpeg is designed to be used programmatically, and can be scripted to do all sorts of video processing, including adding text and graphics from the command line. If you're using it on a server, it's likely your best bet.</p>

<p>After Effects, a video compositing and animation package from Adobe is capable of a lot more, but is primarily designed to be used as a GUI ap. AE is fully scriptable, which means that you <em>can</em> run it without user intervention, but the complexity involved with scripting it is a lot higher. You'll need a developer who not only knows JavaScript, but also knows After Effects and its object model.</p>

<p>Blender is a 3D application that can also do 2D compositing, editing and animating, and again is scriptable, while primarily being used as a GUI ap. Blender would probably be the most complex one to script, though the development community is probably (?) larger.</p>

<p>Ffmpeg and Blender are free, AE requires a license.</p>

CC BY-SA 4.0
2019-12-20T05:58:50.117Z
2019-12-20T05:58:50.117Z
stib
<p>You could write a simple shell script (either for mac or windows) which consists of basic if - then clauses to read the input of the user, then use <a href="https://www.ffmpeg.org" rel="nofollow noreferrer">ffmpeg</a> by calling it from within the script. I believe that ffmpeg might be the most painless option, since scripting for Premiere and After Effects can be a bit tedious.</p>

CC BY-SA 4.0
2019-12-16T18:26:46.053Z
2019-12-16T18:26:46.053Z
Florian Claaßen
<p>I would like to be able to automate video creation and rendering. </p>

<p>I imagine the process as creating placeholders, which then can take my dynamic input (images/videos/text). </p>

<p>I would like to know the process of creating videos with placeholders as <a href="https://placeit.net/instagram-story-video-template" rel="nofollow noreferrer">https://placeit.net/instagram-story-video-template</a> here. Clearly, the video contains a placeholder for the text that we specify. How is this done on the low level? </p>

<p>None of the softwares for video rendering e.g. Final cut Pro etc. can be run on a server using CLI (command line interface). </p>

<p>Which backend / libraries can be used to create something like that? </p>

<video>
How to render videos with placeholders using API / command line interface?
GRS
# How to render videos with placeholders using API / command line interface?

(Asked by: username_0 on 2019-12-15)

I would like to be able to automate video creation and rendering.

I imagine the process as creating placeholders, which then can take my dynamic input (images/videos/text).

I would like to know the process of creating videos with placeholders as <https://placeit.net/instagram-story-video-template> here. Clearly, the video contains a placeholder for the text that we specify. How is this done on the low level?

None of the softwares for video rendering e.g. Final cut Pro etc. can be run on a server using CLI (command line interface).

Which backend / libraries can be used to create something like that?

**Tags:** video


---

## 2 answers

### Answer by username_1 on 2019-12-20. Score: 1 | Accepted answer

To expand on Florian's answer: ffmpeg is designed to be used programmatically, and can be scripted to do all sorts of video processing, including adding text and graphics from the command line. If you're using it on a server, it's likely your best bet.

After Effects, a video compositing and animation package from Adobe is capable of a lot more, but is primarily designed to be used as a GUI ap. AE is fully scriptable, which means that you *can* run it without user intervention, but the complexity involved with scripting it is a lot higher. You'll need a developer who not only knows JavaScript, but also knows After Effects and its object model.

Blender is a 3D application that can also do 2D compositing, editing and animating, and again is scriptable, while primarily being used as a GUI ap. Blender would probably be the most complex one to script, though the development community is probably (?) larger.

Ffmpeg and Blender are free, AE requires a license.


---

### Answer by username_2 on 2019-12-16. Score: 1

You could write a simple shell script (either for mac or windows) which consists of basic if - then clauses to read the input of the user, then use [ffmpeg](https://www.ffmpeg.org) by calling it from within the script. I believe that ffmpeg might be the most painless option, since scripting for Premiere and After Effects can be a bit tedious.


---

