Prepare Movies To Join

<< Click to Display Table of Contents >>

Navigation:  Nodes > Tasks > Media Edit >

Prepare Movies To Join

 

Purpose

 

This node is intended to work alongside with a Join Movies node connected to its output. This node renames the input movies inserting their frame range at the end of their file names, so that the posterior Join Movies node can process them (thus generating a single output movie file concatenating all the input movies).

 

PrepareMoviesToJoin-001

 

As a difference of the Split Movies’ node, the Prepare Movies To Join node calculates the frame duration of each input movie and adapts the values of its [range] token ( FrameIn_FrameOut) incrementally depending on the output frame of the previous segment, so that the movie chunks are well described even if they do not have equal lengths.

 

Please note that:

 

•In order to join the movies, all their codec settings must be strictly identical: codec, resolution, fps, number (and type) of audio tracks (if any), and so on ...

 

•Only movies with intra-frame compression can be joined (i.e. Prores). Inter-frame compression algorithms will not work (i.e long gop h264/h265 is not supported)

 

•As a consequence of the above two points, it is strongly recommended to place a ProRes encoder node as the previous node connected to the input, so that it can normalize any previous differences before sending the movies to this node.

 

The Prepare Movies To Join has been done thinking of a “mastering from reels” scenario, but it can be applied to others.

 

When mastering from reels a feature film, there are normally intermediate renders while work is in progress, and also when it is finished and masters are about to be generated. These reels are usually enumerated sequences, like .exr or .tiff, and they may be named as:

 

PrepareMoviesToJoin-002

 

In order to generate a single movie with all those reels, they must be rendered to a same intra frame codec such as Prores, and then calculate their frame ranges and rename them with the Prepare Movies To Join, so that the Join Movies understands it:

 

PrepareMoviesToJoin-003

 

The Prepare Movies To Join node will recognize the order of the input movies and its duration, and will rename them with the frame ranges that the ‘Join Movies’ node needs to work with:

 

Input reels, before Prepare Movies To Join:

 

PrepareMoviesToJoin-004

 

Pieces ready, after Prepare Movies To Join:

 

PrepareMoviesToJoin-005

 

In order to not modify the input transcoded reels, Prepare Movies To Join makes a copy of every input file. As the pieces generated are actually temporary files, if they are pointed to a folder within the same volume the option Use Hard Links can be activated, which is almost instantaneous in processing time:

 

PrepareMoviesToJoin-006

 

Also an overwriteTmpFiles toggle is provided, as it is frequently to repeat over and over a wip master along several QC cycles, with small patches and fixes in different parts of every reel.

 

It’s worth noting that the Name Convention of this node must be mandatory:

 

[path][baseName][_range][.ext]

 

Otherwise the Join Movies node will not recognize the input pieces, and it will silently fail.

 

Following the example, after all reels have been joined, other mastering tasks like audio routing, trimming head and tail, or adding watermarks can be added to the workflow, so with every single change in the input .exr reels, re-generating a wip or master file for QC or final delivery can be fully automated:

 

PrepareMoviesToJoin-007

 

PrepareMoviesToJoin-008

 

Please note that this node has been coded for a common use case with a particular reel naming.  If it does not fit in your case, please contact SGO support if you need us to adapt the input naming and ordering rules for your environment.

 

 

Inputs

 

Pieces: Movie files to be processed (they need to be movie files, not enumerated sequences, and they all need to have the same video settings.

 

Outputs

 

Movies: The input movies renamed, as supported by the Join Movies node.

 

 

Standard properties

 

Object Name

Color

Bypass

Lock

File Path

 

Node specific properties

 

Path: Folder to store the movie pieces created by this node.

 

UseHardLinks: If active it will not copy the input files to be renamed, instead it will generate Hard Links with the new names (only possible when the movie pieces are going to be generated in the same volume as the input movies... see the Hard Link node for more information about when is it possible to use hard links )

 

overwriteTmpFiles: Toggle to overwrite the generated pieces if they already exist.

 

Developer reference (Python - PrepareMoviesToJoin.[Property ID], API Rest - node/PrepareMoviesToJoin/property/[Property ID])

 

Property Label

Property ID

Path

tmpJoinPath

UseHardLinks

UseHardLinks

overwriteTmpFiles

overwriteTmpFiles