A VSE based pipeline for animated TV series

Hello !

From what I’ve seen of the Blender Conference 2019, some people see in the VSE the potential to be a lot more than a regular NLE. For those who are interested in extending it, I’ve made a short video on how we use it at our animation studio.

Blender’s Video Sequencer has proven to be a very valuable tool to produce CG animation for us.
With some python scripting we’ve extended it to be in the core of our pipeline at CrossRiver Production, an on-growing french animation studio.
I found that it could be interesting to share some ideas on how we use blender on a daily basis, and maybe inspire people with similar needs.

All that said, this isn’t a one fit for all solution, we developed all these tools for small/medium sized teams and projects, and generally we trade speed and simplicity over fine grained control. But still it’s designed be adaptable to different projects needs.

We don’t plan to release or sell these tools, as it would mean sharing the whole pipeline that is a bit broader than what you see in the video. But feel free to ask questions and I’ll do my best to answer them and share the details on how it works.

Finally , I’d like to thanks especially Cédric Hansen that provided many core concepts and contribute a lot to the code. And also Jérôme Nougarolis, CEO of CrossRiver, that give us financial support to push these tools forward.

18 Likes

Very interesting pipeline,indeed!
If you need re-enforcement sometime…
I live in the same town…

Great ! Thanks !
We should definitely get in touch ! We plan to grow our team by the end of 2020 .
If you’re in Paris and want to work with blender feel free to PM me ! We look for all kind of profile, junior <-> senior, generalist <-> specialist.
I’ve seen a bit of your work and it looks like it will be very interesting to meet you !

That’s really a nice episode on using VSE in Blender together with a clean directory structure. All the single parts of this pipeline can be adjusted to whatever you like to use.
For example you could use Blender cloud as shot manager, another asset manager from blendermarket for example, or connect it to another VFX software.
What I like very much is the mainly open source setting of your pipeline.
Is the asset management web based system open source? Anywhere available?
Keep on blending.

Yes totally , the tricky part is to integrate all these tools to work together, but it’s true that there are a lot of possible use cases and ways to adapt something similar.

About our asset manager, it’s not opensource, and may need some work to be usable by other people.
But you can look at other solutions :


You can install their open source tools on your server , or use a paid account where they provide server and storage. If I had to start over now I’ll probably use this rather than making my own solution.

https://attract.studio/
It’s the solution made by blender foundation. From what I’ve heard it’s hard to make a standalone install . You may have to install some blender cloud stuff on your server as well… But as that was a long time ago maybe this has changed and I haven’t really looked into it myself.


This one is here since a long time, the’ve got some VM install that allow you to install it very easily , I haven’t used that much but it looked interesting.

1 Like

Thanks sozap.
Definitely I will give CGWire a try, looks promising.
Attract is quite OK if you use the blender cloud, but I could never find the source code to implement it on a local web server. Anybody knows?
Tactic seems to be a more generalized tool, to big for my issues.

The shot tools in the VSE are working on the linked files, I guess, and rendering is done relative to the linked file’s location by calling an external instance of blender in background mode, I think… With your presentation as a kind of blueprint I’ll try to implement the shot toosl by myself, if that is ok?
Another question I have is: the bar on the scene strip (with the status dependent colour), how is that implemented?
And: are you using the “edit linked library addon” for this?

Sorry to be so bothersome, but this is what I am looking for for ages - finding a pipeline with open source tools for short video production in the field of CG/VFX, without fiddling around with manual file, asset and data handling.

Update: just found sources of attract…

Yes, one problem to solve is how to know the filepath of the shots and their render when you’re in the edit file :

  • You can link the shot’s scene and keep it linked in the edit file. From there you can access all the scene’s informations. But everytime you’ll open the edit file it will read all the data of your project (shots + assets) to solve dependencies. It can also be complicated to manage shot’s versions. On the first iteration of these tools I was doing that because it was the simplest way I found. This is what I was doing here : Transformice Cartoon Series

  • Another thing that could help is to have a fixed file structure, where every project is made the same (ex: shots are always next to the edit , and always use the same naming conventions). So the project’s folder structure is kind of hardcoded into the pipeline’s addon. It’s not perfect but simpler to make.

  • In our system we store many informations on the sequencer strips as custom properties. And we use something similar to this : https://pypi.org/project/Lucidity/ to know how a shot needs to be called, where to put renders, ect… This way we can have different folders structure per project , and we avoid many small hacks, it’s a bit more complicated to make but allow you to change easily the naming convention or organize projects very differently.

Yes ! I made this video to provide some insight to people that want to do something similar, you can implement the same concepts in your own way for sure !

I’ve taken some code from https://cloud.blender.org/services ( the blender cloud addon) , they use it to show shot’s status from attract : https://youtu.be/FoUua_Jlmpc?t=206
Look in attract/draw.py in the addon.

I’m not using it but it’s exactly the same principle. It’s quite easy to do : when you run the operator you store the filepath in a variable of the file you’re on , then open the second file and store the original filepath in a custom property of the scene.

Don’t hesitate to ask questions ! it’s one of the reasons I’ve made this video : to share some knowledge and I’ll try to answer as much questions as I can. It’s very hard to find information about pipelines on the web and how all this stuff is supposed to work. Everyone tends to take slightly different approach that makes things even more complicated to understand.

If you’re looking at an already made solution there is also this : https://prism-pipeline.com/

I guess one issue with pipelines is that it’s hard to find a 100% matching solution for your case, so many people eventually do their own stuff . But it’s also possible to use an existing solution and adapt to it.

@sozap Thank you for sharing this. Nice to see how you guys worked around some of the current VSE shortcommings, like poor performance of Scene Strips and the inability to switch scenes without switching Sequencer content. And really impressive with the option to switch between rendered versions of the shot from the UI.

I wish this kind of workflow thinking was better implemented in Blender.

Yes, I think the good thing about VSE is that it’s easy to hack it into a specific workflow. Maybe what it needs is several addons adapted to different situations like mixed 2D/3D storyboards , previz , CG animation, video editing/compositing … It’s hard to think of one efficient way of solving all this. There are a lot to improve in VSE but I think it should keep it’s easy way to adapt to different scenarios. At least it’s something quite unique that you won’t find in other OSS NLE.

Have you guys done some workflow add-on to ease moving from script to previz/animatic/storyboard?

I’m asking because we’re a couple of people trying too integrate sceenwriting and automatic scene generation with subtitles and added assets as they appear during the screenplay: Blender Screenwriter

Hey thanks to bring such an interesting topic into the table !
I haven’t heard of .fountain before you start working on your addon, I was quite inspired by your work and I tried to look a bit more into fountain format but I haven’t really looked closely.
It really looks like a modern approach were we tend to stay on the stone-age in that regard.

This is something that can be very interesting , taking a script and generating some shots with assets and some approximated timing, that can be quite a time saver.

There are some challenge to tackle for us before looking at how this system could work, but maybe you can give me some hints about my concerns.

1/ We add number at each line of dialogue , and I’m not sure if it’s possible with fountain format.
This is quite convenient at recording session were we can tell the actor to redo line 40 for instance.
Somthing like this :
image

2/ The most complicated part is that we work with different screenwriter and most of them aren’t technical. They work with word, openoffice and it ends up in some google docs for fast feedback between director, clients and boarders . It’s quite not the best workflow but at least it’s simple and everybody can cope with it. If we start to ask all these people to change their habits and work with software that they don’t know it should be really easy to use and they should be able to find the same workflows they used to work with before. It’s in fact changing a whole organisation that isn’t really good for the better but it add some constraints to a lot of people.

I think if we were working on a feature film it may be simpler than an series, because we’ll have more time and less people involved in the writing stage.

Anyway, I’m convinced that fountain is quite a better workflow that open the door for some automation, it’s just hard to go for it when there are many people involved.
What do you think of all this ? Should I look more into it ?

The industry standard of formatting screenplays has the advantage of one page equals one screen minute.

This formatting is difficult to do in ex. Word or Open/Libre Office without plugins. So this was one of the reasons why fountain was invented, because you can pretty much write longhand in any text editor(even Notepad) and if you do not use any additional formatting outside scene headings, action, character, parenthetical and dialogue you’ll not need to use any markup syntax, for getting the text parsed by fountain into industry standard screenplay formatting.

30 sec into this video you’ll see I write on the left side longhand, which gets automatic formatted correctly on the right side: https://youtu.be/ZhjcygD2Vas?t=30

So basically in most cases you would be able to just take the text from google docs or Word and get it automatically formatted to screenplay formatting. There is a free screenwriting software which supports fountain called Trelby and numerous free online fountain formatting/conversion tools like ex. Afterwriting(which lets you export a pdf) - I prefer the payware Fade In(has a free mode too), but the basics can be done in Blender Screenwriter too.

Having numbers on dialogue is not part of the industry standard of screenplay formatting, but there is already code for inserting scene heading numbers in the fountain format, so I guess you guys could easily copy/paste that into characters having dialogue.
Having the dialogue as timed subtitles, you could also play the subtitles for the actors, so they would be reading them from a video(maybe on top of storyboard/animatic/previz). And the sound recorder guy could place the audio recordings directly in the timeline in the right timing during the recording session.

Here’s the current Blender Screenwriter implementation of toggling scene numbers on and off:

I would imagine that using auto linking/assigning of assets from the script would be especially useful for tv-series where you would aim at reusing assets as much as possible to keep production costs low.

Imagine having int/ext/day/night linked to a skybox and light set up for each, having all character names linked to models, their rigs and individual camera and light setups, having all locations and props auto inserted, so each scene would be a prepared sandbox ready to animate to timed dialogue as subtitles or audio recordings, so the animators can start working immediately using the actual assets or placeholders. (We’re not there yet with Blender Screenwriter, but doing this should be technically possible, but it just needs to be coded).

4 Likes

wow this is a great topic!

Does anyone have an eye on Open Timeline IO?

Awesome, really. I haven’t seen this add-on since now and worked with Trelby. The automated scene creation is absolutely nice. How do you calculate the length of the individual scenes?
(Why are the single scenes starting at frame 0 and not frame 1)?

This approach is scene centric; single shots must be managed in an extra process within the individual scenes. Or they must be derived from these individual scenes and then linked in these scenes.

The advantage of this concept is that the whole process is story driven by the written script. Nice, love it :smiley:

Thanks a lot for these in-depth explanations. I’ll look more into fountain and talk about it to people writing scenarios for us.
And of course with such a standard it’s possible to get a first draft of a previz by doing some automation on top of that.
It sound like a great innovation that everyone needs to use, it can just take time for people to adapt to it.

1 Like

I haven’t looked into it yet , but it’s quite promising !
On a project in another company we edited storyboards in Final Cut and we needed to export every shot to shotgun so we can make blender shots out of it, and also export a sound file for each shot.
That was done by parsing an .EDL with blender. I guess OTIO could be way more convenient and help to go back and fourth between the two applications. Or export the edit done in blender to a finishing application.

How can you work in Blender with EDL? I can’t see anything to import it.

OTIO is for sure something everyone needs to have an eye on. It’s quite new but it seems that more studios and DCCs are jumping on the train. RV has or will have a port for that.

2 Likes

Indeed OTIO looks like what we were waiting for since a long time :slight_smile:
About EDL in blender on that specific project I didn’t worked on the import and I don’t know the specifics.
There used to be an addon that did that : https://archive.blender.org/wiki/index.php/Extensions:2.6/Py/Scripts/Import-Export/EDL_Import/
I think the TD that worked on the pipeline take this as a basis and modified it.

Thanks for that. The VSE needs a lot of love and development. It has so much potential (Imagine you can import Blender cameras into the edit and not only videos - mindblowing!)

The formatting you showed above with the character name in one line and the dialogue in the following can be converted by Fountain into industry standard formatting by the click of a button.

It would be great if you guys could share an updated version of the Blender EDL importer - it did have some problems.

You can already do that now:
https://www.youtube.com/watch?v=b4eQrns5KpQ
Download add-on:


EDL Export(video and audio only):

2 Likes