Mocha Pro UserGuide
Mocha Pro UserGuide
Mocha Pro UserGuide
Table of Contents
Introduction .............................................................................................................. 10
The Art of Tracking .......................................................................................... 10
There Are No Point Trackers ........................................................................... 10
New features in Mocha Pro 2022 9.0.3 .................................................................. 12
New features in Mocha Pro 2022 9.0.2 .................................................................. 12
New features in Mocha Pro 2022 9.0.1 .................................................................. 12
New features in Mocha Pro 2022 9.0.0 .................................................................. 12
Insert Module Updates ..................................................................................... 12
Architecture updates ........................................................................................ 12
Tracking improvements .................................................................................... 13
Exports ............................................................................................................. 13
Dopesheet improvements ................................................................................ 14
Minor Updates .................................................................................................. 14
Interface Overview .................................................................................................. 15
Layouts ............................................................................................................. 15
Saving Custom Layouts ................................................................................... 18
The Advanced Toolbar .................................................................................... 19
Basic Toolbar ................................................................................................... 22
The Viewer Controls ........................................................................................ 24
The Timeline Controls ...................................................................................... 25
Layer Controls .................................................................................................. 27
Layer Properties ............................................................................................... 29
Cache Management ......................................................................................... 30
Stereo Interface ....................................................................................................... 32
Viewing in Stereo ............................................................................................. 32
Timeline Controls in Stereo ............................................................................. 32
Using the Mocha Pro Plugins ................................................................................. 34
360 VR and Stereo Views Workflow ............................................................... 34
Applying the Mocha Plugin for Adobe After Effects ......................................... 36
Applying the Mocha Plugin for Adobe Premiere .............................................. 44
Applying the Mocha Plugin for Avid Media Composer ..................................... 48
Applying the Mocha OFX Plugin ...................................................................... 53
Adding the Mocha Plugin inside Autodesk Flame ............................................ 53
1
Mocha® 2022 User Guide
Adding the Mocha Plugin inside Blackmagic Design Fusion Studio ................. 55
Adding the Mocha Plugin inside The Foundry Nuke ........................................ 56
Adding the Mocha Plugin inside Silhouette ..................................................... 58
Adding the Mocha Plugin inside Vegas Pro .................................................... 59
Basic workflow for the Mocha OFX Plugin ...................................................... 62
Using the Mocha GUI ...................................................................................... 63
Controlling Mattes ............................................................................................ 63
Controlling Module Renders ............................................................................ 64
Rendering Insert Layers ................................................................................... 65
Dealing with Alpha Channel Input and Output ................................................. 66
Applying the Mocha HitFilm or Mocha Pro Plugin inside HitFilm ..................... 67
Loading Projects containing the Mocha VR Plugin .......................................... 70
Starting a New Project ............................................................................................ 72
Workflow inside Mocha .................................................................................... 72
Creating a New Project in the Mocha Standalone application ......................... 72
Setting Up a New Project For VR 360 ............................................................ 77
Setting Up a New Project For Stereo .............................................................. 77
Creating a New Project in the Mocha Pro Plugin ............................................ 79
Creating a New Project in the BCC 10 Mocha PixelChooser ........................... 80
Setting the In and Out Points .......................................................................... 81
Project Frame Offsets and Clip Frame Offsets ................................................ 81
Tips for New Projects ...................................................................................... 81
Merging and Importing Projects .............................................................................. 83
Merging Projects [Mocha Pro] ......................................................................... 83
Importing Silhouette SFX projects ................................................................... 83
Tracking Basics ....................................................................................................... 85
The Planar Tracker .......................................................................................... 85
The Relationship Between Splines and Tracking Data .................................... 87
Selecting an Area to Track .............................................................................. 87
Dealing With Obstructions or Reflective Surfaces ........................................... 89
Tracking Parameters ........................................................................................ 91
Tracking the Spline .......................................................................................... 94
Checking Your Track ....................................................................................... 95
Importing Mattes .............................................................................................. 99
Tips for Tracking ............................................................................................ 100
PowerMesh and Mesh Tracking ........................................................................... 102
Mesh Generation ............................................................................................ 102
Mesh Tracking ............................................................................................... 104
2
Mocha® 2022 User Guide
3
Mocha® 2022 User Guide
4
Mocha® 2022 User Guide
5
Mocha® 2022 User Guide
6
Mocha® 2022 User Guide
7
Mocha® 2022 User Guide
8
Mocha® 2022 User Guide
9
Mocha® 2022 User Guide
Introduction
Welcome to Mocha, tracking and rotoscoping tools that make your tracking and
rotoscoping work much easier.
Our tools are based on our proprietary Planar Tracking technology, an awesome
approach to 2D tracking which will help you to generate accurate corner-pins and track
and transform your roto splines in a powerful way.
Mocha is a 2D tracker that requires less experience and luck to be successful with,
does not require the image to be primed and is less likely to require a lot of tricks or
hand tracking on difficult shots.
Traditional tracking tools require that you locate “points” that remain consistent
throughout the entire shot in order to track movement. This is itself a difficult task,
especially when tracking a shot that was not originally designed to be tracked. If you
wish to also track rotation, perspective and shear you need even more clear and
consistent points to track.
Traditional roto methodology would have you outline a shape with the minimum number
of points necessary then either manually move the control points or track the shape with
a point tracker to “get it close”. Even when using multi-point trackers to impart rotation
and scale to the roto spline, the results are often unusable if there is any perspective
change during the shot.
Instead, Boris FX’s Planar Tracker tracks an object’s translation, rotation and scaling
data based on the movement of a user-defined plane. A plane is any flat surface having
10
Mocha® 2022 User Guide
only two dimensions, such as a table top, a wall, or a television screen. Planes provide
much more detail to the computer about an object’s translation, rotation and scaling
than is possible with point-based tracking tools. Even as an object leaves and enters
a frame, there is usually enough information for the Planar Tracker to maintain a solid
track of the object. When you work with the Mocha tools, you will need to look for
planes in the clip. More specifically, you will need to look for planes that coincide with
movements you want to track. If someone is waving goodbye, you can break their arm
into two planes - the upper and lower limbs. Although not all of the points on the arm
sections actually lie on the same two-dimensional surface, the apparent parallax will
be minimal.
With the addition of PowerMesh in Mocha Pro, subplanar tracking is also possible,
tracking warp and bending of objects that standard planar tracking would struggle to
do alone.
11
Mocha® 2022 User Guide
• Insert Mesh Warp: Now users can drive inserts with PowerMesh tracking and
render organic and warped surfaces with motion blur.
• Insert Blend Modes: Transfer mode blending can now be done inside the Mocha
Pro interface, making it easier to visualise final results or render to NLE hosts that
have less compositing features.
• Improved Insert Render Quality: The Insert module now renders with high-quality
filtering for improved looking results.
• Improved User Interface and Source Mesh Warp Controls: The Insert interface
has been streamlined with an improved layout to focus on essential tasks. The new
Source Mesh Grid view controls make it easier to preview and edit simple to complex
mesh distortions.
Architecture updates
• Apple silicon support: Mocha now supports Apple silicon Mac ARM-64 hardware
12
Mocha® 2022 User Guide
• VFX Platform 2021: Mocha is updated to support the new reference platform for
the VFX industry standard.
• After Effects Multithreaded support: Mocha Pro now supports After Effects MFR
(multi-threaded rendering currently in AE beta).
Tracking improvements
• Quick Stabilize Preview Update: You can now quick-stabilize pan and zoom via
any layer rather than just the currently selected layer. This option is available via a
dropdown on the Quick Stabilize button.
• Multi-linking: Link multiple selected layers to the same track using “Link to Track”
• Mesh Track Using Existing Data: Linking PowerMeshes to existing planar tracking
layers makes it easier to combine planar tracking with PowerMesh tracking for roto
and other tasks.
• RGB Tracking: You can now select individual channels for tracking rather than just
Luminance or Auto Channel
• RGB views: Preview each channel separate from the RGB dropdown in View
controls.
Exports
• PowerMesh to Nuke Tracker: Create a single Nuke tracker node with trackers
representing every vertex in the PowerMesh.
• Silhouette shapes with split transform data: Silhouette shapes now export with
keyframe data split out to make it easier to add new Silhouette shapes which inherit
the tracking data.
• Nuke Roto nodes with split transform data: Nuke Roto now exports with
keyframe data split out to make it easier to add new Nuke roto splines which inherit
the tracking data
• Mistika Corner Pin: You can now export Mocha planar tracking corner data to
Mistika as point tracking data.
See the Exporting Tracks and Exporting Mattes chapters for more details.
13
Mocha® 2022 User Guide
Dopesheet improvements
• Slide keyframes: You can now move all keyframes easily to new positions in the
timeline.
• Keyframe zooming: It is now much is easier to zoom into selected keyframes and
zoom out to all keyframes
Minor Updates
• 360 spline editing has been improved so over warping no longer occurs on large
perspective changes
• Improved AdjustTrack parameters now adjust all track keyframes based on the
motion types selected
• Data exports from Mocha to Silhouette now contain Silhouette-friendly frame offsets
14
Mocha® 2022 User Guide
Interface Overview
To quickly get familiar with Mocha before you dive into the rest of the manual, here is
a breakdown of the interface and its controls.
Some parts of the Interface Overview uses the Mocha Pro Interface.
Versions of the Mocha Pro Plugin, Mocha HitFilm, Mocha for After
Effects etc. may differ in presentation, but their tools perform the
same function
Layouts
Mocha layouts are modifiable, allowing you to hide or reveal many parts of the interface.
These layouts are clustered into 4 default types you can build from.
Essentials Layout
Mocha begins in the Essentials layout, which provides a simplified interface for basic
tracking and roto.
15
Mocha® 2022 User Guide
The basic toolbar provides a minimal set of tools without cluttering the interface.
The Essentials panel on the left side of the window combines everything you need for
a basic track.
16
Mocha® 2022 User Guide
1. Translation
2. Scale
3. Rotation
5. Perspective
Track Buttons
Link to Track
To attach a spline layer to an existing track, or detach it from a track entirely. See
Tracking Basics and Rotoscoping Basics for more information on the benefits of Link
to Track.
Surface
These buttons control viewing and expanding the surface. See Tracking Basics for how
to use the surface effectively.
• Show surface (tracking data): Reveals the blue surface that represents the
tracking data.
• Show grid: Reveals a useful grid for lining up the surface or monitoring for drift in
a track.
• Align surface: Expands the surface to fit the dimensions of the footage on the
current frame.
Classic Layout
For Mocha veterans, the Classic layout is arranged like the original Mocha.
17
Mocha® 2022 User Guide
Use this mode if you are familiar with Mocha and want access to all the parameters
and tools.
Roto Layout
Like the Essentials layout, this layout is optimized specifically for roto sessions where
only the most necessary panels and tools are shown.
If you want to reduce all clutter entirely, the Big Picture layout is very useful for
previewing shots without any elements getting in the way.
• Timeline controls
• Toolbars
• View controls
• Etc.
These can either be access by right clicking the area of the interface and choosing a
GUI element to show or hide, or selecting from the View menu.
18
Mocha® 2022 User Guide
Any changes you make to a layout will not be saved unless you choose View |
Layout | Save Current Layout.
For example if you like the Essentials layout, but would like the Advanced toolbar from
the Classic layout:
This will now save the Essentials layout with the new toolbar.
You can add, order or remove layouts from the Manage Custom Layouts dialog in the
same sub-menu. Any new layout will automatically be assigned a Ctrl/CMD + Number
shortcut based on the order of the layouts, up to 9.
If you have made changes to a saved layout want to revert back to the saved version,
just choose View | Layout | Revert to saved.
If you want to revert back to the original default layout, just choose View | Layout
| Revert to default.
At the very top of the interface you have the tools that form the brunt of your time inside
Mocha.
19
Mocha® 2022 User Guide
20
Mocha® 2022 User Guide
21
Mocha® 2022 User Guide
Basic Toolbar
In Essentials Mode, only a basic set of these tools is shown, to simplify the interface.
22
Mocha® 2022 User Guide
23
Mocha® 2022 User Guide
See descriptions in Advanced Toolbar above for the rest of the tools.
These controls cover what can been seen or hidden while working in the Mocha viewer.
The Viewer controls are turned off in some layouts. You can turn
them on via the View menu.
24
Mocha® 2022 User Guide
The timeline controls cover frame range, playback, tracking controls and key-framing.
Some timeline controls may not be visible in certain layouts. You can
turn them on via the View menu or by right-clicking the timeline.
25
Mocha® 2022 User Guide
26
Mocha® 2022 User Guide
Layer Controls
27
Mocha® 2022 User Guide
The top left hand panel contains the tools to manage layers.
Layer Icons:
28
Mocha® 2022 User Guide
Layer Properties
The section under the Layer Controls panel contains the properties for each layer.
• Layer In/Out frames: Settings to change where the layer turns on and off in the clip
• Blend mode: Dropdown to add or subtract your spline to the current layer. Invert
flips this
• Insert Clip: Insert a demo clip to preview your track. You can use one of the defaults
or import your own. For preview purposes only
29
Mocha® 2022 User Guide
• Matte Clip: Replaces the current layer splines with a matte clip.
• Link to Track: Which layer’s track to link your layer splines to. Can also be set to
None. You can select multiple layers before choosing this option.
• Link to adjusted track: Optional checkbox to link the layer splines to the adjusted
track of the selection in “Link to Track”
Cache Management
In Mocha v5 we introduced manual cache clearing to allow you to clear the Mocha
cache at the project, render or global level.
You can access the Clear Cache option from the file menu under File → Clear Cache…
• Project Cache: Clear the cache for the currently loaded project
• Rendered Clips: Clear just the rendered clips for the project
Only clear the Global Cache if you are certain you don’t want any of your existing project
caches to remain.
Whenever you close the Mocha Plugin GUI, any renders you perform
are cleared in order to make sure that you get a reliable render in
the host.
If you want to keep a render you have completed inside Mocha,
it is important that you export it first from the File menu.+ If you
want to learn more about this, see the File and Clip section of
Troubleshooting Mocha issues.
30
Mocha® 2022 User Guide
31
Mocha® 2022 User Guide
Stereo Interface
Some interface elements change when using Stereo footage. This section covers what
new icons appear and how to interact with them.
Viewing in Stereo
In stereo mode you will see 3 buttons in the View Controls next to the clip view drop
down on the left:
• Two buttons to show individual Left or Right views (L and R). These button names
change according to the abbreviation you assign them in Project Settings.
• A 3D button to preview stereo views
You can preview stereo work at any time by turning on the 3D button in the view
controls.
Clicking and holding on the 3D button will give you a range of stereo view options.
32
Mocha® 2022 User Guide
Both these buttons and their uses are covered in the Stereo Tracking and Stereo Roto
sections of the User Guide.
33
Mocha® 2022 User Guide
The Mocha Pro plugins are separate from the standalone Mocha and can be applied
as an effect directly onto layers in host applications.
This reduces the need to swap out of your host application and streamlines getting
data in and out of Mocha.
The biggest advantage is you can set up layers and module settings in Mocha as
normal, and then have the results render directly to the host timeline without having
to export.
In addition to the controls below, VR features also contain a separate area in the Module
Renders section to control lens distortions without having to first open the Mocha Pro
GUI:
The guides below are using examples of the Mocha Pro plugin.
For more information on using the 360 Features in the Mocha Pro
Plugin, see Using Mocha for 360 workflow
The Mocha Pro plugin supports different types of 360 and Stereo footage via the
"Views" drop down:
34
Mocha® 2022 User Guide
• Mono: This is the default option and works with standard (non-stereo) footage.
• Stereo (Separate eyes): This takes two separate footage streams. When chosen,
the option to choose another source for the right eye is enabled. If you are using
the Stereo option, you will need to select the "Stereo Output" view (Left or Right)
that you want to apply output to.
Choosing one of the 360 options automatically sets your Mocha project to be
Equirectangular 360. This will enable VR features:
• 360 Stereo: This takes two separate 360 footage streams. When chosen, the option
to choose another source for the right eye is enabled. If you are using the Stereo
option, you will need to select the "Stereo Output" view (Left or Right) that you want
to apply output to.
35
Mocha® 2022 User Guide
• 360 Left/Right: Left/Right is also commonly known as "Side by Side". When used,
Mocha will split the footage exactly in half vertically and use the Left and Right halves
for each eye. The output to the hosr will automatically double up to the split views.
You can also choose to Swap the Left and Right eye input by checking the Swap Views
checkbox.
• Nuke: Nuke has native OFX stereo support and so only requires one Source input
if you are using the "Stereo" option. If you have separate left and right eye sources,
apply a "Join Views" node to combined them and feed the output into the Source
input of the Mocha node.
• Vegas Pro: Vegas Pro also has native stereo support. You will only see two options:
Mono and Stereo. The "Stereo" option will read the native set up and feed in both
eyes to the Mocha GUI.
As you go through the user guide, you will see sections on how to apply Mocha
techniques to your stereo footage where relevant.
The Mocha Pro Plugin for Adobe appears in the Effects menu like every other effect.
Simply apply the effect to the layer you want to work with.
36
Mocha® 2022 User Guide
1. Select any additional source layers you want to use inside Mocha
37
Mocha® 2022 User Guide
2. Launch Mocha. This will load a full version of the Mocha interface that you can use
just like the standalone version.
3. Use Mocha as required and then close and save. No rendering is required inside
Mocha unless you want to.
4. Choose whether you want to use mattes, renders or any other data from Mocha
back in the plugin interface.
Once you have applied the Mocha Pro effect, you can click on the Mocha button to
launch the main interface.
This then becomes exactly like working in the standalone version of Mocha, with a
few exceptions. First, you will notice you don’t need to set up a project like in the
standalone version. The source layer is automatically loaded and ready to track in the
view. Secondly you don’t need to save out a project file (unless you want to export it).
You just close and save the Mocha view when done and the project is saved inside the
Effect like any other Adobe effect.
By default, the starting timeline frame will always be zero, which will not affect your
data generation back in After Effects.
For users using timecodes instead of frame numbers in After Effects, the correct
timecode offset will display inside the Mocha GUI.
For further details on how to use anything inside the Mocha GUI, see the rest of the
User Guide!
The Mocha Pro Plugin interface is almost exactly the same as the
standalone interface, so most of the usual guide and video tutorials
can be applied to the plugin.
Controlling Mattes
Once you have tracked layers in Mocha, you can then control the mattes for these
layers back in the plugin interface.
38
Mocha® 2022 User Guide
• View Matte: Show the black and white matte from the Mocha layers chosen. This
is very useful if you want to just see any problems with the matte, or you want to
use the output as a track matte.
• Visible Layers: This button launches the Visible Layers dialog so you can select the
layers you want visible as mattes. You can also edit the Layer names in this window.
• Shape: This drop down lets you switch between All Visible and All mattes. All Visible
mattes are controlled by the Visible Layers dialog.
• Feather: Applies a blur to the matte. This feathering is independent of the feathering
of the individual layers inside Mocha.
• Create AE Mask: Creates native AE splines on the effect layer just like "Paste
Mocha mask". This function is only available in After Effects.
If you are using the Stereo option in After Effects, you will need to select the "Stereo
Output" view (Left or Right) that you want to apply output to. If you are using Top/Bottom
or Left/Right, the output will automatically double up to the split views.
Once you have set up layers in Mocha, you can then control the renders for each
module back in the plugin interface. Note that you do need to have set up and tracked
the correct layers in order for a render to work back in the host.
39
Mocha® 2022 User Guide
You have the following options to render a module back in the plugin:
• Module: The module render you want to see. You have options
of Insert: Composite, Insert: Cutout, Remove, Stabilize, Stabilize:Unwarp,
Stabilize:Warp,Lens: Distort, Lens: Undistort and Reorient
• Warp Quality: This drop down activates when you are using Stabilize:Unwarp and
Stabilize:Warp options. It controls the render quality of the warp. See the Warp
Mapping section of the stabilize module.
• Insert Layer: For any inserts you want to apply to a layer surface and render back
to the host.
• Insert Blend Mode: Controls the Blending for Insert:Composite. If left to "Default"
it will render what has been set inside the Mocha project. If changed, it will override
all insert layers in the project.
• Insert Opacity: Overrides the default insert opacity set inside the Mocha project.
There are also parameters for controlling the view in Lens:Distortion rendering for VR
360 footage.
See Using Mocha for 360 workflow for more on how to use the VR Lens controls.
40
Mocha® 2022 User Guide
1. Pick the layer you want to use as an insert from the Insert Layer drown down in
the Mocha Pro effect
Your Insert should then appear inside the layer where you have placed your surface.
If you have a tracked layer in Mocha you can see the output of its surface back in the
After Effects interface. Each point in the Tracking Data section is a point from the layer
surface that automatically updates when you modify it inside Mocha.
To choose a layer to create tracking data from, click the Create Track Data button in
the Tracking Data section of the plugin.
41
Mocha® 2022 User Guide
Then choose ether the name or the cog of the layer you want to read tracking data
from in the dialog that appears.
Once you click OK, the plugin will generate keyframes to populate the tracking
parameters in the plugin. You can then use this data to copy to other layers, or link
via expressions.
42
Mocha® 2022 User Guide
This option is only available in the After Effects version of the plugin.
Generating keyframe data can take some time for very long shots.
You can cancel generation at any time when the progress bar
appears.
The plugin interface also allows you to apply tracking data to other layers without
needing to export from the Mocha GUI. Do do this, you generate the tracking data from
a layer, as described above in Controlling Tracking Data.
You can then choose an export option at the bottom of the Tracking Data section:
• Corner Pin: (Support Motion Blur): A corner pin distortion with separate scale,
rotation and position.
Clicking Apply Export then copies the information to the specified layer.
The After Effects Mocha Pro Plug-In also has a section for PowerMesh, which provides
the ability to generate nulls based on each vertex in a tracked Mesh.
1. Make sure you have tracked a Layer in Mocha Pro using the Mesh parameter
2. Select "Create Nulls…" under the PowerMesh section of the Adobe Mocha Pro
Plugin interface
4. Click OK
43
Mocha® 2022 User Guide
If you are generating from a vertex-heavy mesh, Mocha will show a progress bar while
generating the nulls. Each Null will be created separately with its own keyframes.
The Mocha Pro Plugin for Adobe appears in the Effects menu like every other effect.
Simply apply the effect to the layer you want to work with.
1. Select any additional source layers you want to use inside Mocha
2. Launch Mocha. This will load a full version of the Mocha interface that you can use
just like the standalone version.
3. Use Mocha as required and then close and save. No rendering is required inside
Mocha unless you want to.
44
Mocha® 2022 User Guide
4. Choose whether you want to use mattes, renders or any other data from Mocha
back in the plugin interface.
The Mocha Pro Plugin interface is almost exactly the same as the
standalone interface, so most of the usual guide and video tutorials
can be applied to the plugin.
Once you have applied the Mocha Pro effect, you can click on the Mocha button to
launch the main interface.
This then becomes exactly like working in the standalone version of Mocha, with a
few exceptions. Firstly, you will notice you don’t need to set up a project like in the
standalone version. The source layer is automatically loaded and ready to track in the
view. Secondly you don’t need to save out a project file (unless you want to export it).
You just close and save the Mocha view when done and the project is saved inside the
Effect like any other Adobe effect. For further details on how to use anything inside the
Mocha GUI, see the rest of the User Guide!
Controlling Mattes
Once you have tracked layers in Mocha, you can then control the mattes for these
layers back in the plugin interface.
• View Matte: Show the black and white matte from the Mocha layers chosen. This
is very useful if you want to just see any problems with the matte, or you want to
use the output as a track matte.
45
Mocha® 2022 User Guide
• Visible Layers: This button launches the Visible Layers dialog so you can select the
layers you want visible as mattes. You can also edit the Layer names in this window.
• Shape: This drop down lets you switch between All Visible and All mattes. All Visible
mattes are controlled by the Visible Layers dialog.
• Feather: Applies a blur to the matte. This feathering is independent of the feathering
of the individual layers inside Mocha.
Once you have set up layers in Mocha, you can then control the renders for each
module back in the plugin interface. Note that you do need to have set up and tracked
the correct layers in order for a render to work back in the host.
You have the following options to render a module back in the plugin:
• Module: The module render you want to see. You have options
of Insert: Composite, Insert: Cutout, Remove, Stabilize, Stabilize:Unwarp,
Stabilize:Warp,Lens: Distort, Lens: Undistort and Reorient
• Warp Quality: This drop down activates when you are using Stabilize:Unwarp and
Stabilize:Warp options. It controls the render quality of the warp. See the Warp
Mapping section of the stabilize module.
• Insert Layer: For any inserts you want to apply to a layer surface and render back
to the host.
46
Mocha® 2022 User Guide
• Insert Blend Mode: Controls the Blending for Insert:Composite. If left to "Default"
it will render what has been set inside the Mocha project. If changed, it will override
all insert layers in the project.
• Insert Opacity: Overrides the default insert opacity set inside the Mocha project.
There are also parameters for controlling the view in Lens:Distortion rendering for VR
360 footage.
See Using Mocha for 360 workflow for more on how to use the VR Lens controls.
1. Pick the video track you want to use as an insert from the Insert Layer drown down
in the Mocha Pro effect
Your Insert should then appear inside the layer where you have placed your surface.
47
Mocha® 2022 User Guide
The Mocha Pro Plugin for Adobe appears in the Effects menu like every other effect.
Simply apply the effect to the layer you want to work with.
48
Mocha® 2022 User Guide
1. Select any additional source layers you want to use inside Mocha
2. Launch Mocha. This will load a full version of the Mocha interface that you can use
just like the standalone version.
3. Use Mocha as required and then close and save. No rendering is required inside
Mocha unless you want to.
4. Choose whether you want to use mattes, renders or any other data from Mocha
back in the plugin interface.
The Mocha Pro Plugin interface is almost exactly the same as the
standalone interface, so most of the usual guide and video tutorials
can be applied to the plugin.
Once you have applied the Mocha Pro effect, you can click on the Mocha button to
launch the main interface.
This then becomes exactly like working in the standalone version of Mocha, with a
few exceptions. Firstly, you will notice you don’t need to set up a project like in the
standalone version. The source layer is automatically loaded and ready to track in the
view. Secondly you don’t need to save out a project file (unless you want to export it).
You just close and save the Mocha view when done and the project is saved inside the
Effect like any other AVX effect. For further details on how to use anything inside the
Mocha GUI, see the rest of the User Guide!
Controlling Mattes
Once you have tracked layers in Mocha, you can then control the mattes for these
layers back in the plugin interface.
49
Mocha® 2022 User Guide
• View Matte: Show the black and white matte from the Mocha layers chosen. This
is very useful if you want to just see any problems with the matte, or you want to
use the output as a track matte.
• Visible Layers: This button launches the Visible Layers dialog so you can select the
layers you want visible as mattes. You can also edit the Layer names in this window.
• Visible Layers Dropdown: This drop down lets you switch between All Visible and
All mattes. All Visible mattes are controlled by the Visible Layers dialog.
• Feather: Applies a blur to the matte. This feathering is independent of the feathering
of the individual layers inside Mocha.
Once you have set up layers in Mocha, you can then control the renders for each
module back in the plugin interface. Note that you do need to have set up and tracked
the correct layers in order for a render to work back in the host.
50
Mocha® 2022 User Guide
You have the following options to render a module back in the plugin:
There are also parameters for controlling the view in Lens:Distortion rendering for VR
360 footage.
51
Mocha® 2022 User Guide
See Using Mocha for 360 workflow for more on how to use the VR Lens controls.
1. Pick the video track you want to use as an insert from the Insert Layer drown down
in the Mocha Pro effect. This will most commonly be "1st Below" the current layer
with the effect applied.
52
Mocha® 2022 User Guide
Your Insert should then appear inside the layer where you have placed your surface.
Stereo Workflow
3. Open Mocha, and the views will be mapped automatically to the left and right views.
If you have a license for the OFX version it will work in any of the OFX hosts listed
below. Keep in mind that while the Mocha OFX plugin is designed to be used in multiple
applications, it does not support all OFX hosts.
In many cases some functionality may be possible for unsupported hosts, but there is
no guarantee of functionality or stability, so please take care when experimenting!
Inside Flame, the Mocha Pro Plugin for OFX appears in the OpenFX Plugin loader
panel like every other OFX plugin.
To get full use of the Mocha Pro plugin, we recommend using it as a batch effect.
53
Mocha® 2022 User Guide
3. In the OpenFX plugin panel, click Load Plugin and navigate to Boris FX Mocha and
choose Mocha Pro
4. Once loaded into the Effects panel, you can just click the Launch Mocha UI button
to open the Mocha Pro interface.
54
Mocha® 2022 User Guide
Inside Fusion Studio, the Mocha Pro Plugin for OFX appears in the Tool menu like
every other effect. Just choose Boris FX Mocha > Mocha Pro.
Once loaded into the flow graph, simply plug the image node you want to work with
into the Source input of the Mocha Pro effect node.
55
Mocha® 2022 User Guide
Inside Nuke, the Mocha Pro Plugin for OFX appears in the toolbar menu like every
other effect.
You can also call the Mocha Pro effect from the Tab key by searching for Mocha Pro
or right-click and choose Boris FX Mocha > Mocha Pro.
Mocha Pro node in Nuke node graph (Footage courtesy of Chris Heuer):
56
Mocha® 2022 User Guide
Once loaded into the node graph, simply plug the image node you want to work with
into the Source input of the Mocha Pro effect node.
Nuke has native OFX stereo support and so only requires one
Source input if you are using the "Stereo" option.
57
Mocha® 2022 User Guide
If you have separate left and right eye sources, apply a "Join Views"
node to combined them and feed the output into the Source input of
the Mocha node.
In Silhouette, Mocha Pro Plugin for OFX appears in the nodes menu like every other
effect.
Once loaded into the tree window, simply plug the image node you want to work with
into the Source input of the Mocha Pro effect node.
58
Mocha® 2022 User Guide
Linear Workflow
Silhouette includes Linear support for the Mocha plugin. If you are using rec709 8-bit
images, you need to enable the Mocha > Linearize Images In Mocha Pro preference
in Silhouette so images look correct in the Mocha GUI. When using EXR or Cineon
images, this preference should remain off.
You can also use the built-in OCIO preferences in the Mocha Viewer Preferences.
• Event FX: Click the effect icon on the video event segment you want and then select
the Mocha effect and click OK.
59
Mocha® 2022 User Guide
• Track FX: Click the effect icon on the appropriate video track and then select the
Mocha effect and click OK.
• Track Composite Mode: Choose Custom… in the Compositing Mode options then
select the Mocha effect and click OK.
Once loaded, you can begin with the Launch Mocha UI button at the top of the effect
panel.
60
Mocha® 2022 User Guide
Mocha uses two sources from the timeline for inserting clips: The main background
image source to track from and a secondary image source to insert into a tracked layer.
To use a secondary source input in Vegas for Insert clips you need to composite your
tracks together:
1. Set the Insert clip you want to use as the parent layer and the plate you want the
insert to be rendered over as the child
2. Click the Track Compositing mode on the parent insert layer and select Custom…
61
Mocha® 2022 User Guide
This will then load the secondary source into any layer Insert clip dropdown as a clip
called Insert Layer. See Rendering Insert Layers below.
Vegas Pro has native stereo support. When working with stereo in
Mocha you will only see two options: Mono and Stereo. The "Stereo"
option will read the native set up and feed in both eyes to the Mocha
GUI.
1. Select any additional source you want to use as an insert in Mocha and plug it into
the Insert input (See Rendering Insert Layers below.)
2. Launch the Mocha UI using the button at the top of the panel. This will load a full
version of the Mocha interface that you can use just like the standalone version.
3. Use Mocha as required and then close and save. No rendering is required inside
Mocha unless you want to.
4. Choose whether you want to use mattes, renders or any other exported data from
Mocha back in the plugin interface.
The Mocha Pro Plugin interface is almost exactly the same as the
standalone interface, so most of the usual guide and video tutorials
62
Mocha® 2022 User Guide
Once you have applied the Mocha Pro effect, you can click on the Launch Mocha UI
button to launch the main interface.
This then becomes exactly like working in the standalone version of Mocha, with a
few exceptions. Firstly, you will notice you don’t need to set up a project like in the
standalone version. The source layer is automatically loaded and ready to track in the
view. Secondly you don’t need to save out a project file (unless you want to export it).
You just close and save the Mocha view when done and the project is saved inside
the effect. For further details on how to use anything inside the Mocha GUI, see the
rest of the User Guide!
Controlling Mattes
Once you have tracked layers in Mocha, you can then control the mattes for these
layers back in the plugin interface.
• View Matte: Show the black and white matte from the Mocha layers chosen. This
is very useful if you want to just see any problems with the matte, or you want to
use the output as a track matte.
• Visible Layers Button: This button launches the Visible Layers dialog so you can
select the layers you want visible as mattes. You can also edit the Layer names in
this window.
63
Mocha® 2022 User Guide
• Visible layers Dropdown: This drop down lets you switch between All Visible and
All mattes. All Visible mattes are controlled by the Visible Layers dialog.
• Feather: Applies a blur to the matte. This feathering is independent of the feathering
of the individual layers inside Mocha.
You have the following options to render a module back in the plugin:
• Module: The module render you want to see. You have options
of Insert: Composite, Insert: Cutout, Remove, Stabilize, Stabilize:Unwarp,
Stabilize:Warp,Lens: Distort, Lens: Undistort and Reorient
• Warp Quality: This drop down activates when you are using Stabilize:Unwarp and
Stabilize:Warp options. It controls the render quality of the warp. See the Warp
Mapping section of the stabilize module.
There are also parameters for controlling the view in Lens:Distortion rendering for VR
360 footage.
See Using Mocha for 360 workflow for more on how to use the VR Lens controls.
64
Mocha® 2022 User Guide
To use the Insert input from your host application in Insert renders:
1. Pick the image you want as an insert and make it available for the Mocha plugin
to use:
• For node based compositors you can plug the insert image into the Insert input
on the the Mocha Pro effect node.
• In Vegas you need to make the insert image the parent in compositing mode.
See Using the Insert Layer clip in Vegas for this method.
• In HitFilm, you select the insert image from one of your other layers in the comp
listed in the "Insert" dropdown
2. Launch the Mocha GUI
3. Create a layer (or pick an existing layer)
4. On the Layer Properties panel, choose the Insert Clip dropdown
5. Select Insert Layer
Your Insert should then appear inside the layer where you have placed your surface.
65
Mocha® 2022 User Guide
4. Select Import
The imported Insert should then appear inside the layer where you have placed your
surface.
Once you have set up your render in the Insert Module, you can then render back to
the host:
3. Select either "Insert: Composite" or "Insert: Cutout" from the "Module" dropdown
You can also adjust the Insert Blend Mode and the Insert Opacity from the plugin
interface without needing to go back into Mocha:
• Insert Blend Mode: Controls the Blending for Insert:Composite. If left to "Default"
it will render what has been set inside the Mocha project. If changed, it will override
all insert layers in the project.
• Insert Opacity: Overrides the default insert opacity set inside the Mocha project.
You can either turn Alpha off entirely by toggling off the button, or choose from one of
the following options:
66
Mocha® 2022 User Guide
• Auto alpha: Reads in alpha if it is not opaque or premultiplied. This is the default
setting.
• Source alpha: This option shows the alpha as given from the source.
Auto alpha may be necessary when working with some source inputs in Nuke.
When rendering back out to the host, there are cases where you may also need to
premultiply the alpha using the premultiply options in the plugin interface.
In these cases you can choose an option from the Premultiply dropdown:
Stereo Workflow
2. Choose the stereo type from the Views drop down: Top/Bottom, Left/Right or Stereo
3. If you are using the Stereo option, make sure you are applying the effect to the Left
eye footage and choose your right-eye source input
4. Open Mocha, and the views will be mapped automatically to the left and right views.
Some OFX hosts handle stereo support differently. See your specific
host notes in this chapter for instructions. Especially Nuke and
Vegas.
67
Mocha® 2022 User Guide
• 3D Camera solving
• Matte rendering
However, you can also use the Mocha Pro OFX plugins in the HitFilm interface.
To add Mocha, simply locate it in the Effects panel like any other effect and drag it
onto your layer.
Once your layer is hooked up to your Mocha Effect, the general workflow for the Mocha
Plugin is as follows:
68
Mocha® 2022 User Guide
1. Launch the Mocha UI using the Launch Mocha UI button at the top of the panel.
This will load a full version of the Mocha interface that you can use just like the
standalone version.
3. Export any data if needed (tracks, shapes or camera solve data) then close and
save
4. Choose any mattes you want to use from Mocha back in the plugin interface
5. If you are using Mocha Pro, choose the renders you wish to use from the "Module
Renders" section and check "Render"
The Mocha HitFilm Plugin interface is almost exactly the same as the
standalone interface, so most of the usual guide and video tutorials
can be applied to the plugin.
Once you have applied the Mocha effect, you can click on the Launch Mocha UI button
to launch the main interface.
This then becomes exactly like working in the standalone version of Mocha, with a few
exceptions.
First, you will notice you don’t need to set up a project like in the standalone version.
The source layer is automatically loaded and ready to track in the view.
Secondly, you don’t need to save out a project file (unless you want to export it). You just
close and save the Mocha view when done and the project is saved inside the effect.
For further details on how to use anything inside the Mocha GUI, see the rest of the
User Guide!
Controlling Mattes
Once you have tracked layers in Mocha, you can then control the mattes for these
layers back in the plugin interface.
69
Mocha® 2022 User Guide
• View Matte: Show the black and white matte from the Mocha layers chosen. This
is very useful if you want to just see any problems with the matte, or you want to
use the output as a track matte.
• Apply Matte: Applies the chosen mattes to the source node.
• Visible Layers Button: This button launches the Visible Layers dialog so you can
select the layers you want visible as mattes. You can also edit the Layer names in
this window.
• Visible layers Dropdown: This drop down lets you switch between All Visible and
All mattes. All Visible mattes are controlled by the Visible Layers dialog.
• Feather: Applies a blur to the matte. This feathering is independent of the feathering
of the individual layers inside Mocha.
• Invert Matte: Inverts the currently visible mattes.
If you are using the Mocha Pro version of the plugin, controlling renders is exactly like
the standard OFX rendering controls.
See Controlling Renders and Rendering Insert Layers in the section above.
70
Mocha® 2022 User Guide
When you want to start a new VR project, we highly recommend using the Mocha Pro
plugin rather than the legacy Mocha VR plugin, as this compatibility feature may be
removed in future versions.
See (360 VR and Stereo Views Workflow ) above for how to set the 360 VR modes
in new Mocha Pro projects.
71
Mocha® 2022 User Guide
4. Set the Surface, or corner pin where you want the inserted image
5. Add new shapes for rotoscoping and link them to your track
When you start the application you are presented with an empty workspace. No footage
is loaded and most of the controls are consequently disabled. To begin working, you
must open an existing project or start a new project.
72
Mocha® 2022 User Guide
Select the clip to import by clicking on the Choose… button to the right of the top line.
This will bring up a file browser, where you can select almost any industry standard
file formats. Image sequences will show up as individual frames. You can select any
one of the frames and the application will automatically sequence the frames as a clip
when importing.
73
Mocha® 2022 User Guide
Name
A project name will automatically be generated based on the filename of the imported
footage, but you can change it by editing the Name field.
Location
Your project file and cache files will output to a directory called “Results” by default. This
is created in the same folder your clip is imported from. You can change this using the
Change… button or using the dropdown box to set a different relative or absolute path.
74
Mocha® 2022 User Guide
Frame Range
The range of frames to import. We recommend to only work with the frames you need,
rather than importing very large clips or multiple shots edited together.
Frame offset
This is set to the starting frame number or timecode by default. You can also define a
fixed frame (You can set a default for the fixed frame in Preferences). You also have the
option to view as Timecode or Frame numbers. If your clip has an embedded timecode
offset and you switch to Timecode, the offset will be used in your project. If you need to
adjust this value later, you can open Project Settings from the file menu. See "Project
Frame Offsets and Clip Frame Offsets" below for more details.
Frame Rate
Normally this is automatically detected, but you have options to adjust if necessary.
Make sure you check the frame rate before you close the New Project dialog. If you
need to adjust this value later, you can open Project Settings from the file menu.
Separate Fields
If you are using interlaced footage, set your field separation here to Upper or Lower.
Make sure you check your fields match your footage before you close the New Project
dialog. If you don’t set them correctly, you cannot modify them and will have to restart
the project.
Remove Pulldown
75
Mocha® 2022 User Guide
Advanced options
Caching
If you wish the clip to be cached into memory, check the Cache clip checkbox here.
Caching is recommended if you are working a computer that has fast local storage,
but your shot is stored in a slow network location. If your shot is already stored on fast
storage, you don’t need to cache. More often than not, you can leave this setting off.
Color space
Conversion
76
Mocha® 2022 User Guide
Offset
Soft clip
If working with log color space, set soft clip value here. Default is zero making falloff
linear, rather than curved.
If working with log color space, set white reference value here.
If working with log color space, set black reference value here.
Gamma
If working with log color space, you can adjust Gamma here.
When you start a New Project you are also presented with the option of creating a
multiview project in the Views tab.
77
Mocha® 2022 User Guide
If you check Multiview project you are then presented with the view names and their
abbreviated names. The abbreviated name is used in the interface for the view buttons,
but is also used as the suffix for renders. You can also choose the hero view. By default
this is the left. Defining a hero eye determines the tracking and roto order for working
in the views.
If you are using Top/Bottom or Left/Right footage combined in a single frame, select
an option from the Split Views drop down:
78
Mocha® 2022 User Guide
If you want to define separate streams of footage for the stereo views, you can add
additional footage streams view the Add button below the initial clip chooser.
If you forget to set up Multiview when you start a new project, you can set it in the new
Project Settings Dialog from the File menu.
Once you are in Multiview mode, you will see a colored border around the viewer based
on the current view you are in. This is to help artists to identify which view they are
currently in without having to refer to the buttons
You can switch between Views by pressing the corresponding L|R buttons in the view
controls, or using the default 1 and 2 keys on the keyboard.
You can swap views or change the Split View mapping from the View Mapping subtab
under the Clip module:
The basic new project workflow for Mocha Pro Plugin is:
79
Mocha® 2022 User Guide
This action loads the footage from the host clip you applied the effect to. It automatically
applies the correct frame rate and other clip settings, so there is no need for the
standard new project dialog.
After you have done the usual work inside the Mocha Pro interface, you simply close
and save the Mocha Pro GUI and then you can control the output from the effect editor
interface.
For general guide to workflow with the Mocha plugin, see Using the Mocha Pro Plugin.
For setting up a new stereo project with the plugin, see Plugin Stereo Workflow.
This action loads the footage from the host clip you applied the effect to. It automatically
applies the correct frame rate and other clip settings, so there is no need for the
standard new project dialog.
After you have done your tracking and/or roto work, you simply close and save the
Mocha PixelChooser and it applies any visible layers as mattes back to the effect.
80
Mocha® 2022 User Guide
If you will only be working on a section of the shot you can use the In and Out points
to set the range on the timeline. Note that the In and Out points affect the range of the
Überkey button. You can zoom the timeline to only show you the part between you In
and Out points by clicking the Zoom Timeline button.
• Project Frame Offset: This frame offset sets the starting frame for keys in your
timeline. For example if you have imported a sequence of 100 frames and you need
the index of frames to start at 1001, you can change this under the Project Settings
in the file menu.
• Clip Frame Offset: This frame offset is to offset the actual clip frames to slide the
starting point of the clip back and forth. You can adjust clip frame offset under the
Display tab in the Clip module.
For the vast majority of cases the Project Frame Offset is the value you want to adjust
for working with data. The frame offset is usually already set correctly at the New Project
dialog stage, but there may be cases where offsets change, such as adding new clip
frames.
Working with very long files can be time consuming for the artist and can slow down
the tracking as it searches for more frames. Try to only use what you need, and work
on individual shots, rather than multiple shots in one piece of footage.
81
Mocha® 2022 User Guide
Make sure these values match the settings in your compositor or editor, otherwise
tracking and shape data will not match when you export it.
If you are unsure which field your interlaced footage is in, import it and check
If you quickly start your project with a guessed field order, you can check to make sure
it is correct by using the right arrow key to step through the footage. If you footage
stutters or steps back a frame while you’re stepping through, it is probably in the wrong
field order, or you may have to set pulldown.
Interlaced footage is painful to work with. For your own sanity, try not to use it unless
you have to!
82
Mocha® 2022 User Guide
When it comes time to export out mattes or do final tweaks you can use the Merge
Project option to combine any files that have been used on the same piece of footage.
Simply select the Merge Project option from the File menu, and select a project you
wish to merge. You can only merge projects that are the same dimensions, aspect ratio
and frame length as the shot you are merging into.
NOTE: You cannot merge projects from versions of Mocha earlier than 3.0.0.
1. Open or create a project with matching footage and same dimensions as the
Silhouette file. This is important. Your Silhouette project file will need to match the
frame rate, dimensions and length of the Mocha project to correctly import.
3. Choose a Silhouette sfx project file. If you are in OS X, you may need to navigate
inside the sfx package to find the actual project file.
4. Click Open
The Silhouette project will then convert any Bezier and X-splines to native Mocha
splines and appear in the project. If there are any B-Spline layers in the project, these
will not be imported as they are currently not supported.
83
Mocha® 2022 User Guide
84
Mocha® 2022 User Guide
Tracking Basics
Some tools, parameters and techniques listed below may not be
visible in Essentials mode. To see additional interface elements,
switch to Classic mode. See the Layouts section for more
information.
Boris FX’s Planar Tracker technology provides 2D tracking data by tracking planes
rather than points.
The key to getting the most out of the Planar Tracker is to learn to find planes of
movement in your shot which coincide with the object that you want to track or roto.
Sometimes it will be obvious - other times you may have to break your object into
different planes of movement. For instance if you were tracking a tabletop, you would
want to draw the spline to avoid the flower arrangement in the center of the table — it
is not on the same plane and will make your track less accurate.
To select a plane you simply draw a spline around it. You can be fairly loose with your
spline — the Planar Tracker is intelligent enough to discard the pixel movement that
doesn’t conform to the movement of the majority of the pixels within the shape.
X-Spline
In general X-Splines work better for tracking, especially with perspective motion. We
recommend using these splines where possible.
85
Mocha® 2022 User Guide
Bézier Spline
Bézier Splines are also very versatile for roto and is the industry spline standard.
You can choose between a GPU or a CPU tracker in Preferences. By default, GPU is
selected, but will fall back to CPU if an operation is not supported by the GPU version.
The GPU option allows you to select any supported graphics card on your system to
take on the brunt of the tracking process. The resulting speed improvement is especially
noticeable on high resolution footage or when tracking large areas.
86
Mocha® 2022 User Guide
It’s best to think of the splines you draw around objects as search areas. Here’s a
breakdown of how the tracking works:
1. By default, any spline you draw is linked to the tracking data of the layer it is currently
in. In hierarchical terms, the spline is the child of the track, even if there is no tracking
data.
2. When you begin to track a layer, the area of detail contained within the spline(s)
you have drawn will be searched for in the next frame.
3. If the planar tracker finds the same area in a following frame, it will tell the tracker
to move to that point. Because the spline is linked to the track by default, it will also
move along with it and the search begins again for the next frame.
To see this relationship, turn on your surface and/or grid in the viewer after you have
tracked something. Scrub the timeline and you will see that the grid and surface move
with the spline.
Now select all the points of your spline and move it around the viewer. You will notice
that the surface/grid will stay in the same place.
This is because the spline is linked to the track, but the track is not linked to the spline.
The spline is merely a search area to tell the track where to go next. It is a common
misconception that moving the spline while tracking is affecting the movement of the
tracking data. It is not. Moving the spline is only telling the tracker to look in a different
place and will not directly affect the motion of the tracking.
This makes the tracker very powerful, as you can move and manipulate your spline
area around while tracking to avoid problem areas or add more detail for the search.
You can even unlink the spline from the track entirely so that any planar surface passing
under the stationary spline area is tracked and you don’t have to move the spline if
tracking starts to go off screen.
87
Mocha® 2022 User Guide
1. Select one of the spline tools to create a shape around the outside edge of the area
you wish to track.
3. After the third point, the shape will auto-close, but you can continue to add points.
4. When drawing splines it is best to keep the shape not tight on the edge, but actually
give a little space to allow for the high contrast edges to show through, as these
provide good tracking data.
6. If you are using the X-Spline tool you can adjust the handles at each point by pulling
them out to create a straight cornered edge, or pull them in to make them more
curved. Right clicking a handle will adjust all the handles in the spline at once.
88
Mocha® 2022 User Guide
In some cases there are parts of an image that can interfere with the effectiveness of
the Planar Tracker. To handle this, you can create an exclusion zone in the area you
are tracking.
For instance, in the phone example we are using, there are frames where there are
strong reflections on the screen. These reflections can make the track jump. So we
need to isolate that area so the tracker ignores it. Here’s how this is done:
2. Select the add shape tool to add an additional shape to the current layer, which
selects the area you want the tracker to ignore.
3. Draw this second shape inside the original shape. Note that both splines have the
same color, which is an indication that they belong to the same layer. Also you will
notice in the Layer Controls panel that you only have a single layer.
89
Mocha® 2022 User Guide
4. By turning on the Mattes button under View Controls you can see the area that will
be tracked.
90
Mocha® 2022 User Guide
You can also add as many entirely new layers on top of your tracking layer to mask
out the layers below.
The tracking layer uses the matte data of the combined layers you
have drawn. This matte is the outer edge of the tracking layer matte
minus the inner edge of the layers in front, regardless of feathering.
This is quite common when moving people, limbs, cars, badgers etc. get in front of the
object you are trying to track.
Tracking Parameters
In the Essentials layout, tracking Motion parameters are listed in the Essentials Panel:
91
Mocha® 2022 User Guide
In the Classic layout, detailed tracking parameters can be accessed by selecting the
Track tab. On the left hand side of the Track tab, you will see two sections: Motion and
Search Area.
Understanding the parameters section of the Track parameters is vitally important for
obtaining good tracks. Here we provide a breakdown of each parameter and how to
use it effectively.
Input Clip
This is the clip you are going to track. By default it is the one currently in the viewer.
Input Channel
When tracking, Mocha looks at contrast for detail. The input channel determines where
to look for that contrast.
92
Mocha® 2022 User Guide
1. Luminance looks for contrast in the light and dark of the image
2. Auto Channel looks for contrast in one of the color channels.
3. Red, Green and Blue channels look only in that one color channel for the detail.
By default, Luminance does a good job. If you have low-luminance footage or you are
not getting a good track, try one of the color channels or Auto Channel.
By default, the minimum percentage of pixels used is dynamic. When you draw a shape,
Mocha tries to determine the optimal amount of pixels to look for in order to speed up
tracking. If you draw a very large shape, the percentage will be low. If you draw a small
shape, the percentage will be high.
In many cases, the cause of a drifting or slipping track is a low percentage of pixels. If
you want a more solid and accurate track, try setting the Min % Pixels Used value to
a higher amount. Keep in mind however that a larger percentage of pixels can mean
a slower track.
Smoothing Level
This value blurs the input clip before it is tracked. This can be useful when there is a
lot of severe noise in the clip. It is left at zero by default.
Motion
These parameters control what motion you are looking for when you track:
The main difference between shear and perspective is the relative motion. Shear is
defined as the object warping in only two corners, whereas perspective is most often
needed where the object is rotating away from the viewer significantly in space.
93
Mocha® 2022 User Guide
As an example, if someone is walking towards you, their torso would be showing shear
as it rotates slightly back and forth from your point of view.
The front of a truck turning a corner in front of you would be showing significant
perspective change.
• Large Motion: This is the default. It searches for motion and optimizes the track as
it goes. Small Motion is also applied when you choose Large Motion.
• Small Motion: This only optimizes. You would use Small Motion if there were very
subtle changes in the movement of the object you are tracking.
• Manual Tracking: This is only necessary to use when the object you are tracking is
completely obscured or becomes untrackable. Usually used when you need to make
some adjustments to complete the rest of the automated tracking successfully.
• Existing Planar Data (Mocha Pro Only): This is only used when you want to add
Mesh tracking to an existing planar track.
Search Area
• Horizontal/Vertical: The distance of pixels in the footage to search for the next object
position. This is set to Auto by default.
• Angle: If you have a fast rotating object, like a wheel, you can set an angle of rotation
to help the tracker to lock onto the detail correctly. The tracker will handle a small
amount of rotation, less than 10º per frame, with Angle set to zero.
• Zoom: If you have a fast zoom, you can add a percentage value here to help the
tracker. Again, the tracker will still handle a small amount of zoom with this set to
zero.
Track the plane selected by pressing the Track Forwards button on the right- hand side
of the transport controls section.
94
Mocha® 2022 User Guide
Stop the track and adjust the shape if it doesn’t seem to be tracking properly. You may
keyframe the spline shape so that it tracks only the planar region of a shape by adjusting
the shape and hitting Add Key in the keyframe controls menu. Keep in mind that no
initial keyframe is set until you first hit Add Key or move a point with Auto-Key turned on.
Another trick you can do to check your track is hit the Stabilize button in the View
Controls.
Turning on Stabilize will lock the tracked item in place, moving the image to
compensate. In the track module, stabilize view is a preview mode to check your track.
Actual stabilization output is handled by the Stabilize Module, explained in the Stabilize
Overview chapter.
The Surface
You can check the accuracy of your planar track by turning on the Surface (the dark
blue rectangle) and Grid overlay in the Essentials panel or the toolbar:
• Drag the inner corners of the Surface to match the perspective of your tracked plane.
• Drag the edges of the Surface to adjust them along the matched perspective
• Drag the points in the middle of the edges to scale horizontally or vertically
If you play the clip, you should see the surface or grid line up perfectly with the plane
you tracked.
95
Mocha® 2022 User Guide
When you turn on the surface you will see the blue box that represents the 4 points of
the corner-pin. Right now you will see that it is not lined up with the screen.
96
Mocha® 2022 User Guide
As described above, by selecting each corner one at a time you can adjust the surface
area to cover the area of the screen, or you can use the middle points to scale and
the outer corners to rotate.
The Grid overlay should line up with the plane you’re tracking and move with it as you
cycle through the clip. You can change the density of the grid by adjusting the X and
Y grid values in View | Viewer Preferences:
The grid overlay can give you a quick representation of the accuracy of the track.
97
Mocha® 2022 User Guide
The Trace feature allows you to see the position of the planar corners over time. Skip
allows you to work with only every nth frame, useful on particularly long roto shots
where the movement is predictable.
98
Mocha® 2022 User Guide
When you track a layer, the mattes of any active layers above
the layer itself are subtracted from the matte of the layer and
hence influence the area being tracked. To keep your tracking
predictable, it is recommended that you keep your tracking
layers on the top of the stack unless you specifically wish to use
other layers to subtract from the tracking area of layers beneath
it.
To monitor what the tracker "sees" as a tracking area, select the Track Matte button
in the view control.
Importing Mattes
99
Mocha® 2022 User Guide
There may be instances where you have already created mattes for one or more objects
in the shot, for example using a keyer or another roto tool that would help you isolate
areas to track.
You can import such mattes by creating a new layer and then using the Matte Clip
setting under Layer Properties to assign it to the layer.
When starting a new project, go through your footage a few times to see what your
best options are for tracking. You will save yourself a lot of time by making note of
obstructions and possible problem areas in advance.
Use edges
When tracking surfaces you will usually get a much better track if you include the edges
and not just the interior of an object. This is because Mocha can define the difference
between the background and the foreground and lock on better.
For example, if you are tracking a greenscreen, it is better to draw your shape around
the entire screen rather than just the internal tracking markers. In some cases this
means you can avoid tracking markers altogether and save time on cleanup later.
You can quite often get a great result with default settings, but if you’re getting a lot of
drift, try setting the Min % Pixels Used value higher. The processing can be slower, but
you will usually get a much more solid track.
Remember you are not limited to one shape in a layer. Use a combination of shapes to
add further areas or cut holes in existing areas to maximize your search. If necessary,
make an additional layer to track and mask out foreground obstructions before tracking
the object you need.
It’s common to use the surface and the grid to line up your corners after you track, but
it can be much more advantageous to set up your surface before you track and leave
100
Mocha® 2022 User Guide
the grid on to watch for any subtle drift while you are tracking. This way you can stop
your track early to fix any issues and spend less time trying to find them later.
In order for Mocha to keep the best possible track, it is usually best to scrub through
the timeline and find the largest and clearest area to begin tracking from, draw your
shape there, then use backwards and forward tracking from that point.
For example, if you have a shot of sign coming toward you down a freeway, it is usually
better to start at the end of the clip where the sign is largest, draw your shape and track
backwards, rather than start from the beginning of the clip.
We have a Planar Tracker which specifically tracks planes of motion, but this is not
limited to tables, walls and other flat objects.
Distant background is considered flat by the camera where there is no parallax. Faces
can be tracked very successfully around the eyes and bridge of the nose. Rocky ground,
rumpled cushions, clumps of bushes, human torsos and curved car bodies are all good
candidates. The key is low parallax or no obvious moving depth.
When in doubt, try quickly tracking an area to see if it will work, as you can quite often
trick the planar tracker into thinking something is planar.
Mocha is a very flexible tracker and will save a lot of time, but you will eventually run into
a piece of footage that just will not track. Large or continuous obstructions, extreme blur,
low contrast details and sudden flashes can all cause drift or untrackable situations.
If something just isn’t tracking no matter what you try, consider using Mocha to track as
much as possible then move to manual work. You can often get a lot more done fixing
shots by hand or using AdjustTrack in Mocha rather than trying to tweak your shapes
and parameters over and over again to get everything done automatically.
101
Mocha® 2022 User Guide
Rather than taking an optical flow approach (which can be slow to render and produce
cumbersome files), we use a subsurface planar approach which is much faster to
generate and track.
Mesh Generation
2. Choose the planar tracking parameters (translation, rotation, scale, shear and/or
perspective)
102
Mocha® 2022 User Guide
Then you can refine your PowerMesh with the following parameters.
Generation Mode
103
Mocha® 2022 User Guide
• Automatic: This determines the best mesh to use based on image information
contained in the layer. Automatic is best paired with “Adaptive Contrast” to get the
most detail.
• Uniform: Generates a uniform square mesh insead of building based on the existing
image.
Mesh Size
This means that the smaller the Mesh Size, the more potential mesh faces you will
have. The larger the Mesh Size, the larger the faces and the less faces you will have.
Vertices on Spline
This option makes sure the PowerMesh is generated to the boundaries of your layer
spline, rather than just over the most interesting detail within it.
For uniform meshes, this option makes sure at least part of the mesh is overlapping
the spline.
Adaptive Contrast
Adaptive Contrast boosts details in the underlying image to help the Automatic mesh
generate the most useful vertices. Use with care! Sometimes you don’t want too much
mesh detail.
Generate Mesh
This button generates the Mesh. Click it every time you change a Mesh generation
parameter.
Clear Mesh
Mesh Tracking
Once you have generated your mesh and you’re happy with it, you can move on to
tracking.
The Mesh tracker first uses the standard planar tracking per frame and then applies
the sub-planar track with the mesh.
104
Mocha® 2022 User Guide
Any mesh faces that fall outside of the spline or the image boundary are ignored. Those
mesh faces become rigid and try to follow along with the existing mesh.
Note that choosing the Planar motion parameters is important. For example:
• If the region you are tracking has significant perspective distortion, turn on
Perspective
• If the region doesn’t have much planar distortion, choose the lower order motion
parameters only (Translation, rotation, scale)
The Mesh Tracking parameters help control how Mocha approaches the organic
surface.
Auto Smoothness
Turning this on tells Mocha to guess the amount of smoothness to apply to the Mesh
track. See “Smoothness” below.
Smoothness
Also referred to as “Rigidity”, this value determines the amount of smoothness to apply
to the Mesh when tracking.
105
Mocha® 2022 User Guide
• A high smoothness is like applying starch to your Mesh. It will follow the planar track
more rigidly and not distort as much.
• A low smoothness will follow the subsurface movement more directly and distort the
mesh more. In short, you will get more “wobble”.
For example:
• Faces: This varies, but a smoothness of 50 is about the right amount to balance
facial muscles vs general face planes.
• Liquid: A low smoothness (20-40) works well
• Cloth: Variable depending on the stiffness of the material
Warp Spline
This option deforms the spline shape to match the movement of the Mesh while
tracking. This is useful so that you don’t have to worry about animating the shape to
keep the mesh inside the bounds of the spline.
As an added bonus, this also means it greatly reduces the keyframes needed to
rotoscope an organic object.
If you want to track a PowerMesh using a layer you have only tracked with planar
tracking (Translation, Rotation, Scale, Shear, and/or Perspective) you can do so by
using the "Existing Planar Data" radio button in the Motion options.
This avoids you having to redo the entire track from scratch with the Mesh.
106
Mocha® 2022 User Guide
This option is only available if you have selected the Mesh motion parameter.
1. Track a layer using some form of planar motion type (Translation, Rotation, Scale,
Shear, and/or Perspective)
2. Create a new layer
3. In the new layer, go to Layer properties and choose "Link to track" and select your
tracked layer
4. In the new layer, select "Mesh" and adjust your mesh parameters (see above)
5. Select "Existing Planar Data" from the motion options
6. Track forwards.
You can also do this for the same layer you are on without creating a new layer. Any
planar tracked layer can have the Mesh applied later and then simply be retracked
using "Existing Planar Data".
Selecting this turns on subselection in your mesh and you can move or delete vertices
either before or after you have tracked the mesh.
After Tracking, You can animate the tracked mesh manually to fix points or make your
preferred adjustments. Animated meshes are keyframed for the whole set of vertices,
rather than individual points. This makes it easier to keyframe states over time, similar
to the spline default animation mode.
Add Vertex
107
Mocha® 2022 User Guide
This tool appears when in Edit Mesh mode. When Add Vertex is on, click any Mesh
edge to add a new vertex. A new edge will appear joining the created vertex and the
vertex opposite.
• Mesh-warped splines (or render their mattes): Export as normal for Shape data.
• After Effects nulls (Adobe plugin only): In the Adobe plugin, there is a new
section called "PowerMesh". Use this section to create nulls from selected layers.
See Creating PowerMesh Nulls for more details.
• Alembic tracking data as a mesh: The exports from the "Tracking Data" export
options. Alembic is supported across many hosts. The data format includes the
PowerMesh and a camera that fits to the source footage. See Exporting to Alembic
for more details.
• Nuke Mesh Tracker: This will export a single Tracker node for Nuke that contains
a single tracker point for every vertex in the PowerMesh.
When tracking, if one of your mesh faces turns blue, this means the face has become
flipped, normally because the area you are tracking has turned away from the camera.
You can use more than one contour to cut holes in the mesh generation. This is helpful
if you want to ignore details in a surface, such as teeth in a mouth region or a tattoo
that is taking up too much of the mesh detail.
108
Mocha® 2022 User Guide
Stereo Tracking
Please note that stereo features is only available in Mocha Pro
1. Select your hero view (By default this is the Left view)
2. Draw your shape as you would normally in mono mode (See Mocha User Guide for
an introduction to mono Mocha tracking techniques)
3. Press the "Operate in all views" button on the right side of the tracking buttons.
If you now switch between Left and Right views you will see the Right view has
automatically been tracked and offset from the Left view.
1. Select your hero view (By default this is the Left view)
2. Draw your shape as you would normally in mono mode (See Mocha User Guide for
an introduction to mono Mocha tracking techniques)
109
Mocha® 2022 User Guide
3. Make sure the "Track in all views" button on the right side of the tracking buttons
is switched off.
4. Select your tracking parameters as normal
5. Track forwards (and/or backwards if required).
This will only track the current view you are on. If you switch to the other view you
will see the layer still moves with the track, but is not offset like when you do an all-
views track.
You can then use the Stereo Offset parameters in the Track module to offset your view.
If you decide later that you want to track the non-hero view, you can do so by selecting
the non-tracked view then track as normal.
You have the following options in the Stereo Offset tab (see above) when tracking
another view based on the hero view:
• Track from other views: This will reference the existing track to help track and
correctly offset the current view.
• Track this view: This will reference the current view to get the tracking information.
Note that by default these are both selected to give best results. If you only use
Track this view and not Track from other views, the current view will be tracked
independently of the hero view and will not offset.
You can also open existing mono projects that have additional views and track them
without having to manually offset. Just set the mono project to Multiview in the Project
Settings and add the additional footage streams to the clip.
110
Mocha® 2022 User Guide
1. Select your hero view (By default this is the Left view)
2. Draw your shape as you would normally in mono mode (See Mocha User Guide for
an introduction to mono Mocha tracking techniques)
3. Turn ON the "Operate in all views" button on the right side of the tracking buttons.
5. Track ONE frame forwards (You can track more if you prefer, but only one is
required)
6. Check the track in both views to verify the stereo offset has occurred correctly
7. Turn OFF the the "Operate in all views" button on the right side of the tracking
buttons.
If your initial stereo track was offset correctly, that offset will then carry onwards through
the rest of the track. Keep in mind that things like convergence and disparity in the
moving stereo image may not work accurately in this scenario, but it will increase
performance of the process because you only have to track one eye.
You can also then apply additional manual stereo offsets as described in the manual
offset section above.
111
Mocha® 2022 User Guide
AdjustTrack
Overview
There will be times when tracks can drift due to lack of detail or introduction of
small obstructions. When this occurs, manual refinements can be made by using the
AdjustTrack tool.
To achieve an adjusted track you would ideally line up the surface area where you want
to place your insert or lock down your roto.
In situations where you don’t require an insertion you could place the corners of the
surface area in distinctive locations.
In Transform AdjustTrack you can adjust based on specific transforms with as many
reference points as you require.
You can set reference points either as a template for the kind of adjustment you want,
or add them yourself as needed.
We recommend turning off the splines view (i.e Show Layer Outlines)
during adjusting the track so you can see the adjustment of points
clearly.
112
Mocha® 2022 User Guide
Transform Type
The transform type is used to set up the method of Adjustment you want to use for
the shot.
Each checkbox sets a different number of points when you click “Set Points”
• Perspective: Sets 4 points for full 4-point corner-pin style perspective adjustment.
Note that the Transform selection works very similar to the Motion type in the Track
module. When you select a motion type further down the list, it will automatically select
the ones above it in order for the tracking keyframes to be adjusted predictably.
You can opt to turn off the default-selected transform types later if you need to do a
specific adjustment.
After you have chosen the type, click Set points to create the points. You can then
adjust the reference points (see below).
113
Mocha® 2022 User Guide
Reference Points
1. You can add more points to your adjustment as required. Each point contributes to
the adjustment of the plane based on the position of the other points.
2. You can select between the points using the cursor or cycle using the select <>
buttons.
4. Once you are happy with the position of the points, click “Set Reference Frame” to
define a frame to look to when adjusting forwards or backwards from that point.
114
Mocha® 2022 User Guide
Adjusting points
Once you are happy with the points positions and have set a reference frame, you can
start moving back and forth on the timeline adjusting the points for drift.
Each point adjustment sets a key frame for every other point in the shot to avoid
unwanted distortions.
You can see the original reference frame for the selected point in the zoom window in
the upper left of the viewer and the current frame in the window below that.
115
Mocha® 2022 User Guide
Surface View
While you are adjusting, you can click one of the “Surface View” corners to see how the
surface itself is adjusting to your changes. This is helpful if you are ultimately planning
on using the surface as your export area and want to make sure it is still lining up.
Nudge
Nudging is used to adjust the track by pixel increments. This helps when adjustments
are too subtle to be done by mouse movement.
116
Mocha® 2022 User Guide
Each arrow nudges in the indicated direction. You can either click and hold the button
or use the shortcut keys to nudge.
The Auto button in the middle of the direction grid tries to guess where the point needs
to be. It can be useful to start with Auto to attempt to place the reference point first,
then adjust manually.
Auto Nudge
Auto Nudge takes the Auto action above and lets you use it space adjustments over
the whole shot.
If you set Auto Step and define a frame step you can then Track the Auto Nudge using
the tracking buttons in the timeline. Auto Nudge will then nudge the selected reference
points at the frame step interval set.
The Search fields define how far Auto and Auto Nudge look for the area the point needs
to adjust to.
Auto Nudge is useful for quickly going through a shot to help pace
adjustments. It is not recommended to be used as a solution for
finishing adjustments.
Exporting
You can export adjusted tracks as normal via the file menu or via the Track module
just like any regular track.
AdjustTrack Classic
We’ve kept the old-style of AdjustTrack for those who prefer to it, or if you are working
with legacy projects.
117
Mocha® 2022 User Guide
This version of AdjustTrack is primarily used for eradicating drift by utilizing the four-
corner surface area to generate keyframable data to compensate. It is generally not
practical to use it to remove jitter.
When you have the Surface where you want it to stay locked and are ready to refine
the track, flip over into the AdjustTrack module by hitting the AdjustTrack tab.
Reference Points
Once you select the Classic AdjustTrack tab, a key frame with four reference points
is created.
118
Mocha® 2022 User Guide
As you play though the sequence you will be able to manually adjust the position of
each point as drift occurs.
If your track is spot on, these reference points should line up properly throughout the
shot. If you see a Reference Point drifting, that will indicate the track is drifting. Find
the frame where the drift is worst and move the Reference Point back to the position
it had in the Primary Frame and the track will automatically be adjusted based on your
correction.
When you perform an adjust track and you begin to move a newly created reference
point, you will notice the dashed lines which connect all of the reference points. These
lines change in color to represent the quality of positioning of any given reference point.
For best results keep reference points away from one another.
119
Mocha® 2022 User Guide
When adjusting the track try to always get at least yellow but shoot for green for a more
solid adjust track.
The red lines indicate that this reference point position is a poor choice.
120
Mocha® 2022 User Guide
The green lines indicate that this reference point position is a good choice.
121
Mocha® 2022 User Guide
You cannot keyframe the Surface — only the Reference Points. The original track and
any refinements you make in AdjustTrack cause the Surface to move however.
Working Backwards
Every so often a shot will come along that is easier to track backwards than forwards.
This is fairly simple when running the tracker backwards, but introduces some rather
obtuse concepts when keyframing is involved. This is why there are two “New Ref”
buttons provided. If you are working backwards and wish to set a new reference point,
122
Mocha® 2022 User Guide
you will probably want to use the “<- New Ref” button instead of the forward-thinking
“New Ref ->” button.
Because keyframing “thinks” forward, hitting “<-New Ref” will not create new Primary
Reference points on the current frame, but will go backwards in time, looking for any
existing keyframes and set new Primary Reference points on the frame directly after.
For example, if you decide to create a new backwards reference point at frame 20, a
new primary reference will be created at frame 21.
Some people may be more comfortable doing this manually by moving the playhead
themselves and using the traditional “New Ref ->” button. Others who do a lot of tracking
and find themselves working backwards often may find the backwards-thinking New
Ref button helpful.
The red X indicates that this particular frame is the starting point for calculating
adjustments. Moving a Primary Reference Point will NOT change the tracking data.
Go ahead and experiment - move the Reference Point when it is a red X (a Primary
Reference Point). You will notice the Surface isn’t adjusted at all. Step forward a frame
and move the same point - this time the surface will move because you are now
adjusting the track.
123
Mocha® 2022 User Guide
By default, the frame in which you create a Reference Point is its Primary Reference
frame. This Primary Reference can occur on a different frame for each reference point.
You can change the Primary Reference frame by selecting a Reference Point, going
to the appropriate frame and hitting the “Set Primary” button.
You may set a new Primary Reference Frame for all active points by hitting the Set
Primary All button.
One method for selecting different reference points is to hit the “Next” button.
124
Mocha® 2022 User Guide
The next button simply cycles through the active reference points for that frame. More
fine-grained control of reference points can be obtained through the Nudge control
panel, described below.
If you hit the Auto button, a tracker will attempt to line up the selected Reference Point
based on its position in the Primary Reference frame. The Search Region Size and
Maximum Motion parameters can be set in pixels in the Auto Nudge section.
You can quickly select any corner by using the Corner selector buttons in the Nudge
control panel. In the image below, the user is selecting the upper right corner in
preparation for nudging operations.
View Options
The AdjustTrack tab has a View section for cleaning up your AdjustTrack workspace.
Deselecting the Inactive Traces button will cause the display to hide the traces of the
inactive Reference Points. This is helpful if you have a corner with numerous Reference
Points offsetting it.
125
Mocha® 2022 User Guide
Deselecting the Unselected Traces button will hide any Reference Point that is not
selected.
Finally, deselecting the Search Area button will hide the Search Region Size (in Yellow)
and the Maximum Motion search area (in Pink).
When you see a drift, carefully cycle through the timeline and look for where the
motion starts to change direction. A frame before this, adjust your drift, then go halfway
between your primary frame and the adjusted frame to check for any further drift. If you
keep working by checking halfway between each keyframe you set, you will reduce the
amount of keyframes required.
If you end up with adjustment keyframes on a large amount of frames it may be better
retry the track. AdjustTrack is aimed to help reduce small anomalies and fix drift when
a tracked corner has become obscured. If you are fixing every second keyframe it
means you have more than a simple drift.
126
Mocha® 2022 User Guide
Rotoscoping Basics
Some tools, parameters and techniques listed below may not be
visible in Essentials mode. To see additional interface elements,
switch to Classic mode. See the Layouts section for more
information.
Most often a good matte requires a combination of both keying and rotoscoping
techniques.
Good rotoscoping artists often think like animators, reverse engineering the
movements, the easing in and outs, the holds and overshoots of objects, and set their
keyframes accordingly.
In general, the fewer the keyframes, the better your mattes will look. Too many
keyframes will cause the edges to chatter and move unnaturally. Too few keyframes will
cause the shapes to drift and lose definition. Finding the right number and placement
of keyframes often comes with experience but there are a few things to keep in mind
when rotoscoping.
1. There is no such thing as a perfect matte. Rotoscoping is an art form that takes into
account the background image, the movement of the object, and the new elements
to be composited in the background.
2. Try to start your shape at its most complex point in time, where it will need the most
control points.
3. Break a complex shape into multiple simple shapes. If you are rotoscoping a
humanoid form and an arm becomes visible, consider rotoscoping the arm as its
own element, rather than adding extra points on the body that will serve no purpose
when the arm is obscured.
4. Imagine you are the animator who created the shot. What would your dope sheet
look like? No matter the medium, whether CG, live action or otherwise, most
movements are rarely linear. They normally move in arcs; they normally accelerate
in and out of stopped positions. Try and understand the mechanics behind how
things are moving in your shot. This will help you to minimize keyframes.
127
Mocha® 2022 User Guide
5. Watch and study the shot before you start working. Where are the changes in
directions? These will normally have keyframes. Where are the starts and stops?
Are there camera moves that can be stabilized to make your work easier?
6. Don’t be afraid to trash your work and start over. Beginning roto artists often
make the mistake of trying to fix a flawed approach by adding more and more
keyframes. Experienced roto artists learn to quickly identify an inferior approach
and are unashamed to trash their work and start over, often many, many times. It is
very difficult to get a good matte without a conscious effort to keep the keyframes
to a minimum.
It also helps to remember that your spline shape is linked to your tracking data and not
the other way around.
For the following examples you can try out the tools using the BMW tutorial files
available from https://cdn.borisfx.com/borisfx/store/mocha-clips/rotoscoping.zip
Rotoscoping Workflow
First of all you want to reduce as much manual work as possible by tracking. In the
example below, the front and side plane of the car is being tracked (For a more detailed
coverage of tracking, see the Tracking Basics documentation).
Once you’ve tracked an area it can be useful to turn it’s visibility off, as well as it’s
tracking cog (so it can’t be accidentally retracked later). This means the tracked shape
will not be confused with any roto shapes you are making.
128
Mocha® 2022 User Guide
Once you have a track for a layer we recommend that you add a new layer to use for
the actual roto spline, rather than refining the spline you used for the actual track as
you might need to do more tracking with it later.
Select the X spline or Bézier spline tool and draw a tight spline around the object you
are rotoscoping. Ctrl/Cmd+drag the Bézier tangents if you wish to break them. You will
see that a new layer is automatically created.
You don’t want to track with this layer, so disable tracking for the layer by turning off
the tracking button (the cog) for the layer in the Layer Properties panel.
Rename the new layer and link it to the movement of your already tracked layer by
selecting it from the Link to Track dropdown in the layer properties panel.
129
Mocha® 2022 User Guide
Your newly created roto spline will now follow the motion of the linked track.
Now you have linked the rotoscoping layer to a track, you need to go over the timeline
and make sure the roto is correctly animated.
Often you will need to tweak your shape for it to fit correctly, adding new keyframes.
Autokey is on by default, so you just need to move along the timeline and adjust your
points where necessary (keyframes turn up in the timeline as green dots). The tracking
data will help for the majority of the motion.
You can also add additional shapes to the same layer using one of the "Add Spline to
Layer" tools. These are the drawing icons with the plus sign next to them ("+").
You can cycle between each point on a spline with the keyboard shortcuts { and }. This
is useful for when you need to do minor adjustments across many points separately.
Edges can be feathered either by dragging out feathers point by point using the edge
pointer tools in the toolbar or by using the parameters in the Edge Properties panel.
130
Mocha® 2022 User Guide
• The pointer tool with the B will move both the inner and outer spline point (‘B' = ‘Both')
• The E pointer will only move the outer spline point (‘E' = ‘Edge'). A feathered edge
will occur between the inner and outer spline points
• The A pointer will remove either the inner or outer point depending on which is
selected (‘A' = ‘Any')
You can also use the Set button under Edge Properties to feather the edge at the
selected point(s) an exact amount or use the Add button to increase/decrease the
feather by the specified amount.
For example, if you deselect all points by clicking anywhere on the canvas you can
then use the Set button to apply the default 3 pixel edge width. Because no points are
selected the value is applied to all points on the current layer. You can then tweak the
position of all spline points to ensure that the inner (red) spline is inside the edge and
the outer (blue) spline is outside the edge.
In many instances one track will not be enough. You may need to track more than one
plane to drive different sets of roto. In the car example, we have to track the front and
the side to get an accurate track for each planar region to assist the roto effectively.
131
Mocha® 2022 User Guide
In the case of organic shapes, like people, you will have to break your tracks down to
handle the different movement between the torso and the arms etc.
Use this tool with care, as it is not setting any keyframes per se, it is offsetting any and
all keyframe data on the points you move while it is on. Überkey is very useful, but
remember to turn it off again when you don’t need it. Use with care.
Überkey affects only those frames between the timeline’s In and Out point. If you wish
to make adjustments to a particular range, set the In and Out points to that range.
Or alternatively, use the transform tool to perform all of the above functions in the same
tool:
132
Mocha® 2022 User Guide
To turn off points, select the points on the spline and hit Shift+Delete. You will see the
curve change shapes, but the points will remain.
If the Autokey button is enabled, a keyframe will be created when you change a point’s
active status.
133
Mocha® 2022 User Guide
You can use the movement of the individual spline points to determine motion blur.
Any movement in the spline, whether through simple X/Y translation or by shape
deformation will cause motion blur.
You can control the amount of blur by changing the motion blur value in the Edge
Properties panel.
Angle This essentially controls the amount of motion blur for the layer.
Angle simulates how long the shutter is open for if we were viewing through a real
camera, so the range is between:
• 360 (fully open and therefore the maximum motion blur possible).
The reason we refer to angle as opposed to "amount" is that camera shutters used to
open with a rotary action, so a smaller angle would let in less light, and thus reduce
motion blur.
Phase
This controls the offset of the motion blur from the current frame.
Changing Phase from zero shifts the position of the motion blur to either be more ahead
or behind the currently calculated frame and is useful for tweaking motion blur that isn’t
quite sitting right.
Because Phase is based on the shutter angle you can adjust between the range -180
and 180 (i.e a range of 360 like the shutter angle).
Quality
The steps of motion blur you want to render. The lower the quality, the faster the render
speed. The default is 0.25 but can go as high as 5.0.
Although not necessary in this example, note that you can change how mattes are
blended in the Layer Properties panel. You may make each layer’s matte Add or
Subtract and you can also invert the matte.
134
Mocha® 2022 User Guide
Note that this can’t be keyframed and that these settings apply to the entire layer, not
to individual splines of the same layer.
In the View Controls, several options are offered for viewing your mattes. The Matte
drop down is has options to view all mattes, just the mattes you have selected or no
mattes.
Select the Matte button and you will see your rotoscoped object against a flat
background.
You may wish to rotoscope against a particular color. Select View → Canvas Color…
and a color picker will allow you to choose a particular background color
135
Mocha® 2022 User Guide
You can adjust the opacity of the color fill by changing the blend value to the right of
the Colorize button.
The color used by Colorize is derived from the Selected and Unselected properties of
the Overlay Colors panel, which can be changed per layer.
This is only a preview and will not affect how your mattes are rendered when exporting.
136
Mocha® 2022 User Guide
1. Select your layer and turn on the Mattes button (Show Layer Mattes)
2. Uncheck the Splines option in the Show Spline Tangents dropdown
For points:
Hiding points will still allow you to adjust the layer with the transform tool.
This allows you to view the actual rendered mattes, which can be especially useful
when tweaking motion blur. The motion blur you normally see in your canvas is an
OpenGL preview and can differ slightly from the actual render.
If you’d like to see what the actual motion blur render looks like, switch to viewing the
layer whose matte you wish to see.
Because you can choose specific layers for export when you render, a render pass is
created for each layer.
137
Mocha® 2022 User Guide
Switch the View Clip drop-down back to your source clip to continue working with that
clip.
Open Splines
If you want to draw open splines, you can simply hold shift when you right-click to finish
the spline. This will open the shape up.
• You can open an existing shape using the Open Spline shortcut key (by default this
is o)
• You can close an existing shape using the Close Spline shortcut key (by default
this is c)
• Both the Open and Close shortcuts also work for finishing a spline rather than using
Shift + Right-Click
You can also right-click a spline and choose: Spline | Open/Close Spline
Naming layers is very important to save yourself time later, especially if you are doing
a heavy rotoscoping job. Get into the habit of labeling each layer with specific names.
Turn off the splines and just work with points and the matte
If you are working on a tight roto it can sometimes be easier to turn the spline off and
just see the matte with the control points. To do this:
1. Select your layer and turn on the Mattes button (Show Layer Mattes)
If your other view options are at default settings you should now see the matte in the
viewer with only the tangents and control points visible.
138
Mocha® 2022 User Guide
The Magnetic Tool draws a pixel line that snaps to the nearest edge to where the cursor
lies, tracing the shortest path from any previous click.
4. Click once any time you want to anchor the currently drawn path along the route
5. If there is a tricky section of the edge that the magnetic tool doesn’t want to line
up to, you can press and hold the mouse/pen down and the tool will switch to
Freehand mode.
139
Mocha® 2022 User Guide
Similarly, if you go off the edge of the frame, the magnetic tool will also switch to
Freehand mode, so you can freely continue the shape.
The Freehand pen tool is exactly like the Magnetic tool, minus the magnetic properties.
You can access the Freehand tool in the same tool drop down as the Magnetic tool,
but also any time you press and hold the mouse/pen down in the Magnetic tool, or
go off the image frame.
This will generate an X-Spline that follows the originally drawn line.
140
Mocha® 2022 User Guide
Adjusting Detail
X-Splines generated by the Magnetic and Freehand tools have a fairly high point count
to match the subtle changes in the line.
1. Finish drawing the line and right-click. This will automatically switch your cursor to
the selection tool.
2. With the completed layer selected, choose the Magnetic or Freehand tool again.
Edge Snapping
You can snap the control points of any spline to edges of an object by using the Edge
Snapping tool. By default, this is the Alt+S keys.
141
Mocha® 2022 User Guide
To snap to an edge:
The selected points should then move to snap to the nearest detectable edge.
Keep in mind this will naturally try to find the most visible edge, so in some cases snap
may not find the edge you want. In these cases it may need to be adjusted manually.
142
Mocha® 2022 User Guide
You can also paint on an existing layer with the "Add" paint brush.
Paint strokes that cross over an existing layer spline will intersect with that spline, or
subtract from it if you are using the alt modifier key.
Selecting the area brush reveals the Area brush settings further down the toolbar:
You can now paint on the canvas and a red paint area will appear.
143
Mocha® 2022 User Guide
Once done, you can turn off Quick Mask if it is on or just release the mouse button and
a spline will be generated.
144
Mocha® 2022 User Guide
For finer control, the brush size will also change according to the set pressure sensitivity
from a drawing tablet.
Quick Mask
By default, Quick Mask is turned on.
Quick Mask stops the Area Brush tool from generating a spline as soon as you release
the mouse or lift the tablet pen Once you have painted what you need, you can turn
Quick Mask off by pressing the button and the spline will be generated.
Fill Gaps
If you want to quickly fill smaller gaps, you can adjust the "Fill Gaps" field.
The number in the field is a pixel diameter. Any gap in a closed painted area that is
smaller than the number in the field will be filled. For example:
A large fill gap setting is useful for quickly circling an object with paint to make a filled
spline.
145
Mocha® 2022 User Guide
The tool is under the main Area Brush icon. Just press and hold the toolbar icon to
select the brush from the list:
146
Mocha® 2022 User Guide
Once done, you can turn off Quick Mask if it is on or just release the mouse button and
the resulting spline intersect with the existing layer splines:
Erase
In both Quick Mask mode and normal painting mode, you can hold down the alt/
option key to switch to erase mode.
147
Mocha® 2022 User Guide
If Quick Mask mode is off, this will erase the existing spline if you are using the Add
Area Brush tool. Just paint as normal holding down the modifier key:
148
Mocha® 2022 User Guide
When you release, the erase will eat into the existing spline:
149
Mocha® 2022 User Guide
150
Mocha® 2022 User Guide
Stereo Rotoscoping
Stereo Roto works in a very similar fashion to stereo tracking.
2. Draw a new basic shape and track the object you want to rotoscope as outlined
above in "Stereo Tracking"
4. Click the "Link to track" drop down in Layer Properties and choose the previously
tracked layer
5. Continue to refine the Hero view roto until you are happy with that view
When you switch to the non-Hero view the rotoscoping will be offset by the tracking
data. While this will not completely refine the result, it will save you a lot of time.
Whenever you manipulate a control point in the Hero view it will offset that control point
in the non-Hero view.
When you start to tweak the non-Hero view it will also generate new keyframes for that
view only and will not affect the Hero view. You can see these keyframes represented
in the timeline by split left and right keys.
If you wish to directly modify the control point in both views when working in either view,
you can turn on the "Apply Keyframe Changes to All Views" button at the very end of
the timeline controls to the right.
151
Mocha® 2022 User Guide
If you need to offset your tracking or roto manually (see below), you can use the
Difference 3D view to help align the layer.
5. Offset X and Y until the screen gets as close to blank middle grey
as possible. You can optionally also adjust the other Stereo parameters.
152
Mocha® 2022 User Guide
6. Turn off Difference view and review your results on your Non-Hero view.
153
Mocha® 2022 User Guide
Exporting Tracks
Some sections only relate to Mocha Pro. Some export features are
not available in Mocha HitFilm or Mocha AE. For a full comparison
of features, please refer to the comparison chart online.
Tracking data is not supported across 360 seams and poles when
using VR features and may not export as expected.
Exporting data is the most useful way to get your tracks out to other applications.
154
Mocha® 2022 User Guide
To export tracking data to After Effects, press the Export Tracking Data button.
155
Mocha® 2022 User Guide
The corner pin data records and exports the 4 point x, y information from either the
adjusted track or the raw track. There are three different types of corner pin exports –
two for recent After Effects versions and one for CS3 and older versions of After Effects.
The Power pin data is very much like corner pin, but the exported effect gives you more
control over the results in After Effects. See the After Effects help for more information
on how to use CC Power Pin.
The transform data exports x and x positions as well as the scale and rotation for the
whole surface.
If you click Save, this will display a file browser for saving the tracking data for use later.
By default, the files will take the name of the layer, so for a layer name Track_Layer
the export will create a file named "Track_Layer.txt".
If you don’t need to save the export, you can press Copy to Clipboard, and then go
straight to After Effects and paste the data. If you are saving to file you will need to
open the text file you saved with the data, select the entire body of text and copy it.
In After Effects, load the footage you tracked and the footage/image/composition you
wish to apply the transform or corner pin data to.
Select the item on the timeline that is the insert object. Paste the data to the selected
layer. You can do this by selecting the ‘paste' option in the edit menu or by typing
command- v (Mac) or ctrl-v (Windows).
156
Mocha® 2022 User Guide
With the layer’s information expanded you can see either the 4-point tracking data for
the corner pin, or the position, rotation and scale information from the tracking is now
applied to the insert layer.
If you are pasting transform data rather than corner pin data then you will need to delete
the anchor point keyframes to see a result. We export both position and anchor point
keyframes so that stabilization or tracking can be achieved. See below.
If your insert is not the same size as the dimensions of the composition in After Effects,
you will need to take a few further steps to make sure your corner pin data fits correctly.
The reason for this is that tracking data is basing itself on the relative size and aspect
ratio of the footage, whereas After Effects treats the corner pin data relative to the size
of the layer you are applying it to.
To get around this, you can take the following steps to modify the insert layer in After
Effects:
1. Precompose the layer and move all attributes into the new composition.
157
Mocha® 2022 User Guide
2. Open the Precomp you just made and fit the layer to the composition dimensions
(Layer | Transform | Fit to Comp).
158
Mocha® 2022 User Guide
3. Go back to the original composition, select the precomposed layer and paste the
data.
Alternatively you can use Align Surface in Mocha to define the full dimensions:
1. Apply a manual corner pin to your insert layer in After Effects and place it in the
desired position for any frame.
2. On this frame, Precompose the layer and make sure all attributes are inside it.
3. You will now have a precomposed layer that is the same dimensions as the tracked
footage.
4. In Mocha, go to the same frame in the footage you applied the corner pin to in After
Effects and select the track.
5. On this frame, turn on your surface and click "Align Surface" in the Layer Properties
panel.
6. You will see the surface fit to the full dimensions of the footage.
159
Mocha® 2022 User Guide
8. Back in After Effects, select the precomposed layer and paste the data.
This will apply the tracking data relative to the full dimensions of the footage instead. If
you need to adjust the insert, just open the precomposed layer and tweak the manual
corner pin you made.
You can use the tracking data created to stabilize a shot in After Effects.
1. Track your footage as normal, then turn on the Surface button and center the
surface box on the area you wish to use as the stabilize center.
2. Export the tracking data in the After Effects Transform format. Select the Invert
checkbox option
3. Switch to After Effects, select the layer you wish to apply the stabilize data to and
paste it to that layer.
Alternatively you can also use the After Effect Corner Pin export using Invert in the
same way to get a correctly warped stabilized image.
160
Mocha® 2022 User Guide
1. Track an object in the usual way, and use AdjustTrack to correct for any drift if
necessary. The exported tracking points will be the four corner points of the Surface,
so you should position these appropriately.
2. Press the Export Tracking Data button on either the Track or AdjustTrack tabs.
4. In Silhouette, create a tracker node, and paste the contents of the clipboard to the
node:
6. Select all 4 tracker points and click the Apply… button in the point tracker panel to
apply the 4 tracker points to the layer:
161
Mocha® 2022 User Guide
1. Feed an the insert image and the previously created tracker node into a Transform
node:
162
Mocha® 2022 User Guide
3. You can then use a Composite or Math Composite to combine the corner pinned
image over the top of the background image:
163
Mocha® 2022 User Guide
Track an object in the usual way, and use AdjustTrack to correct for any drift if
necessary. The exported tracking points will be the four corner points of the Surface,
so you should position these appropriately before export.
Press the Export Tracking Data button on either the Track or AdjustTrack tabs. Next,
choose either the Final Cut Basic Motion or the Final Cut Distort options.
164
Mocha® 2022 User Guide
The distort option exports the 4 point x, y information from either the adjusted track or
the raw track. The points exported are the four corners of the surface.
The basic motion option exports x and y positions as well as the scale and rotation for
the whole surface. The position exported is the center of the surface.
Now click Save. This will display a file browser; you need to select a filename and
directory for the files to be saved. By default, the files will take the name of the layer,
so for a layer name Track_Layer this export produced a file named:
Track_Layer.xml
Now open the Final Cut project where you want to use the tracking data. To import the
XML file in Final Cut Pro, click File | Import | XML…. In Final Cut Express, click File |
Import | FCP XML from iMovie…
You will now see a new clip in your bin, named Mocha distort – layer_name or Mocha
basic motion – layer_name. If your original footage was a QuickTime file, then the new
clip in Final Cut will point to this footage. If it was an image sequence, the clip will be
connected to the first frame of the sequence, stretched to the duration of the whole clip.
In most situations, you want to apply the tracking data to a different clip in your timeline.
To do this, you can copy and paste the data from the imported clip onto any other.
Drop your imported clip into the timeline, then select it and press Cmd-C to copy it to
the clipboard. Now select the clip you want to apply the tracking data to and press Opt-
V (Paste Attributes). You will see a dialog asking you to choose which data to paste.
165
Mocha® 2022 User Guide
Depending on the kind of data you exported, tick either Basic Motion or Distort and
untick all the other boxes.
To use our tracking data for stabilization in Final Cut, follow the same procedure as for
a basic motion export, but tick the Invert checkbox in the export dialog.
Now when you import the XML file into Final Cut, you should have a fully stabilized
clip. You can also copy the stabilized data onto another clip using Copy and Paste
Attributes as before.
Many issues of track misalignment can be corrected by choosing the right film type,
frame rate and interlacing settings in our software. These controls are on the Clip page
in the Film, Interlaced and Time tabs.
If the layer doesn’t line up but the overall motion looks right, the most likely problem
is mismatched pixel aspect ratio (PAR). In Final Cut, check the sequence settings to
confirm the correct PAR for the clip, then use the equivalent setting when tracking in our
software. If you have already tracked with the wrong film type setting, you will need to
re-track after changing it. The table on the next page shows the corresponding settings
between Final Cut and Boris FX products.
Although film types are included in our software for anamorphic HD sizes (DVCPRO
HD and HDV), you are unlikely to need to use them as QuickTime will normally apply
the anamorphic scaling and our software will treat the video as full HD.
This is usually caused by a frame rate mismatch. Check that the frame rate and
interlacing settings match between final Cut and our software.
This can be caused by a mismatch in the Final Cut Anamorphic setting. If you
are working with anamorphic footage, ensure that you have the Anamorphic setting
166
Mocha® 2022 User Guide
checked in your Final Cut sequence settings, and in the clip properties. You also need
to use one of the anamorphic film types when tracking: any of the film types with
Anamorphic in the name should give correct results when importing the data into Final
Cut.
Track an object in the usual way, and use AdjustTrack to correct for any drift if
necessary. The exported tracking points will be the four corner points of the Surface,
so you should position these appropriately.
Press the Export Tracking Data button on either the Track or AdjustTrack tabs. Next,
choose Motion basic transform(.motn) or Motion corner pin (.motn) and click Save to
save the file.
Inside Motion, you can either choose to open the exported file as a new project or drag
it into an existing project. You will see a Group containing the footage you tracked as
well as a blue solid called "Surface".
1. Drag the desired footage or image to the group, above the surface
2. Go to Motion Tracking in Behaviors and drag the Match Move behavior onto your
insert
3. If the surface layer does not automatically apply to the behavior, drag the surface
layer onto the Match Move behavior
4. If you are just using transform, Match Move defaults to this option and you can set
transform, scale and rotation
5. If you are using corner pin, select the Four Corners option from the Type drop down.
167
Mocha® 2022 User Guide
Many issues of track misalignment can be corrected by choosing the right film type,
frame rate and interlacing settings in our software. These controls are on the Clip page
in the Film, Interlaced and Time tabs.
This is usually caused by a frame rate mismatch. Check that the frame rate settings
match between Motion and Mocha.
This is normally due to the layer you are inserting not being the same frame size as
your project media. You can fix this by either changing the insert to fit the dimensions,
or scaling the insert inside motion to match the dimensions. If you are going to scale
the layer to fit, you should do this step before you apply Match Move.
168
Mocha® 2022 User Guide
This section explains how to export tracking data in a format readable by Apple Shake,
how to import the data into Shake and how to use it for match move, corner pinning
and stabilization tasks.
Track an object in the usual way, and use AdjustTrack to correct for any drift if
necessary. The exported tracking points will be the four corner points of the Surface,
so you should position these appropriately.
Press the Export Tracking Data button on either the Track or AdjustTrack tabs. Next,
choose Shake Script (*.shk) and click 'Save to save the script to disk or Copy to
Clipboard to simply copy-and-paste the data into Shake.
Now let’s use that data in Shake. To load the tracking data in a file into an existing
Shake Script follow these steps:
Navigate to the Shake script file you exported and select it.
169
Mocha® 2022 User Guide
If you have the data on your clipboard, simply press Ctrl/Cmd+V or right-click and
choose Paste.
Three nodes will now appear in your script: Stabilizer, MatchMoveLayer, and
CornerPinLayer.
At this point you have successfully imported your tracking data from Mocha into Shake.
But what exactly did you import? Let’s start with the MatchMoveLayer layer.
The MatchMoveLayer is used to apply the tracking data to a foreground element that
you wish to matchmove to a background. It consists of two inputs, the background and
the foreground. The foreground element will be the element you wish to apply the match
moving data to. The foreground is connected to the left side input of the node while the
original tracked background element goes into the right hand side.
170
Mocha® 2022 User Guide
The next node is the CornerPinLayer node. This node has a single input and works just
like the left input of the MatchMoveNode.
It takes your foreground element and applies the scaling, rotation, and translation data
to it and prepares it for compositing into your next layer.
The last exported node is the Stabilizer Node. Just as the name implies, it takes all of
the exported tracking data and uses that data to stabilize your input clip.
With this node, for example, you may apply this data to the background element you
tracked to make for an easier composite.
Now that you have successfully exported and imported your data into Shake you are
ready to continue working on your project.
171
Mocha® 2022 User Guide
You export Mocha planar tracking data to Mistika as a set of corner pin tracks by
choosing Mistika Point Tracker (*.trk) from the Export Tracking Data dialog.
You can import your saved Mistika Point track data from the File menu.
This section explains how to export tracking data in a format readable by Nuke, how
to import the data into Nuke and how to use it for match move, corner pinning and
stabilization tasks.
Track an object in the usual way, and use AdjustTrack to correct for any drift if
necessary. The exported tracking points will be the four corner points of the Surface,
so you should position these appropriately.
Press the Export Tracking Data button on either the Track or AdjustTrack tabs. Next,
choose Nuke Ascii (*.txt) and click Save to save the script to disk.
In Nuke, append a tracker to the background clip, e.g. by selecting the node and
pressing tab, then typing tracker and finally selecting the Tracker node in the list of
nodes.
172
Mocha® 2022 User Guide
In the tracker properties window, select the animation submenu button for Tracker 1,
then choose File | Import Ascii… in the menu.
On the import Ascii dialog, press the folder button next to the file name, browse to the
file you exported, select it, click Open and then click OK.
173
Mocha® 2022 User Guide
If you’re in Nuke 7 or above and you don’t want to go through the process of exporting
out your ascii files, you can instead export to the Nuke 7 Tracker node.
If you choose Copy to Clipboard you can immediately switch over to Nuke and Paste
the data. Alternatively you can import your saved Nuke Script from the File menu.
You can export a Corner Pin straight to the clipboard or to a .nk script by choosing
Nuke Corner Pin (*.nk) from the Export Tracking Data dialog.
If you choose Copy to Clipboard you can immediately switch over to Nuke, select the
node you wish to apply the corner pin to and Paste the data. Alternatively you can
import your saved Nuke Script from the File menu.
174
Mocha® 2022 User Guide
The PowerMesh to Nuke Tracker creates a single Nuke tracker node with individual
tracker points representing every vertex in the PowerMesh.
This versatile export means you have access to numerous tracking points across your
scene without having to set up individual tracks or corner pins.
You can export a PowerMesh-based Nuke Tracker straight to the clipboard or to a .nk
script by choosing Nuke Mesh Tracker (*.nk) from the Export Tracking Data
dialog.
If you choose Copy to Clipboard you can switch over to Nuke, select the node you wish
to apply the corner pin to and Paste the data. Alternatively you can import your saved
Nuke Script from the File menu.
175
Mocha® 2022 User Guide
This section explains how to export tracking data in a format readable by Fusion, how
to import the data into Fusion and how to use it for match move, corner pinning and
stabilization tasks.
Track an object in the usual way, and use AdjustTrack to correct for any drift if
necessary. The exported tracking points will be the four corner points of the Surface,
so you should position these appropriately.
Press the Export Tracking Data button on either the Track or AdjustTrack tabs. Next,
choose Blackmagic Fusion COMP Data (*.comp) and click Save to save the script to
disk.
In Fusion, open the .comp file, then drag the tracker node into the right view.
Now import the clip that you want composited onto the background and tie the output
of the clip to the input of the tracker node.
In the settings of the tracker node, select the Operation tab and select either Corner
Positioning or Match Move to composite the insert clip on top of the background. Notice
that you can switch Position, Rotation and Scaling on and off for different effects.
176
Mocha® 2022 User Guide
1. Track an object in the usual way, and use AdjustTrack to correct for any drift if
necessary.
2. The exported tracking points will be the four corner points of the Surface, so you
should position these appropriately.
3. Press the Export Tracking Data button on either the Track or AdjustTrack tabs.
4. Select Autodesk Flame Axis (.mask) and save the file to disk (There is currently no
clipboard support for mocha data in Flame).
177
Mocha® 2022 User Guide
You should then see the axis in the Flame viewer output.
You can now wotk with the Axis nodes via the Gmask Schematic:
1. Track an object in the usual way, and use AdjustTrack to correct for any drift if
necessary.
2. The exported tracking points will be the four corner points of the Surface, so you
should position these appropriately.
3. Press the Export Tracking Data button on either the Track or AdjustTrack tabs.
4. Select Autodesk IFFFSE Point Tracker Data (*.ascii) as the format, and save this
to a file.
5. Next select the Autodesk IFFFSE Stabilizer Data (*.ascii) export and save this to
another file.
178
Mocha® 2022 User Guide
Let’s look at how we use the data. In Combustion, create a layer with the foreground
graphic and set the layer shape to Four-Corner.
Now select all four corners of your layer, enable the Tracker tab and select Import
Tracking Data.
Import the single Ascii file with the stabilizer tracking data.
Activate the insert layer visibility and you will see that the insert layer is now tracked
to the background element, even though the image is not sized correctly yet. Select all
trackers and set the mode to Absolute to resolve this.
If you prefer to import your data one point at a time you can instead select one track
point and import the Ascii file with the corresponding tracking data. Remember to switch
to Absolute mode once all data has been imported.
Firstly, we will set-up a corner-pin composite in the Action module, to reproduce the
basic compositing operation.
Enter Action and delete the default Axis and Image nodes.
Create a new Bilinear Surface. Tap on bilinear1 then press ~ to view its settings. Go
to Surface then click the S button next to Track.
179
Mocha® 2022 User Guide
You should now be in the familiar stabilizer module. For this example we are doing a
corner-pin so we will need to use all four trackers.
180
Mocha® 2022 User Guide
Now browse to the corresponding file, e.g. xxxx_top_left.ascii. The files correspond to
trackers as shown below.
You should see the marker for Tracker 1 move into the correct position.
Repeat the process for the other three trackers, making sure that you use the correct
files as shown in above. You should also mark each tracker as Active if it is not already.
Tap Return to return to Action, and you should now see your finished corner pin.
An alternative use for the tracking data is for stabilization. You can use the Stabilizer
module to do 1-, 2-, 3- or 4-point stabilization. In this example, we will do a 1-point
stabilization to stabilize for position only, using the center point.
Enter the Stabilizer module. Click the Imp button under Track Y, as for the Corner Pin.
Select the _center file, in my example this is PDA_center.ascii. You should now see
the key-frames loaded and be able to process
If you want to use more points to stabilize zoom, rotation, affine and perspective moves,
just load the corner tracks as described in the Corner Pin section.
181
Mocha® 2022 User Guide
2. Create a scaffold with a the image you want to insert (Make it a bicubic since you
want a 4-corner pin deformation)
3. Either load the background shot into Mocha and track or send the shot from
SCRATCH to Mocha by creating a custom command
4. Track an object in the usual way, and use AdjustTrack to correct for any drift if
necessary. The exported tracking points will be the four corner points of the Surface,
so you should position these appropriately.
5. Press the Export Tracking Data button on either the Track or AdjustTrack tabs.
Select Assimilate SCRATCH (*.txt) as the format, and save this to a file or copy
to clipboard
182
Mocha® 2022 User Guide
6. Switch back to SCRATCH, select the scaffold with the bicubic and click on TRACK.
7. Once on the TRACKING interface you will see "Paste Mocha data" highlighted,
which is detecting that you have Mocha data on the clipboard.
8. Click on "Paste Mocha data" and the data will be applied to the element.
To export tracking data to the Mistika , click the Export Tracking Data… button on the
Track module, AdjustTrack module or from the File menu. The option in the dropdown
183
Mocha® 2022 User Guide
is called Mistika Point Tracker File (*.trk). Save the file to disk. Mistika
at this time does not support clipboard pasting of the track data.
1. Ensure you have the correct layer active in the Comp 3D control panel
2. Open up the track controls and choose Path > Load
3. Find and load in your saved Mocha track file
4. You may have to delete an errant T0 tracker that Mistika adds by default.
5. Select Apply To > Corner Pin
6. Choose Apply > Move and the tracking data will be applied to the layer.
You will have to move the CTI to refresh the viewer once you have
applied the tracking data
Transform
Any clip or effect that supports the Tracking tab can use Mocha track data.
184
Mocha® 2022 User Guide
The files are import only, so you can’t copy them to the clipboard. You can save the
data as a text file and import it.
Importing the track is as simple as locating the Motion Tracker section of your BCC
plugin and clicking either the "L" button or selecting "Load…" from the Import-Export
dropdown, depending on the plugin you are using.
This section explains how to export tracking data in a format readable by Avid DS.
Track an object in the usual way, and use AdjustTrack to correct for any drift if
necessary. The exported tracking points will be the four corner points of the Surface,
so you should position these appropriately.
Press the Export Tracking Data button on either the Track or AdjustTrack tabs. Select
Avid DS Tracking Data (*.fraw) as the format, and save this to a file. This stores the x/
y coordinates of the four surface points defining the track in eight .fraw text files using
the following naming convention:
185
Mocha® 2022 User Guide
On your DS v10.x system, create a Tracker node and open the Animation Editor for it.
In the left window check the little Blue Animation box to the left of R1x, R1y, R2x, R2y,
R3x, R3y, R4x, and R4y. Now right-click "R1 Tracker Y" and select "Import tracking
coordinates". Navigate to the folder containing the eight FRAW files that Mocha created
and DS will load them. If you have an older version of DS then you will have to load
each of the eight FRAW files individually.
Exporting tracks to HitFilm is very similar to exporting HitFilm Camera solves or Shapes:
186
Mocha® 2022 User Guide
4. HitFilm will then load the Composite Shot with the footage you tracked in Mocha and
layers with either a Quad Warp (for corner pin) or the layer with transform animation
applied (for Transform).
5. You can then either relink the media in the composite file to the desired insert, or
copy the Effect or Keyframes to the desired media in your existing composite.
You can import tracking data into Quantel systems by using Boris FX’s TrackImport
plug-in.
Track an object in the usual way, and use AdjustTrack to correct for any drift if
necessary. The exported tracking points will be the four corner points of the Surface,
so you should position these appropriately.
Press the Export Tracking Data button on either the Track or AdjustTrack tabs. Select
Quantel Corner Pin Data (*.xml) as the format, and save this to a file.
In the Quantel system, select the TrackImport plug-in, and use the plug-ins file browser
interface to select the tracking data file to import. Then click Settings and choose
Tracker in the settings window and click Save.
The tracking data can now be used in a manner identical to tracking data generated
within the Quantel system.
You can export the tracking data by either saving it to file, or copying to the clipboard:
187
Mocha® 2022 User Guide
To import the tracking data into the plugin, you start by selecting an available Data slot
and then either paste from the clipboard or open the exported file:
Once imported, you can then adjust your scene to fit the data. It is important to make
sure you check the warnings and correct any relevant items before setting up your rig:
188
Mocha® 2022 User Guide
1. If there is a warning about format mismatch, click the green "Import Format" link
in the MochaBlend window
2. If there is a warning about no camera rig, click the green "Create Rig" or "Set Active
Rig" according to your needs
3. Finally make sure that you click the "Set Timeline to Data" if your project timeline
is different from the frame range you tracked in Mocha
You can then go ahead and tweak individual settings in the MochaBlend plugin. See
MochaBlend documentation for further information on working with tracking data in the
plugin.
1. Select a layer
189
Mocha® 2022 User Guide
2. Click "Export Tracking Data…" from the Track module or choose the option from
the file menu (File | Export Tracking Data…)
4. Select the view you want to export (or check "Export all views" if it is available for
that export format)
5. Choose whether you want to export the currently selected layer, all visible layers
or all layers
6. Click "Copy to Clipboard" or "Save" depending on your preference. Note that some
exports only allow you to save the data.
Exporting to Alembic
The Alembic Mesh format is used to export PowerMesh tracks to a range of different
software.
Mocha exports a flat mesh with X and Y coordinates for each mesh vertex generated
via the Mesh parameter in the Track module. The export also includes a camera to
make sure the mesh is projected correctly to the original footage dimensions.
Alembic meshes also contain UV mapping so you can easily warp a texture to the mesh
without needing to set them up yourself.
Note that the Alembic format, while 3D, does NOT contain Z
information in the mesh.
We are not calculating depth in this export, only the positions of the
vertices on a tracked plane.
Alembic is a versatile format that can be imported into many different compositors,
such as:
• Nuke
• Flame
• Fusion
• HitFilm
190
Mocha® 2022 User Guide
• Cinema 4D
• Maya
• 3ds Max
• Blender
And so on.
1. Track a layer using PowerMesh by selecting the "Mesh" parameter and generating
a mesh. See the PowerMesh section for more details on Mesh tracking.
2. Select the "Export Track…" option in the Track module or the File menu
4. Enter a Reference Frame into the "Ref Frame" field if you want to change where
the UV coordinates start from. By default the number in the field is the frame you
generated the mesh on.
ReadGeo will then ask how you want to set up the camera and geometry nodes.
191
Mocha® 2022 User Guide
You can use the ReadGeo in combination with the Scanline Renderer node to
composite warped textures over the top of the original footage:
2. Feed in the ReadGeo, Camera and Source image into the inputs of the Scanline
Renderer node. If you view the node, the mesh should now be correctly projected
over the top.
3. Add an image or material to the img input of the ReadGeo node. This will then
project the texture onto the Mesh.
4. Scrubbing the timeline should show the texture warping to the mesh faces over time.
2. Create an ABC node chain by importing the Alembic file via File > Import > Alembic
Scene…
Fusion will then set up an ABC node with the geometry and camera fed into it.
You can use the ABC node in combination with the Renderer3D node to composite
warped textures over the top of the original footage:
192
Mocha® 2022 User Guide
3. Merge the Renderer3D node over the top of your source footage node. If you view
the Merge node, the mesh should now be correctly projected over the top.
4. Add an image or material to the input of the mesh node that is the same as your
mocha layer name. This will then project the texture onto the Mesh.
5. Scrubbing the timeline should show the texture warping to the mesh faces over time.
2. Click the view camera icon in the Camera layer to view the mesh through the camera
You should now see the Mesh lining up with the source footage.
Similar to meshes, this alembic format provides just the transform information for the
vertices in the mesh (along with the camera).
193
Mocha® 2022 User Guide
194
Mocha® 2022 User Guide
Some shape data formats are not supported across 360 seams and
poles in Equirectangular space and may not export as expected.
When your roto work is complete and you would like to export your mattes, choose
the menu item File → Export Rendered Shapes… to be guided through the rendering
process.
The render dialog will give you options to choose either the currently selected layer, all
visible layers or all the layers in the project.
195
Mocha® 2022 User Guide
Options include:
Colorize output
Choose whether you want to render grayscale mattes or by their layer fill color.
Export to
• Directory: The directory where you want to export your image sequence.
196
Mocha® 2022 User Guide
• Suffix: The name of the clip to go after the frame numbers (blank by default).
• Index Start: The number to start the exported sequence from. By default this is the
first frame in the timeline.
Which video file format reader you are using will determine the export handling of clips:
• Using QuickTime: Choosing QuickTime movie will bring up the legacy QuickTime
export options when you click OK.
• Using GStreamer: Choosing QuickTime movie will bring up the GStreamer export
dialog when you click OK. This currently only supports ProRes.
The render dialog also allows you to render to single footage streams or a combined
stream via EXR.
2. Choose the mattes you want to export in the top radio buttons.
b. All Visible: Only the layers that have visibility turned on in the layer controls
b. By matte color: The same as Grayscale, only the mattes are colored according
to what you defined each layer matte color to be in the Layer Controls.
c. By layer ID: A special use case for those that want the mattes to be colored
by their layer ID.
197
Mocha® 2022 User Guide
b. To single footage stream: Renders all views to a single file. You are limited
to rendering to EXR or SXR.
If you have chosen to render the current view or separate footage streams, the view
abbreviation will be suffixed to the rendered export automatically, so there is no need
to define this in the file name.
198
Mocha® 2022 User Guide
It is important that the clip length, frame rate, frame size, interlace
mode, pulldown mode and pixel aspect ratio in the project match the
corresponding settings in the After Effects project where you plan to
use the data. You can change the frame rate and pixel aspect ratio
settings in the Film and Time sections of the Clip tab.
The Mocha shape plug-in will import the following data into After Effects:
• The plane that was generated by the Planar Tracker. This defines the overall
movement of the shape(s)
If you wish to export a single layer, select it before proceeding with the export.
When you are ready to export, select Export Shape Data button. On the dialog that
opens, choose if to export the selected layer, all visible layers or all layers.
When you have made the right selection, click Copy to Clipboard, then switch to After
Effects.
In After Effects, import the same footage and ensure that the frame rate and pixel aspect
ratio are the same as those used when generating the shape. You can change these
values in After Effects by selecting File | Interpret Footage | Main….
Bring the footage into a composition, then select Edit | Paste to add the shape effects
to the composition. Each shape exported will come across as its own plug-in effect.
199
Mocha® 2022 User Guide
Blend mode
You can choose to change the blend mode from the one assigned to the shape by
selecting Multiply, Add or Subtract from the dropdown menu.
Invert
If you have created the shape with feathered edges but wish to switch these off, untick
this parameter. Note that if you have not created feathered edges this will have no
effect.
Render type
This setting allows you to choose between various render effects. The default is the
Shape cutout which uses the matte to cut out the corresponding area in the background
footage. Color composite will apply a single color to the area within the matte, useful
when wanting to preview the positions of multiple layers. Note that the Opacity setting
affects this color fill, allowing you to blend it with the background footage. Color shape
cutout combines the effects of the previous two.
Shape color
Defines the color of the color fill applied when selecting the Color composite render
type.
Opacity
Defines the opacity of the color fill applied when selecting the Color composite render
type.
200
Mocha® 2022 User Guide
3. Choose if you want to export the selected layer, all visible layers or all layers
4. You can also apply the masks to most effects, by adding the effect to your clip,
selecting the effect in the Effects panel and pasting.
201
Mocha® 2022 User Guide
• The plane that was generated by the Planar Tracker. This defines the overall
movement of the shape(s)
If you wish to export a single layer, select it before proceeding with the export.
When you are ready to export, select Export Shape Data button. On the dialog that
opens, choose if to export the selected layer, all visible layers or all layers.
When you have made the right selection, click Save and select a destination to save
the XML file to, then switch to Final Cut.
In Final Cut, import the XML file by CTRL-clicking in the project asset window.
Select Import, then XML… and finally select the XML file that you exported.
Your Mocha shape sequence will now appear in your list of project assets.
202
Mocha® 2022 User Guide
To use the shape to composite the rotoscoped object over a new background, simply
place the Mocha shape sequence in a video track above the background sequence.
Additional controls
If you want access to the actual matte, individual layers of the matte or control that affect
the appearance of the matte, double click on the Mocha shape sequence to reveal the
two main sequences it consists of - the original sequence and the ContourSequence.
Double clicking the ContourSequence will reveal the individual layers that the
ContourSequence consists of. Dragging a layer into the viewer and selecting Controls
will give you access to controls of that layer, as shown below.
Invert
203
Mocha® 2022 User Guide
Soft edge
If you have created the shape with feathered edges but wish to switch these off, untick
this parameter. Note that if you have not created feathered edges this will have no
effect.
Render mode
Luma will cause the layer to render itself in the RGB channels, whereas Alpha will
cause the layer to render itself in the alpha channel of the generated sequence.
Matte color
• Flame Tracer [Shape + Axis] (.mask): This is a Gmask Tracer node split into the
keyframed shape data on a Gmask and the separate tracking data in an Axis. This
makes it easier to change the mask data in Flame or attach other nodes to the Axis
tracking data.
• Flame Tracer [Basic] (.mask): This is a Gmask Tracer node with the Mocha
tracking data and shape keyframes combined into Gmask keyframes without an
axis.
• Flame Gmask Script (.gmask): This is a straight Gmask node with the Mocha
tracking data and shape keyframes combined into keyframes without an axis.
You can select the type from the "Export Shapes" dialog:
204
Mocha® 2022 User Guide
You should then see the Gmask results in the Flame output.
If you are using GMask Tracer, you can view the Axis or Gmask nodes via the Gmask
Schematic:
Choose a shape (not a layer) and select Export Shape Data… from the File menu. A
dialog will show with a drop-down containing 3 different saving options.
205
Mocha® 2022 User Guide
Choose the target application and hit Save. The data going into the file is not binary,
and is shown in the dialog so that you may copy and paste it directly into a text editor
if you prefer to work that way.
Because of differences in the way Splines are handled in the application, maintaining
accurate keyframe interpolation between our software and the other applications
requires that the exported shapes have a keyframe on every frame. This is not a bug
but required to ensure your mattes look right once they’ve been imported into your
compositing application.
You can export Mocha shape data directly to a HitFilm Composite Shot file.
3. Choose if you want to export the selected layer, all visible layers or all layers
4. HitFilm will then load the Composite Shot with the footage you tracked in Mocha
and layers with shape masks.
206
Mocha® 2022 User Guide
You can export a Roto, RotoPaint or SplineWarp node straight to the clipboard or to
a .nk script by choosing Nuke Roto Paint (*.nk) from the Export Shape Data dialog.
3. Choose if you want to export the selected layer, all visible layers or all layers
4. If you choose Copy to Clipboard you can immediately switch over to Nuke, select
the node you wish to apply the shape data to and Paste the data.
5. Alternatively you can import your saved Nuke Script from the File menu.
You have the option of exporting Basic Roto data which bakes the keyframes,
or Transform and Shape data which separates the tracking data from the manual
keyframes.
The latter makes the data less heavy and is only supported in Nuke 6.2 and above.
207
Mocha® 2022 User Guide
The SplineWarp node exports each layer as a joined set of splines with the spline
keyframes separate from the tracked data (which is set in each curves transform).
For example if you only have 1 tracked layer to export, Mocha will export that layer to
SplineWarp as two joined splines in A.
You can then modify the second spline for the warp, or delete it and choose another.
You can export the shape data by saving it to file or by copying it to the clipboard:
To import the shape data into Fusion, either paste directly into the Fusion Flow View
or open the comp file from the file menu. The Mocha layers will come in as separate
nodes into the Flow View.
You can export the shape data by either saving it to file, or copying to the clipboard:
208
Mocha® 2022 User Guide
To import the shape data into the plugin, you start by selecting an available slot in
MochaBlend and then either paste or open the data file:
Once imported, you can then adjust your scene to fit the data. It is important to make
sure you check the warnings and correct any relevant items before setting up your rig:
209
Mocha® 2022 User Guide
1. If there is a warning about format mismatch, click the green "Import Format" link
in the MochaBlend window
2. If there is a warning about no camera rig, click the green "Create Rig" or "Set Active
Rig" according to your needs
3. Finally make sure that you click the "Set Timeline to Data" if your project timeline
is different from the frame range you tracked in Mocha
You can then go ahead and create the splines under the Objects settings. See
MochaBlend documentation for further information on working with shape data in the
plugin.
You can export the shape data by saving it to file or copying to the clipboard:
To import the shape data into Silhouette, create a Roto node in the existing session
and the import the data from File → Import… → Silhouette Shapes menu option, or
paste from the clipboard:
210
Mocha® 2022 User Guide
Exporting stereo Shape data from Mocha is the same as exporting in mono mode,
however now you can choose the view you want to export.
1. Select a layer
2. Click "Export Shape Data…" from the Track module or choose the option from the
file menu (File | Export Shape Data…)
4. Select the view you want to export (or check "Export all views" if it is available for
that export format)
5. Choose whether you want to export the currently selected layer, all visible layers
or all layers
6. Click "Copy to Clipboard" or "Save" depending on your preference. Note that some
exports only allow you to save the data.
Nuke Roto exported as "Export All Views" will paste to Nuke as a combined roto node.
If you would prefer the nodes to be separate, export using the different views instead
of checking the all views option.
You can export a clip to an image sequence or QuickTime format by choosing "Export
Rendered Clip…" from the file menu.
211
Mocha® 2022 User Guide
Options include:
Clip
Frame range
The range of frames you wish to export. If you choose to export the full range but have
not rendered all your frames, the next drop down, "Revert to clip" will be used.
Revert to clip
Choose how to export frames that have not been rendered. If you choose None or the
current clip to export, black frames will be exported for non-rendered frames.
212
Mocha® 2022 User Guide
Save channels
By default, this will just export the flattened render (Color), but if your render has alpha
you can choose this also.
Export to
• Directory: The directory where you want to export your image sequence.
• Suffix: The name of the clip to go after the frame numbers (blank by default).
• Index Start: The number to start the exported sequence from. By default this is the
first frame in the timeline.
Which video file format reader you are using will determine the export handling of clips:
• Using QuickTime: Choosing QuickTime movie will bring up the legacy QuickTime
export options when you click OK.
• Using GStreamer: Choosing QuickTime movie will bring up the GStreamer export
dialog when you click OK. This currently only supports ProRes.
213
Mocha® 2022 User Guide
See the Video Files in Preferences chapter for more on clip exports.
The render dialog also allows you to render to single streams or a combined stream
via EXR.
2. Choose the clip you want to export in the top drop down. By default it chooses the
last render.
3. Select your frame range you want to export. This defaults to the In/Out range.
b. To single stream: Renders all views to a single file. You are limited to rendering
to EXR or SXR.
214
Mocha® 2022 User Guide
If you have chosen to render the current view or separate footage streams, the view
abbreviation will be suffixed to the rendered export automatically, so there is no need
to define this in the file name. '
215
Mocha® 2022 User Guide
Overview
The Camera Solve module is used to take planar tracking information and convert it
to 3d space.
This is particularly useful if you cannot get a good track on the plane you need, as you
can track other planes in the shot and use them to give you track in 3D space instead.
As we are dealing with 3D calculations rather than 2D planar projections, the workflow
is slightly different to a usual planar track.
In order to get a good camera solve you must first identify what type of track it is. Mocha
recognizes three types of camera situations:
Pan, tilt. zoom cameras are generally fixed in place and do exactly what their name
suggests; pan, tilt and zoom.
PTZ cameras are looking for overall movement in the camera plane, rather than
changes in the physical planes within your scene.
216
Mocha® 2022 User Guide
Small Parallax
Small Parallax is where the camera is not fixed to one point in space and has a lot of
mid-ground planes that can be tracked.
Large Parallax
Large Parallax is where the camera is not fixed to one point in space and has trackable
planes very close to the camera. It is referred to as Large Parallax because closer
objects move at much greater perspective and distance to the camera than objects
further away.
Once you have identified the type of camera motion you can start tracking your shot.
PTZ solves are a little different from perspective solves in that they only need to look
for how the camera is behaving when fixed, such as on a tripod.
1. Locate a large area in the shot that can be tracked. If you can’t find a single large
area, you can also use a variety of smaller ones using "Add Spline To Layer".
217
Mocha® 2022 User Guide
2. Turn on the grid so you can see how the plane is moving.
3. Set any parameters you need for the track and begin tracking.
4. If your track pans around more than around 60 degrees, stop the track and create
another shape to continue tracking. The second shape will need to start further
back in time than where the first one stopped tracking, so their tracking information
overlaps on the timeline. This will help the solver blend together the tracking
information of multiple shapes.
5. Once you have tracked the shot, switch to the Camera Solve tab.
6. Turn on the process cog for all tracked layers you wish to use for the solve. Do NOT
select layers that track moving objects: The camera movement is determined
by static objects. See Exporting Camera Solves for details on how to export moving
objects to 3D after a solve.
7. Choose either Auto to let Mocha guess the right solve, or choose Pan, Tilt, Zoom
from the drop-down.
8. If you select Pan, Tilt, Zoom, set the focal length. Most commonly this will be
35-70mm. You can choose more than one if the focal length changes. Also choose
Zooming if the is any camera zoom in the shot.
Once Mocha finishes solving the shot, you can then export the solved scene. See
Exporting Camera Solves for further details.
218
Mocha® 2022 User Guide
Small Parallax shots require at least 2 non-coplanar tracks to solve the scene. Non-
coplanar means not on the same plane as each other. Examples of non-coplanar areas
include:
• Two camera-facing areas at noticeably different distances from the camera, such
as one building in front of another
1. Locate planar areas in the mid-ground of the shot that can be tracked. These objects
should not be moving in the shot, so choose areas like walls, ground, tree trunks
etc. Planes too close or too far away from the camera may not help a Small Parallax
solve.
2. Turn on the grid so you can see how the planes are moving. Adjust the surface to
fit the planar perspective if you need to see this movement more accurately
3. Set any parameters you need for the track and begin tracking.
219
Mocha® 2022 User Guide
4. If you lose the track due to obstructions or the object moving off screen, stop the
track and create another shape to continue tracking. The second shape will need to
start further back in time than where the first one stopped tracking, so their tracking
information overlaps on the timeline. This will help the solver blend together the
tracking information of multiple shapes.
5. Once you have tracked the shot, switch to the Camera Solve tab.
6. Turn on the process cog for all tracked layers you wish to use for the solve. Do NOT
select layers that track moving objects: The camera movement is determined
by static objects. See Exporting Camera Solves for details on how to export moving
objects to 3D after a solve.
7. Choose either Auto to let Mocha guess the right solve, or choose Small Parallax
from the drop-down.
8. If you select Small Parallax, set the focal length. Most commonly this will be
35-70mm. You can choose more than one if the focal length changes. Also choose
Zooming if the is any camera zoom in the shot.
Once Mocha finishes solving the shot, you can then export the solved scene. See
Exporting Camera Solves for further details.
Like Small Parallax, Large Parallax shots also require at least 2 non-coplanar tracks to
solve the scene. (See examples of non-coplanar areas above)
1. Locate planar areas in the shot that can be tracked. These objects should not be
moving in the shot, so choose areas like walls, ground, tree trunks etc.
2. Turn on the grid so you can see how the planes are moving. Adjust the surface to
fit the planar perspective if you need to see this movement more accurately
3. Set any parameters you need for the track and begin tracking.
4. If you lose the track due to obstructions or the object moving off screen, stop the
track and create another shape to continue tracking. The second shape will need to
start further back in time than where the first one stopped tracking, so their tracking
information overlaps on the timeline. This will help the solver blend together the
tracking information of multiple shapes.
220
Mocha® 2022 User Guide
5. Once you have tracked the shot, switch to the Camera Solve tab.
6. Turn on the process cog for all tracked layers you wish to use for the solve. Do NOT
select layers that track moving objects: The camera movement is determined
by static objects. See Exporting Camera Solves for details on how to export moving
objects to 3D after a solve.
7. Choose either Auto to let Mocha guess the right solve, or choose Large Parallax
from the drop-down.
8. If you select Large Parallax, set the focal length. Most commonly this will be
35-70mm. You can choose more than one if the focal length changes. Also choose
Zooming if the is any camera zoom in the shot.
9. Once you have chosen your settings, click Solve.
Once Mocha finishes solving the shot, you can then export the solved scene. See
Exporting Camera Solves for further details.
When a solve is complete, the Solve Quality bar will tell you how accurate the solve
has been. If you get a poor percentage check to make sure your tracks are locked on
accurately, add additional layers to help the solver or try a different solve type or focal
distance.
221
Mocha® 2022 User Guide
2. Select the layers in the layer control panel you want to solve with. (See full
documentation for more information)
6. Check "Vertical Alignment" if you need to estimate vertical alignment for the shot
7. Click Solve
You can then export out to left and right views, or for Standard FBX, you can export full
Stereo cameras. The full stereo camera solve FBX presently works in Maya.
All other exports can only be exported as a single camera view and the solved nulls.
222
Mocha® 2022 User Guide
1. Select the layers you used to do the initial solve in the layer panel (these are still
selected if you have just completed a camera solve). These layers are normally
tracked to static objects, such as walls, ground, a parked vehicle, a dinosaur fossil
etc.
2. Do not choose any layers that are tracking moving objects (people, moving cars,
badgers etc.)
• If you choose HitFilm Composite Shot, click Save and create a filename.
223
Mocha® 2022 User Guide
5. You can then paste into After Effects using the "Paste Mocha camera" option in the
Edit menu, or import your FBX or HitFilm data into the program of your choice.
When you paste into After Effects you will get a camera and a number of nulls
depending on the type of solve you did. PTZ will only export a single null to help define
the camera motion. The other 2 solves will create a null for each corner of your layer
surface objects in Mocha.
1. Once you have exported a camera from the static solve, select any layers that you
used to track moving objects in the shot. If you have not tracked any moving objects
you can do this now.
• If you choose HitFilm Composite Shot, click Save and create a filename.
4. You can then paste into After Effects using the "Paste Mocha camera" option in the
Edit menu, or import your FBX or HitFilm data into the program of your choice.
When you paste into After Effects you will get a camera and a number of nulls
depending on the type of solve you did. PTZ will only export a single null to help define
the camera motion. The other 2 solves will create a null for each corner of your layer
surface objects in Mocha.
You will get a second camera object when you export moving layers.
You can delete this camera if you have already exported the camera
from step 1 of the export.
This can be from the solver not having enough reliable information from the tracks.
224
Mocha® 2022 User Guide
• Any tracked layers with the cog on are assumed to move with camera motion only.
If you have layers checked that are moving objects, Mocha will not solve the scene
correctly. You can export moving object tracks AFTER the scene is solved however.
• Check the Solve Quality bar to make sure the solve has been accurate
• Make sure your planar tracks are accurate and locked on well to their static objects.
• Check that there is enough overlapping frames in the layers if you have had to do
more than one track along the timeline. If you start one track exactly where the last
finished, the solver may not be able to accurately blend the resulting data.
• You may not have enough layers tracked to get an accurate solve. Try adding further
tracks to help the solve.
• Try a different solve type. Sometimes one solver may give better results than
another.
225
Mocha® 2022 User Guide
Overview
This section only relates to Mocha Pro. This feature is not available
in Mocha HitFilm or Mocha AE. For a full comparison of features,
please refer to the comparison chart online.
The Insert module is where you choose the image you would like to insert into your
tracked layer. You can import a still frame or a moving sequence. Once imported, the
Insert module provides a comprehensive range of tools for matching this new image to
the original background layer. The skill here, naturally, is to make the newly imported
image look like it was in the original shot all along.
Input
This is where you choose the Input Clip or background layer and the Insert Clip
or foreground layer, and optionally a separate input clip with an alpha channel for
compositing.
Background Clip
By default Mocha Pro selects the last clip that was tracked as the input. If you want to
change the input, just select a different clip from the pulldown menu.
226
Mocha® 2022 User Guide
Insert Clip
This clip mirrors the Insert Clip inside Layer properties, i.e. if you change one, the other
also changes.
By default mocha Pro selects None as the foreground input, expecting you to make
a choice of your own. To choose an insert select the Import button and use the file
browser to locate a still frame or a file sequence that you would like to appear over
the tracked background clip. In the Mocha Pro Plugin, you can choose an Insert Layer
placeholder that reads from layers back in the host timeline to render in Mocha.
Pre-multiplied
Check this is you want to force the alpha in the insert clip to be pre-multiplied. Off means
the clip remains straight alpha.
Here you can select the name of the clip to be output. Once a clip has been rendered
it is automatically named Composite_<clipname>.
To choose a different name for the output clip select the New… button and choose a
new name.
The remainder of the controls in the Insert module dictate both how much of the insert
is displayed and how it is displayed during the course of the shot.
Source
This controls the area of the insert clip that you would like to be displayed in the tracked
layer.
The source "Region of Interest" (ROI) can move anywhere on the insert image,
including outside it.
As you adjust the ROI, the insert is scaled to fit the surface.
There is also a Reset button to reset the ROI to the corners of the insert image.
By default, the aspect ratio is locked. Uncheck Lock Aspect Ratio to allow arbitrary ROI
changes.
227
Mocha® 2022 User Guide
To adjust the ROI aspect ratio to match that of the background image given its current
position and shape in the background image, click on Fit ROI to Surface.
Conversely, the Fit Surface to ROI button moves the surface position to match the
aspect ratio of the insert image, given its ROI settings.
These controls will work best if you are in a frame where the insert is as front-on as
possible. For them to work correctly, the pixel aspect ratio of both the input clip and
insert clip must be correct.
A common issue is that if the resolution of either clip is not recognized when the clip
was imported, it is assigned the PAL camera type.
This may not give the correct pixel aspect ratio. To check this, switch to the Clip module
and select each clip in turn, checking the appearance on the screen to make sure that
each clip appears correct on the screen.
If not, change the Film Type. If you know that the pixel aspect ratio of the clip is one
(square pixels) select Custom as the Film Type and set the pixel aspect ratio to one.
The number fields are positioned in the menu to relate to the edge of the ROI that they
adjust. So, to reduce the height of the insert ROI at the top of the frame, decrease
the value in the top ROI number field by dragging or highlighting the current value and
typing in a new value.
Similarly, to reduce the height of the insert ROI at the bottom of the frame, increase
the value in the bottom number field by dragging or highlighting the current value and
typing in a new value.
228
Mocha® 2022 User Guide
The same applies for the left and right edges of the frame with the left and right number
fields.
Comp
Layer
Grid Warp
If you turn on "Grid Warp" in the warp tools you can use the a grid to distort the image
inserted in the layer.
The dropdown can set the level of detail in the grid. There are 4 levels, with Level 1
being the lowest detail.
229
Mocha® 2022 User Guide
You can warp the grid points in the viewer to adjust your insert, or use the outer yellow
lines to bulge or pinch the edges.
This shows only the intersections of the grid lines instead of the lines. This can be useful
when you need to see the underlying insert image while adjusting the warp.
PowerMesh Warp
This checkbox activates the controls so the grid warp can be weighted and distorted
organically by the PowerMesh. When this option is off, the grid warp only follows the
planar motion of the track.
You need to have tracked a PowerMesh before this option will have
any effect. See PowerMesh and Mesh Tracking for more details.
Mesh Weighting
This controls how much the Grid Warp is distorted by the PowerMesh. At 100%
weighting, the PowerMesh warps the grid at full strength. At 0% the grid only follows
the planar surface.
Mesh Falloff
230
Mocha® 2022 User Guide
This controls how much the Grid Warp is affected when overlapping the edges of the
PowerMesh. If the Grid is outside the PowerMesh area, it will still be influenced if the
falloff is above zero.
In the example below, the grid point is being warped too far by the PowerMesh:
Adjusting the PowerMesh falloff to 0% tells Mocha to ignore the grid outside the mesh
boundaries, and pulls it back into place:
231
Mocha® 2022 User Guide
Reset
This button resets the Grid Warp back to the original unmodified grid and changes the
PowerMesh warp settings back to the defaults.
Blend
Mode
• Darken
• Multiply
• Color Burn
• Lighten
• Screen
• Color Dodge
• Overlay
• Softlight
• Hardlight
• Color
232
Mocha® 2022 User Guide
• Luminosity
Opacity
This parameter controls the opacity of the foreground image insert. It is a multiplier of
the alpha of the insert, applied before the composite.
Gain
This is where you color correct the insert once it has been added to the tracked layer.
Motion Blur
Select this button if you want to apply motion blur to your insert.
This renders the cut out of the insert with alpha along with the composite file. Turn off
if you only want the composite render of the insert.
Masks
If you want to mask off an area of your insert, clicking on this tool will cause the rendered
insert to only change the pixels within the mattes above and including the current layer.
If the checkbox is switched off, you can select an individual matte to use instead.
Invert
Invert Alpha
Erode Alpha
Change this value from its default zero value to erode the alpha channel of the insert
by the given number of pixels.
Feather
If you want to add a soft edge around the edges of the insert, use the Feather controls.
There are separate controls for the left, right, top and bottom edge widths, which are
233
Mocha® 2022 User Guide
between 0 and 1, where the value 0 indicates no edge and 1 means that the edge
covers the whole of the insert.
If you switch on Lock, all four edges are locked to the same edge width. H Lock and V
Lock apply lock separately to the left/right and the top/bottom edges respectively.
Transform
This section controls a level of corner pin control on top of the adjusted track. This
feature is particularly useful for curved surfaces. It allows the corners of the surface to
be used in the same way as the warp control points (described below) – by aligning
the newly imported insert with a region of the tracked image independently of the blue
surface contour, which follows the adjusted track.
The offset region is drawn in yellow underneath the existing blue surface. You can use
the new points either by dragging the sliders to increase or decrease the value of the
coordinates, or by highlighting the numeric field and typing in a new value. In addition
to this you can hold down the Alt and Control keys on the keyboard (Alt+Cmd on a
Mac) whilst dragging a surface point or line to achieve the same result. The new points
created are offset in a controlled way from the adjusted track.
Hold down Alt, Control and Shift (Alt+Shift+Cmd on a Mac) to gear the changes down
10 times. There is finally a Reset button to return the offset parameters to their defaults.
234
Mocha® 2022 User Guide
When using the rotate tool to rotate the offset surface, the pixel aspect ratio of the insert
clip will be used to create the correct effect. If it is not correct the offset surface will
appear to squeeze or stretch as it is rotated. See the ROI section to see how to fix
this problem.
Export the transformed track. The offsets are keyframed settings of the position of the
insert.
Inserting in Stereo
All inserts are warped in stereo if you have tracked both views. You can render the
insert for both views by selecting Operate on All Views button next to the Render
buttons on the timeline.
See Rendering Insert Layers in the Mocha Pro Plugin section of the User Guide.
235
Mocha® 2022 User Guide
• Bilinear: The default setting. A very common resampling method that produces
decent results
• Lanczos 2-4: Good for preserving details and minimising artifacts, but can produce
ringing on certain images
Ultimately the resampling can be subjective so you may need to test what works best
for the given render, but we highly recommend either Bilinear or Lanczos for Insert
renders.
236
Mocha® 2022 User Guide
Overview
The Mega Plate module is designed to build complete scenes from your footage to
create large clean plates for the purpose of inserting and removing.
Once rendered, Mega Plates can be used as a regular oversized clean plate in the
Remove module (otherwise known as a Mega Clean Plate), or exported to be used as
a background insert.
Much of the workflow is similar to the Remove Module in that you track areas of the
scene and can also remove foreground objects, but the main goal is to make a full
picture of the scene from the moving camera.
The Mega Plate module is GPU optimised. Make sure you have GPU
processing turned on in the GPU page of Preferences for optimal
results.
Mega Plates require a few simple steps to work correctly. The key to a good Mega
Plate is a series of one or more tracked backgrounds and masked foreground objects.
The final rendered plate will be centred on the original source frame you rendered from,
in order to line up the plate correctly for further work.
Since the final mega plate is centred on the frame you rendered on,
there may be a large amount of alpha padding to one side of your
resulting render. To reduce this, aim to render from a frame that is
approximately in the middle of the camera motion.
First of all, scrub through your timeline and identify the planes of depth within your
shot. Background often consists of multiple planes of motion, and there can also be
237
Mocha® 2022 User Guide
obstructing foreground material. For example, in the shot below, the snowboarder is
in front of the mountains.
We handle the foreground first as we need to mask them off from the background plane
and from each other. You don’t actually need to worry too much about tracking the
foreground: If the object is untrackable for whatever reason, just hand-animate a spline
around it.
You absolutely must track an object if it is going to be used to build the actual Mega
Plate. For more information on effective tracking, please refer to the tracking section
of the documentation.
In the example below, we have tracked and rotoscoped the snowboarder which would
otherwise obscure the mountains.
238
Mocha® 2022 User Guide
Layer order matters in Mocha. The closer to the camera an object is, the higher in the
layer stack it should be. Far background should be on the bottom layer, foreground
objects should be on top, in order of closeness.
In the example here, we show the snowboarder layer is above the mountains layer
Once you have your foreground objects masked out across the timeline, draw as big a
shape as possible. Make sure the background layer is under the foreground layers, and
239
Mocha® 2022 User Guide
track. For multiple planes of background, such as a floor and a wall, you will have to
track two separate planes of motion. You must specifically track the background layer
in order for the Mega Plate build to work.
Here we can see the background mountains tracked at the bottom of the layer stack,
covering the large area of mountains in the distance:
Once tracked, Mega Plates will only build the plate within the confines of the layers
you want to use.
Because of this, you want to expand the size of your matte to accommodate the final
render.
In the image below, we expand out the matte to approximate the size of the final built
plate.
240
Mocha® 2022 User Guide
6. Turn on the cogs of the background layers you want to build from and adjust
your parameters
Switch to the Mega Plate tab and adjust your parameters (see Mega Plate Parameters
below).
• Whether to autoscale based on the data or define a final mega plate size
We recommend trying to build a Mega Plate with Illumination modelling set to None
first. This is the fastest setting for rendering, and can quite often be all you need if there
is not much light difference in the background over time.
7. Render
Once your layers are ready and the parameters are set, click the render button.
This will generate a large plate either based on your own dimensions, or autoscaled
if you have set Autoscale on:
241
Mocha® 2022 User Guide
Depending on what frame you render your plate, there may be a large amount of alpha
padding to one side of the plate. To avoid this, try rendering from the middle of the
overall camera motion.
For example, in a simple left-to-right pan, render on the frame that is in the centre of
the pan to fill out more the detail to either side of the centred frame.
When you have rendered your plate, you can then try to remove the foreground object
from the resulting image:
Note that standard rules for removing foreground apply. See The Remove Module
for more information on removing foreground objects. The background layers you
generated the Mega Plate with must be encompassing the foreground layers in order
to remove them. In the image below, we see the snowboarder layer is sitting over the
mountain layer and can there fore be removed:
242
Mocha® 2022 User Guide
Now that you have rendered a final image, with or without removing the foreground
objects from the plate, you can then turn it into a clean plate clip and save it to disk.
To do this:
2. Click the "Create" button under the Clean Plate clip settings in the bottom left of
the module parameters
This will create a Mega Clean Plate clip which can now be referenced by the Remove
module.
243
Mocha® 2022 User Guide
With all these "Mega" terms floating around let’s clarify what we mean by the two terms:
Mega Plate
The Mega Plate is the large scene generated by the Mega Plate module. This
is essentially using parameters similar to the Remove module to make a full
representation of the entire tracked footage.
This is a frame or series of frames that are saved to disk from the Mega Plate render
for the purpose of painting or "cleaning up" (thus the term "Clean Plate").
244
Mocha® 2022 User Guide
The Mega Clean Plate clip created from Mega Clean Plates is what is referenced by
the Mocha Remove module to help replace pixels.
2. You create a Mega Clean Plate from the generated Mega Plate and save it to disk
for further editing/cleaning
3. The Remove module can use the Mega Clean Plate for further work.
One or more background layers must be defined that include all areas that the
foreground object moves across during the shot.
To get the result you expect you should observe the following rules:
• If you are getting a large amount of alpha padding to one side of the plate, try
rendering from the middle of the camera motion. For example, in a simple left-to-
right pan, render on the frame that is in the centre of the pan to render the detail
to either side of the centred frame.
• As the tracker computes the motion of planar objects in the scene, you get the best
results if the background is planar, or it has been subdivided into planar elements.
Otherwise you might see artifacts.
• If Mocha Pro cannot track the background accurately you will probably get artifacts.
If your selection of the background includes objects that move differently to the
background this can reduce the accuracy of the computed motion.
• If your selection of the background includes parts of the foreground objects then this
can cause problems for the tracker as it will compute a motion for the background
that is influence by the movement of the foreground. This may also cause artifacts
when the Mega Plate render is performed.
245
Mocha® 2022 User Guide
not know how to handle the changes. Another cause of such artifacts is moving
specular reflections.
When changing parameters in Mocha Pro the change only affects the currently selected
layer. To change the parameters of a layer other than the currently selected layer that
layer must first be selected.
Input Tab
Here you specify the input clip for the mega plate process and any cleanplates you
wish to import.
Input Clip
You can choose from any of the Mocha Pro result clips to be used as the source clip to
fill the requested layers, instead of the default, which is to use the originally imported
clip as the input clip. This can be useful if you have to do multiple passes to get an
effective plate.
246
Mocha® 2022 User Guide
Cleanplates
Here you can import Mega Clean Plates to replace frames in your footage via the
Remove module. Note that in order to tell Mocha the plate is oversized (i.e doesn’t
match the original project source dimensions), import the plate from the Mega Plates
module rather than the Remove module.
If you import the Mega Plate via the Remove module, Mocha will ask you if you want
to create a Mega Clean Plate clip.
3. By default the Preview option is switched on. This means that the selected
(highlighted) cleanplate will be shown in the display window. The current frame
viewed on the timeline is also changed to the selected cleanplate frame. When
Preview is switched off, the view switches back to the clip you are viewing.
4. Click on the File name or Frame Number for any cleanplate to change the
selection. The Preview option allows you to select the correct frame number for
your cleanplate(s). If you import a single cleanplate, the frame number will be listed
as “All”. This means that the cleanplate will be used for all the frames of the clip.
Use this option if the camera is locked off. Change “All” to a particular frame if want
247
Mocha® 2022 User Guide
to change this behavior and track the cleanplate from the specified frame into the
other frames.
The All option only applies when you are using a single cleanplate.
If you import two or more cleanplates, Mocha Pro will try to guess the frame numbers
from any numbering in the file name. When using the cleanplates between those
frame numbers, Mocha Pro will blend the nearest two cleanplates to produce a smooth
transition through the clip.
If you want to change the cleanplate settings after exiting the cleanplate window, click
on Edit… You would need to do this if you are using the frames on a new machine
where the cleanplates are stored in a different location, or just to add new cleanplates.
If you re-import files with the same name but different directory to existing cleanplate
files, Mocha Pro will update the file to the new directory.
Once you have rendered a Mega Plate within Mocha Pro you can create a Mega Clean
Plate from the currently viewed frame.
To do this, make sure you are viewing a frame you have rendered and click on the
Create button. This will create a clip containing the rendered frame you are viewing,
and set the Cleanplates clip to the new clip. You can then touch up this Mega Clean
Plate from your saved folder.
When you save your edits, it will automatically be updated in Mocha Pro to be used
in the Mega Clean Plate list.
Creating a Mega Clean Plate in the Mega Plate module does NOT
use that clean plate for subsequent renders in the Mega Plate
module. To use a Mega Clean Plate, switch to the Remove module.
Output Tab
This assigns an output clip for the render. You can create new output clips if needed
here.
Search Range
Used to specify which frames should be used when building a Mega Plate. The First
Frame, Last Frame, # Frames Before and# Frames After settings can be keyframed.
248
Mocha® 2022 User Guide
• First Frame and Last Frame specify an absolute range in the input clip
• # Frames Before and # Frames After settings specify the range relative to the
currently rendered frame. If both options are used the intersection of the two frame
ranges is used.
Step
With this option you can specify that not every frame in the reference range is to be
used.
Setting it to three, for instance, means that only every third frame will be accessed. This
feature can speed up the removal process for large projects, especially film projects,
which are very memory intensive.
Setting a step value can skip over clean plates for specific frames
causing them to not be used in the Mega Plate calculation.
Auto Step
This is an automatically calculated version of the manual Step field. If you’re not quite
sure what step is optimal, Auto Step will look at the motion of the layers and try to
determine the best step to use.
Illumination Model
249
Mocha® 2022 User Guide
• The None option will not model changes, giving you a result very quickly.
• Linear will model global changes and should hence be used if the brightness change
between frames are caused by e.g. changes in aperture.
• Interpolated will model global and local changes and is often useful when there are
erratic lighting changes or a clean plate is used.
Smoothing Level
This controls the amount of smoothing applied in the Interpolated model. Increase the
value if there are artifacts which might be resolved with more smoothing, either spatial
variations or temporal variations.
Blend Interior
This option causes pixels from different frames to be blended into each other to avoid
tearing artifacts inside the Mega Plate.
Blend Amount
Select either Blend or Randomize and increase the value to reduce artifacts which
sometimes can be seen when illumination modelling fails.
• Blend uses alpha blending from the replaced areas to either the original pixels or
the recently replaced areas.
• Randomize mixes original and replaced pixels in a random way to achieve a similar
effect.
3D Compensation
250
Mocha® 2022 User Guide
For example, if you have tracked a background that has subtle parallax it can cause
removal in other frames to look incorrect. 3D compensation attempts to model the
parallax change in the target frame.
Flood Fill
If part of the missing background has not been found anywhere in the clip, and the plate
cannot be completely built, Flood Fill can be switched on to fill the remaining region
using a flood fill method.
Mega Cleanplates
Remove Foreground
This button will remove any foreground objects in the Mega Plate.
1. Render the mega plate first using your background layers by selecting the layer
processing cogs and pressing the render button
2. Switch on the cogs of the foreground layers you want to remove
3. Press Remove Foreground
Any layers selected will then remove the underlying foreground objects from the mega
plate, providing they have removable background behind them.
See the Remove Module documentation for more information on how foreground
objects are removed with background data.
Autoscale On by default, this option will automatically calculate the required size of the
plate. If unselected, the dimensions in the fields below the autoscale option will be used.
251
Mocha® 2022 User Guide
• Remember that you can only remove an object if the background behind it is also
tracked. Track the background layer(s) before removing a foreground object.
• Check that the object is inside the selection contour in every frame. If it isn’t, move
the control points outwards as necessary to completely enclose the object. Use
linking forwards/backwards to apply changes to the contour in multiple frames.
• Check whether the relative motion of the foreground and background layers is
sufficient to see “behind” the whole of the foreground object. Mocha Pro only needs
to see the background in one frame to achieve good results. If more images are
available in the clip, track the selections over a few more images. This may provide
Mocha Pro with the extra information it needs.
• Try pulling the selection contour closer to the edge of the object. This will provide
Mocha Pro with extra background pixels.
The built Mega Plate is brighter/darker in sections rather than being evenly lit.
• If the variation is more complex than a simple brightness change, try the Interpolated
illumination model, which will compute and compensate for changes in apparent
brightness and color that vary across the region being built.
Some Mega Plate sections don’t line up with the rest of the image.
• This may be due to inaccurate tracking of the background. If you think this is
possible, see the above hints on improving the tracking.
• If the tracking accuracy cannot be improved, increase the Blend amount. This will
dissolve the plate sections into the original image and reduce the tearing artifacts.
• If there is more than one background selection, special treatment of the boundary
between them is often required. If the background layers are joined, such as a
wall and floor selection, use the Attach Layers tool to join them together and avoid
artifacts at the boundary. If they are moving independently, you need to adjust the
boundary in the front background selection to accurately delineate the boundary
between the two background selections.
252
Mocha® 2022 User Guide
Render is slow.
If you have a long clip, especially working with high resolution footage, Mega Plate
renders can be slow because Mocha has to search over a large number of images with
a large memory footprint.
Before you change any settings in the Mega Plate parameters, it is worthwhile checking
to see if GPU Processing is turned on in Preferences under the GPU page.
Mega Plate and Remove are the most memory intensive modules in Mocha Pro, and
it will always benefit the performance to add more memory. If Mocha Pro can fit all
the images it needs in memory, performance will be dramatically accelerated when
rendering Mega Plates with multiple frames, because it will minimize the amount of
disk accesses.
Your aim should be where possible to change the settings to achieve this:
• Change the First Frame and Last Frame in Range to a smaller range of frames.
Experiment by reducing the range of frames searched.
• Increase the Step in Range to sample less frames.
• Create clean plates on key frames (such as the start, middle and end of the shot,
or wherever there is significant change) and check "Use Cleanplates Exclusively"
to reduce the need to look for other frames.
This means you can paint on one large plate and then reference only this clean plate
in remove, by turning on "Use cleanplates exclusively".
253
Mocha® 2022 User Guide
5. Create a foreground layer if one doesn’t exist yet then select the foreground
6. Choose the Mega Clean Plate clip from the "Cleanplate Clip" section
8. Render forwards
Any changes you have painted into the clean plate will then be applied across the whole
timeline.
For more details on how to use clean plates in the Remove module, see The Remove
Module section.
You can insert a Mega Plate into an After Effect composition the same way as you do
with a regular insert.
However, since the Mega plate will always be larger than your original composition,
you need to do some extra steps to set up the plate:
1. Export the mega plate to disk, either by creating a clean plate in the Mega Plates
module or exporting the single frame in Export Rendered Clips.
2. Align your Surface to the frame you used to create the mega plate. For example,
if you rendered a Mega Plate on frame 200, align the surface to frame 200.
4. Import the mega plate into After Effects and drag it to your composition
254
Mocha® 2022 User Guide
5. Precompose the mega plate and select the Leave All Attributes option
7. Apply the CC Power Pin track data to the mega plate precomp layer, either by
pasting from the clipboard or using "Apply Export" in the Mocha Pro Adobe plugin.
Now the corner pin will be applied to the precomped layer, but with the Collapse
Transformations option set, the whole plate will be distorted in place.
You can insert a Mega Plate into Nuke the same way as you do with a regular insert.
However, since the Mega plate will always be larger than your original composition,
you need change to do some extra steps to set up the plate:
1. Export the mega plate to disk, either by creating a clean plate in the Mega Plates
module or exporting the single frame in Export Rendered Clips.
255
Mocha® 2022 User Guide
2. Align your Surface to the frame you used to create the mega plate. For example,
if you rendered a Mega Plate on frame 200, align the surface to frame 200.
5. Paste the corner pin into the node graph. If the "From" fields in your corner pin are
not set to the original footage size, set them now.
7. Apply a Reformat node to the mega plate to fit to the project size, but set the Resize
type to "None"
256
Mocha® 2022 User Guide
8. Cut and paste the corner pin to mega plate or just hook up the inputs
9. Merge the mega plate over the top of your original footage.
'
257
Mocha® 2022 User Guide
Overview
The remove module is designed to remove foreground objects from your footage to
create clean plates. A removed object can be anything: wires, poles, signs, people and
so on. The only requirement for a good removal is enough background to use.
To understand how Mocha Pro removes a foreground object consider how you would
do it yourself. A common method is to select a source image where the foreground
object does not obscure the background region you are trying to paint in the target
frame. You would then clone or otherwise copy the pixels from the source frame to the
target frame. If the background is not in the same position in the two frames you would
have to track the patch of pixels into the frame, and if the lighting is different between
the two frames you would have to adjust the brightness of the patch.
The remove module attempts to do this for you automatically using a method called
motion keying. As it has tracked the background areas you have defined, it can move
pixels of these background areas from one frame to another. Hence, if a part of a
background area is obscured in one frame, Mocha Pro can search the rest of the clip for
a frame where the obscured background area is visible, and move the pixels correctly
into the target frame. During this process Mocha Pro will evaluate and compensate for
the lighting differences between the source and the target frame.
The Remove module is GPU optimised. Make sure you have GPU
processing turned on in the GPU page of Preferences for optimal
results.
First of all, scrub through your timeline and identify the planes of depth within your
shot. Background often consists of multiple planes of motion, and there can also be
258
Mocha® 2022 User Guide
obstructing foreground material. For example, in the shot below, the sign is in front of
the ground, and the car door is in front of (but not obscuring) the sign.
We handle the foreground first as we need to mask them off from the background plane
and from each other. You don’t actually need to worry too much about tracking the
foreground: If the object is untrackable for whatever reason, just hand-animate a spline
around it. You absolutely must track an object if it is going to be used as a background
pass to replace foreground. For more information on effective tracking, please refer to
the tracking section of the documentation.
In the example below, we have tracked and rotoscoped the sign and the door frame,
which would otherwise obscure the ground plane.
259
Mocha® 2022 User Guide
Layer order matters in Mocha. The closer to the camera an object is, the higher in the
layer stack it should be. Far background should be on the bottom layer, foreground
objects should be on top, in order of closeness.
In the example here, we show the door layer is above the sign layer, and the sign is
above the ground layer in the stack.
260
Mocha® 2022 User Guide
Once you have your foreground objects masked out across the timeline, draw as big
a shape as possible to cover as much of the possible area you want to remove. Make
sure the background layer is under the foreground layers, and track. For multiple planes
of background, such as a floor and a wall, you will have to track two separate planes
of motion. You must specifically track the background layer in order for the removal to
work, even if you are working with a locked-off shot.
Here we can see the background drawn on a layer at the bottom of the layer stack,
covering the large area of grass.
5. Select the layer you want to remove and adjust your removal parameters
Switch to the remove tab and adjust your parameters (see Remove Parameters below).
Key things to focus on are your search range, whether or not you need to create or
adjust a cleanplate, and if you need to use an illumination model.
We recommend trying a remove with Illumination modeling set to None first. This is the
fastest setting for removals, and can quite often be all you need if there is not much
light difference in the background over time.
6. Render
Once your layers are ready and the parameters are set, click the render button or
render forward.
261
Mocha® 2022 User Guide
Removal Troubleshooting
One or more background layers must be defined that include all areas that the
foreground object moves across during the shot.
To get the result you expect you should observe the following rules:
• As the tracker computes the motion of planar objects in the scene, you get the best
results if the background is planar, or it has been subdivided into planar elements.
Otherwise you might see artifacts.
• If Mocha Pro cannot track the background accurately you will probably get artifacts.
If your selection of the background includes objects that move differently to the
background this can reduce the accuracy of the computed motion.
• If your selection of the background includes parts of the foreground objects then this
can cause problems for the tracker as it will compute a motion for the background
that is influence by the movement of the foreground. This may also cause artifacts
when the removal is performed.
• If the background contains e.g. a waterfall or another object that changes
appearance from frame to frame, you will most likely get artifacts if you try to remove
262
Mocha® 2022 User Guide
a foreground object that moves across such a background. Mocha Pro will not know
how to handle the changes. Another cause of such artifacts is moving specular
reflections.
Remove Parameters
Here we provide a breakdown of each remove tool parameter and how to use it
effectively.
When changing parameters in Mocha Pro the change only affects the currently selected
layer. To change the parameters of a layer other than the currently selected layer that
layer must first be selected.
Input Tab
Here you specify the input clip for the remove process and any cleanplates you wish
to import.
Input Clip
263
Mocha® 2022 User Guide
You can choose from any of the Mocha Pro result clips to be used as the source clip to
fill the requested foreground layers, instead of the default, which is to use the originally
imported clip as the input clip. This can be useful if you have to do multiple passes to
get an effective remove.
Cleanplates
Here you can import cleanplates to replace frames in your footage. If you don’t have
enough background to use in your shot, importing your own cleaned up version of a
frame can assist the remove tool greatly.
3. By default the Preview option is switched on. This means that the selected
(highlighted) cleanplate will be shown in the display window. The current frame
viewed on the timeline is also changed to the selected cleanplate frame. When
Preview is switched off, the view switches back to the clip you are viewing.
4. Click on the File name or Frame Number for any cleanplate to change the
selection. The Preview option allows you to select the correct frame number for
your cleanplate(s). If you import a single cleanplate, the frame number will be listed
264
Mocha® 2022 User Guide
as “All”. This means that the cleanplate will be used for all the frames of the clip.
Use this option if the camera is locked off. Change “All” to a particular frame if want
to change this behavior and track the cleanplate from the specified frame into the
other frames.
The All option only applies when you are using a single cleanplate.
If you import two or more cleanplates, Mocha Pro will try to guess the frame numbers
from any numbering in the file name. When using the cleanplates between those
frame numbers, Mocha Pro will blend the nearest two cleanplates to produce a smooth
transition through the clip.
If you want to change the cleanplate settings after exiting the cleanplate window, click
on Edit… You would need to do this if you are using the frames on a new machine
where the cleanplates are stored in a different location, or just to add new cleanplates.
If you re-import files with the same name but different directory to existing cleanplate
files, Mocha Pro will update the file to the new directory.
Create (Cleanplate)
Clean plates are created based on the bit depth of the current source
clip.
One useful option within Mocha Pro is to create a cleanplate from the currently viewed
frame.
To do this, make sure you are viewing the frame you want to use and click on the
Create button. This will create a clip containing the frame you are viewing, and set
the Cleanplates clip to the new clip. You can then touch up this cleanplate from your
Results folder.
The frame that is saved will be based on the current bit depth of the source clip, which
will change the image format. For low bit depth clips, this will either be tif (the default),
or dpx. For float, this will be exr or tif.
You can change to the preferred image type in preferences under the clip tab.
When you save your edits, it will automatically be updated in Mocha Pro to be used
in the cleanplate list.
265
Mocha® 2022 User Guide
If this option is checked, only the cleanplates will be used by Remove to remove the
pixels in the selected layer. If it is unchecked, the normal Remove process will be used,
pulling in pixels from other frames in the input clip. The cleanplates will then only be
used to remove the remaining pixels.
Output Tab
This assigns an output clip for the removal render. You can create new output clips
if needed here.
Search Range
Used to specify which frames should be used when removing a layer. The First Frame,
Last Frame, # Frames Before and# Frames After settings can be keyframed.
• First Frame and Last Frame specify an absolute range in the input clip
• # Frames Before and # Frames After settings specify the range relative to the
currently rendered frame. If both options are used the intersection of the two frame
ranges is used.
Step
With this option you can specify that not every frame in the reference range is to be
used.
Setting it to three, for instance, means that only every third frame will be accessed. This
feature can speed up the removal process for large projects, especially film projects,
which are very memory intensive.
266
Mocha® 2022 User Guide
Setting a step value can skip over clean plates for specific frames
causing them to not be used in the Remove calculation.
Auto Step This is an automatically calculated version of the manual Step field. If you’re
not quite sure what step is optimal, Auto Step will look at the motion of the layers and
try to determine the best step to use.
Illumination Model
• The None option will not model changes, giving you a result very quickly.
• Linear will model global changes and should hence be used if the brightness change
between frames are caused by e.g. changes in aperture.
• Interpolated will model global and local changes and is often useful when a
cleanplate is used.
Smoothing Level
This controls the amount of smoothing applied in the Interpolated model. Increase the
value if there are artifacts which might be resolved with more smoothing, either spatial
variations or temporal variations.
Blend Interior
This option causes pixels from different frames to be blended into each other to avoid
tearing artifacts inside the Remove area.
267
Mocha® 2022 User Guide
Blend Amount
Select either Blend or Randomize and increase the value to reduce artifacts which
sometimes can be seen when illumination modelling fails.
• Blend uses alpha blending from the replaced areas to either the original pixels or
the recently replaced areas.
• Randomize mixes original and replaced pixels in a random way to achieve a similar
effect.
3D Compensation
For example, if you have tracked a background that has subtle parallax it can cause
removal in other frames to look incorrect. 3D compensation attempts to model the
parallax change in the target removal frame.
Flood Fill
If part of the missing background has not been found anywhere in the clip, and the
foreground object therefore cannot be completely removed, Flood Fill can be switched
on to fill the remaining region using a flood fill method. This is especially useful when
it is the matte you are interested in, as you then don’t care too much about the quality
of the removal but require that the foreground object is completely removed to avoid
holes in the matte. The Smoothing Level should be increased if you result is not as
smooth as it should be or there are temporal variations in the results.
Stereo Remove
Stereo Remove works in exactly the same way as Mono Remove above, with the
additional bonus of being able to render both views at the same time and also choosing
whether or not each view assists the other view during the remove process.
1. Track the background in both views with a layer as outlined in "Stereo Tracking"
above
2. Mask out and animate the foreground object you want to remove. You will need to
check to make sure the object is correctly covered by the layer in both views.
268
Mocha® 2022 User Guide
3. Make sure the foreground layer is above the background layer in the layer controls.
4. Adjust your remove parameters (See the full User Guide for details on Remove
parameters)
5. If it is not already on, press the "Operate in all views" button on the right side of
the render buttons.
By default "Prefer Same View" is checked on in the search range section of the Remove
tab. This will attempt to use the current view rather than both views to perform the
remove.
If you have useful information in the other view that may assist the remove, you can
uncheck this option.
• Remember that you can only remove an object if the background behind it is also
tracked. Track the background layer(s) before removing a foreground object.
• Check that the object is inside the selection contour in every frame. If it isn’t, move
the control points outwards as necessary to completely enclose the object. Use
linking forwards/backwards to apply changes to the contour in multiple frames.
• Check whether the relative motion of the foreground and background layers is
sufficient to see “behind” the whole of the foreground object. Mocha Pro only needs
269
Mocha® 2022 User Guide
to see the background in one frame to achieve good results. If more images are
available in the clip, track the selections over a few more images. This may provide
Mocha Pro with the extra information it needs.
• Try pulling the selection contour closer to the edge of the object. This will provide
Mocha Pro with extra background pixels.
• This may be due to inaccurate tracking of the background. If you think this is
possible, see the above hints on improving the tracking.
• If the tracking accuracy cannot be improved, increase the Dissolve Width. This will
dissolve the patches into the original image and reduce the tearing artifacts.
• For small foreground objects such as wires, in front of a non-planar background,
switch on 3D Compensation. This will attempt to model the effect of the varying 3D
depth of the background.
• If there is more than one background selection behind the foreground selection,
special treatment of the boundary between them is often required. If the background
layers are joined, such as a wall and floor selection, use the Attach Layers tool to join
them together and avoid artifacts at the boundary. If they are moving independently,
you need to adjust the boundary in the front background selection to accurately
delineate the boundary between the two background selections.
Remove is slow.
If you have a long clip, especially working with HD or film, Remove can be slow because
it has to search over a large number of images with a large memory footprint.
Before you change any settings in the Remove parameters, it is worthwhile checking
to see if GPU Processing is turned on in Preferences under the GPU page.
270
Mocha® 2022 User Guide
Remove is the most memory intensive module in Mocha Pro, and it will always benefit
the performance to add more memory. If Mocha Pro can fit all the images it needs
in memory, performance will be dramatically accelerated when rendering Remove in
multiple frames, because it will minimize the amount of disk accesses.
Your aim should be where possible to change the settings to achieve this:
• Change the First Frame and Last Frame in Range to a smaller range of frames.
Sometimes Mocha Pro can spend a lot of time removing a small part of the
foreground image, and if your layers were chosen loosely, not all of the foreground
needs to be removed. Experiment by reducing the range of frames searched.
271
Mocha® 2022 User Guide
Overview
The stabilize feature in uses the data you have tracked to lock down a moving shot.
You can think of it as the inverse of what tracking does: It moves the footage around
an area rather than an area around the footage. Stabilization is useful for:
• Locking off a shot so it is easier to work with, before restoring the motion back into
the final composition
Stabilization is a fairly straightforward operation. Once you have selected the tracked
layer you wish to work with you have options to restrict the stabilization to key details.
Input Tab
272
Mocha® 2022 User Guide
Range Tab
273
Mocha® 2022 User Guide
Fixed Frames
Here you can enter the frames you want to be unaffected by stabilization. Mocha will
adjust the stabilization between these frames. You can either enter them into the field,
or go to a frame and press the + key.
Fixed frames can be useful when you want stabilization across a shot but would like to
keep the general motion of the original shot intact.
When using Warp Mapping, the fixed frames list is limited to one frame. Warping is
reset to warp from that frame.
Smooth
274
Mocha® 2022 User Guide
This is the main section for controlling how you want the shot to stabilize.
All Motion
X Translation
Stabilize translation in X
Y Translation
Stabilize translation in Y
Rotation
Stabilize rotation
Zoom
X Shear
Y Shear
X Perspective
275
Mocha® 2022 User Guide
Y Perspective
Shear and Perspective stabilization can be useful when you want to straighten out a
plane in your footage to work on it flat before restoring it to its original perspective and
motion.
Maximum Smoothing
Stabilize across the entire track. Setting this value will override the #Frames value
beneath it.
# Frames
Stabilize variation across a certain amount of frames. Setting this to a low value will
focus the stabilization to only pick up motion that occurs in short bursts (such as a bump
in the road). A higher value will try to adjust longer movements.
Warp Mapping
Warp Mapping utilizes the PowerMesh tracking to lock down warping areas.
2. Switch to Stabilize
276
Mocha® 2022 User Guide
6. Check "Use Matte" if you want to matte out the stabilized region
Mesh Warp
This turns on the Warp Mapping. When it is turned off, Stabilize will use regular the
regular planar stabilization controls.
Unwarp
Unwarp locks the frame to the "Fixed Frame" value set in "Frame List" to the right of
the stabilize module parameters.
By default, this is set to the frame the PowerMesh frame was generated on.
Warp
This is the inverse of the Unwarp render. It warps the area to the motion of the tracked
mesh.
Use Matte
The Matte uses the warped layer matte to mask out the warped region.
Quality
• Draft: A very fast render preview, but lower quality. Draft can produce triangulation
on warped edges and is not recommended for final renders.
• High: A much denser render warp mapping that produces high quality results but
will render slower.
277
Mocha® 2022 User Guide
Warping workflow utilises the singular "Warp" option in Warp Mapping to modify an
overlay, usually with alpha.
3. Track the area you want to stabilize using the Mesh option
7. Create an overlay clip or image that you want to warp to the original shot.
From there, the workflow can depend on the host you’re using the Plug-In with:
1. Create a new layer above the source footage track using the overlay image you
want to warp over your footage,
2. Copy the Mocha Pro effect that contains your tracked mesh data
3. Paste the Mocha Pro Plug-In to the overlay image as a new layer above the source
image.
278
Mocha® 2022 User Guide
4. In the Mocha Pro Plug-In interface, select "Stabilize: Warp" from the Module render
drop down.
1. Create a new image/clip node containing the overlay you want to warp over the
source.
2. Copy the Mocha Pro node that contains your tracked mesh data
3. Paste the Mocha node again and then change the Source input to the overlay image
node
4. In the plug-in interface, select "Stabilize: Warp" from the Module render drop down.
279
Mocha® 2022 User Guide
Note than in Fusion you need to make sure single-frame images or effects are read as
the same length as your source footage or Mocha may not read the frames.
You can do this via a merge over the top of the original source footage and setting the
merge up to only show the foreground. This will then adopt the frames of the footage
when you feed the merge into Mocha.
To view the matte masking out the render, you may need to set Premultiply Output
from "Auto" to "On":
1. Create a new video track above the source footage track and place your overlay
on this new video track
2. Drag the Mocha Pro efect that contains your tracked mesh data onto the track above
and use the "Apply Mate" to mask RGB items over the top. Keep in mind however
than alpha and blending is not supported in Media Composer without addtional
plug-ins.
3. In the plug-in interface, select "Stabilize: Warp" from the Module render drop down.
This now warps the image back over the top of the original.
280
Mocha® 2022 User Guide
Overlay Images
Overlay images can either be transformed images (for example brand logos) set in
place then comped on top of your reference frame, or painted areas on top of a full
frame alpha. As long as the final image matches the dimensions of the original source
image, the frame should line up and be warped correctly.
For example, if your shot is 1920x1080, you would want to make a 1920x1080 overlay
image and keep alpha in the area you don’t need modified.
You can also choose to just directly paint on top of a single still frame of the source
footage and then use the masking tool to mask out the remainder of the frame.
For example, if you are tracking a person’s eyes opening and closing, the Unwarp
process may be able to stabilize the skin until it crunches up and disappears, but
rewarping means those stabilized pixels may stretch or tear unnaturally.
This doesn’t of course mean that unwarping and rewarping isn’t a valid approach. You
just need to be aware of the limitations.
In the Mocha Pro Plug-In most of this happens in the Plug-In interface.
281
Mocha® 2022 User Guide
Now you can make any changes to the precomped version of the warp and it will rewarp
correctly in the parent composition.
282
Mocha® 2022 User Guide
12.In the plug-in interface for the pasted node, select "Stabilize: Warp" from the Module
render drop down.
To view the matte masking out the render, you may need to set Premultiply Output
from "Auto" to "On":
Now you can make any changes in the middle of the two Mocha Pro nodes and it will
rewarp correctly in the parent composition.
The Standalone application is slightly more involved as you need to use an external
application to make any changes to the rendered result.
1. Track the area you want to stabilize using the Mesh option
2. Switch to Stabilize and turn on "Mesh Warp"
3. Preview the Unwarp
4. Render forwards
5. Export the clip to a lossless format, such as TIF
6. Work on the rendered clip
7. Go to the Clip module in Mocha and Import the modified clip back to your Mocha
Project
8. While in the import dialog, inherit the attributes of the origial clip via the "Inherit
Attributes from" dropdown
9. Go to the Stabilize module and choose the new clip from the "Input" dropdown on
the far right
10.Turn on Warp.
The modified clip should now warp back to the correct spot.
Center
283
Mocha® 2022 User Guide
Zoom
This zooms into the footage to push the edges out of frame.
Apply Crop
This applies the Clip mask from the Clip Module to crop down the edges. If this is
not applied, the stabilize will render outside the clip mask to the full dimensions of the
original source footage.
You can use Auto Fill to help fill in the black edges with previously tracked layers, similar
to how the Remove Module uses tracked background layers to remove foreground
objects.
If you have sufficient usable background available, you can avoid reducing the quality
or resolution of footage, which is a common problem in stabilization.
Auto Fill
This turns on the auto fill function. You will not see the effect of fill however until you
render the result.
Search Range
Model Illumination
Like the Illumination modeling in the remove tool, this tries to calculate the correct
lighting for a filled-in edge.
Dissolve
This gives the option of dissolving the edge of frame into the filled frame to reduce
obvious mismatches.
284
Mocha® 2022 User Guide
If you haven’t set up a tracked background layer to use to help fill the edges, you can let
Mocha attempt to fill by analyzing the footage. This is mostly useful for filling in frames
where there is only position and rotation jitter.
1. Track a static area of the shot using Translation, Scale and Rotation only. You don’t
want to track a moving object within the shot as this will throw off the stabilization.
2. Once tracked, switch to the Stabilization tool.
3. Choose which fields of motion you wish to stabilize in the Smooth parameters.
By default, translation is automatically selected. In many cases you may only be
interested in position stabilization, but hand-held cameras can introduce scale and
rotation jitter as well.
4. Adjust the number of frames you want to look for jitter over. A small amount of
frames will look for tiny adjustments in the overall motion, whereas bigger values
in this field will adjust larger ranges of motion.
5. If there is a significant amount of motion being stabilized and you are losing a lot of
your picture in some frames, try fixing those frames by adding them to the Frame
List on the left. Mocha will then interpolate the stabilization between these fixed
frames.
1. Track the area you want to lock down using whichever of the motion parameters
you require. Tracking perspective also works for this technique.
2. Once tracked, switch to the Stabilization tool.
3. Choose which fields of motion you wish to lock down in the Smooth parameters. By
default, translation is automatically selected. If you want to completely lock down
everything, just choose the “All Motion” checkbox.
285
Mocha® 2022 User Guide
4. Adjust the number of frames you want to use to look for stabilization. A small amount
of frames will look for tiny adjustments in the overall motion, whereas bigger values
in this field will adjust larger ranges of motion. Again, if you want to completely lock
down everything for all motion, choose the “Maximum Smoothing” option.
5. When you play back the timeline you will see the rest of the footage warp and move
around your locked off area.
Exporting Stabilization is similar to exporting tracking. When you hit the Export
Stabilized Tracking Data button you will be presented with a dropdown box with options
for various applications.
Stabilize in Stereo
All stabilization occurs in stereo if you have tracked both views. You can render the
stabilization for both views by selecting Operate on All Views button next to the Render
buttons on the timeline.
286
Mocha® 2022 User Guide
The Mocha lens module helps locate and undistort lens distortion.
To compute lens distortion you need an image with one or more distorted straight lines
or a distortion map (Mocha Pro only).
For line calibration you can either use your source material if it has suitable lines or take
an image of a calibration grid. Using either 1-Parameter or 2-Parameter radial distortion
models will allow you to straighten up the image. There is also an Anamorphic model
that will accurately model the distortion in anamorphic and extreme wide-angle lenses.
If you have a Distortion Map, you can also remove or work with distortion by importing
your maps instead of calibrating.
Distortion of the images can also influence the performance of other modules in Mocha
Pro, because the tracker tools assume that the camera obeys a simple pinhole camera
model. Severe distortion effects are most likely when a fish-eye or other short focal
length lens is used.
Typical lens distortion makes a square object appear either barrel shaped or pin
cushion shaped in the image.
The most obvious way to tell whether your images are distorted is to look at the straight
edges of objects in the scene. If lines that should be straight are actually curved in the
image, this is indicative of distortion. If there are no long straight edges in the scene
(for instance a natural scene) then it is much more difficult to discern distortion, even
when it is significant.
With the Mocha lens module you can compute, apply and remove distortion
automatically. There are two parts to this process – firstly compute the distortion and
secondly correct the distortion.
To compute distortion automatically you will need to have some straight lines in your
image(s).
287
Mocha® 2022 User Guide
It is useful to toggle the grid on and off during the different stages of calibrating the lens
to see a visual representation of what is actually happening. Just select the Grid button
in the View Controls bar to switch the grid on and off.
Lens calibration is dependent on working with the parameters, which are described in
detail below. The basic workflow for lens calibration is as follows:
1. Set your input clip and your calibration clip. These can be the same if there are
obvious distorted lines in your input clip, but you can also opt to use a Grid Image
(see Using Grid Images)
2. Use the Locate Lines button to find the straight lines in your calibration clip. Adjust
the Min Line Length if needed.
3. Click the new line button (Or press N on your keyboard) and click on line segments
to define what should be straight lines. Every time you need to define a new line,
make sure you click on the button again or press N.
4. Once you have defined enough lines, click on the Calibration dropdown and select
a camera model (Usually 1-Parameter or 2-Parameter).
You can now choose to render out the distortion, or use the current calibration to assist
your tracking and insertion workflow.
For further detail on the calibration tools, see Lens Parameters below.
The Equirectangular and other 360 video features are only available
in Mocha Pro and not accessible via other Mocha products such as
Mocha AE.
The first step for working in 360 VR mode is define you are working in Equirectangular
space.
288
Mocha® 2022 User Guide
Mocha Pro can set this in the New Project dialog on standalone:
289
Mocha® 2022 User Guide
VR footage with an odd pixel width may not wrap correctly and you
could see artifacts.
And that’s it! You’re now ready to work in VR lens space and don’t need any further
calibration. If at any time you want to adjust the 360 view numerically, the fields
Longitude, Latitude and Field of View are available to adjust in the Lens page.
Note that if you are rendering a 360 lens distortion in the plugin version, you can control
the Lens distortion from the plugin interface without having to open the Mocha GUI.
See Equirectangular Lens Workflow with 360 VR for more details on using the
Equirectangular lens calibration effectively.
Lens Parameters
Input tab
• The Calibration Clip is the clip used for finding and selecting lines to calibrate with
– just select the clip from the pulldown menu if you have imported it or import it by
selecting the Import button and using the file browser to locate the file.
290
Mocha® 2022 User Guide
• The Input Clip is the input for the distort/undistort process – just select the clip you
want to distort or undistort from the pulldown menu.
Output tab
This is a way to re-name a distortion setting if you want to have more than one distortion
applied. You can choose to leave the input clip intact and create a new clip containing
the output from the Lens module, and then rename the rendered distorted or undistorted
file and carry on working. Just select the clip from the pulldown menu and select the
New… button to name the new clip. The new clip will be the same as the current output
if you choose to select that it inherits the attributes of that output clip.
291
Mocha® 2022 User Guide
• The Undistort (Inverse) is the distortion map clip used to set Undistortion for the
input clip
• The Distort (Direct) is the distortion map clip used to set distortion for the input clip
Calibration Lines
Line calibration is the most important part of the process for 1-parameter, 2 parameter
and Anamorphic calibration: These buttons work to locate and then define the straight
lines in your shot. See below.
292
Mocha® 2022 User Guide
Locate Lines
Select the Locate Lines button once for the image you want to use for calibration.
The output of the Locate Lines process is an overlay showing all the line segments that
were detected in the image. Typically longer lines will be divided into two or more line
segments. See “Min Line Length” below.
293
Mocha® 2022 User Guide
New Line
Using the New Line button you can start selecting line segments to define the straight
lines in your scene.
• To select which lines you want to use for calibrating the distortion, select the New
Line button each time you want to select an entirely new line.
• Select one or more line segments lying on the same line in the scene by placing the
cursor over each segment and selecting them.
• As you hover over the lines the currently closest line will be highlighted in red to
indicate which line will be selected.
• As you add more segments, the completed line is rendered so that you can check
for mistakes. Each line you select will be colored differently to clarify the groupings
of the line segments.
• Try to choose lines that exhibit the most distortion, typically those reaching towards
the edge of the image, and not pointing towards the center .
• Try also to achieve good coverage of the whole image, because otherwise the
distortion may only be computed correctly in the part of the image where the lines
are chosen. If you select a line segment incorrectly, click on it again to deselect it.
294
Mocha® 2022 User Guide
It is important to remember to select New Line each time you want to select the
segments of a new line in the scene.
Increase the Min Line Length parameter to show only longer lines and simplify the
display, or if you only short line details, try a smaller line value.
Calibrate Parameters
Having chosen your lines (see above), you need to select a camera model:
• If only a small amount of distortion is present in the images, choose the 1-Parameter
radial distortion model. Then press the Calibrate button. This will find the optimal
value for the radial distortion parameter to straighten the selected lines.
• You can use the 2-Parameter radial distortion model if the 1-Parameter model
doesn’t capture all the distortion in the image. This distortion model is often used
when there is a wave or irregularity in the lens.
• Anamorphic can be used for any lens with Anamorphic or different vertical and
horizontal distortion.
• Distortion Map is only used with Distortion Maps and is not related to line-selection
based calibration (see below)
The Grid display option will show a reference grid with the computed distortion added.
295
Mocha® 2022 User Guide
296
Mocha® 2022 User Guide
297
Mocha® 2022 User Guide
Calibrate button
Once you have selected your lines and set either the 1-Parameter, 2-Parameter or
Anamorphic models, you can click this button to start computing the calibration. This will
invoke the Mocha Pro camera calibration algorithm which will apply the new calibration
parameters to any image you are working on in the current project.
The No Distortion parameter does not compute any distortion and the 1- Parameter Inv
model is only for use with RealViz Rz3 files.
If you have a grid image, select the Equidistant Lines box and then select lines
appropriately for a grid as explained above.
Note: You only need to render the image and remove the computed distortion if you
want to save the output – Mocha Pro will use the calibration data generated without
having to use an undistorted clip. To render the clip use the Distort/Undistort controls.
298
Mocha® 2022 User Guide
Lens
The image center is naturally set at the center of the image by default. Again the
coordinates can be entered manually if you want to eye match the center position of
the lens by dragging the Center %X or Center %Y sliders or highlighting the current
value and typing in a new value. Alternatively, switch on the Calibrate option so that it
will be adjusted automatically when you invoke the camera calibration algorithm.
Distortion
299
Mocha® 2022 User Guide
The distortion values for the current camera model can be entered manually if you want
to match the lens distortion by eye, or they can be computed automatically using the
Calibrate button – which is considerably quicker and easier. To adjust manually simply
drag the sliders to increase or decrease the values in the K1/Cxx, K2/Cyx, Cxy & Cyy
fields or highlight the current value and type in a new value.
Function
Select whether when you render an image you want to remove or add distortion here
by selecting the Undistort radio button to remove distortion or the Distort radio button
to add distortion.
Distort/Undistort
These buttons are for rendering the clip with the distortion or undistortion values
selected.
Selecting the right arrow renders the clip forward from the current point in time.
Selecting the left arrow renders the clip backwards from the current point in time.
Selecting the central button with a square stops Mocha Pro from rendering, which can
also be done by selecting the escape or space keys on the keyboard instead.
Selecting the down arrow just renders the single frame at the current point in time. This
is useful for testing a single frame before deciding to render an entire sequence.
Selecting the lock button enables re-rendering for this module. If the button is locked
Mocha Pro will render the frame each time a parameter is changed.
You can export the lens parameters to a variety of formats. See "Exporting Lens Data"
below for more information:
• Mocha Lens for After Effects: This format is used exclusively with the Mocha
Lens plugin for After Effects, which you can download separately from the Boris FX
Website.
• Distortion Map (Mocha Pro only): A renderable Distortion map to use in supported
applications, such as Nuke.
• Mocha XML Lens Data (Mocha Pro only): You can export the lens parameters in
a simple XML file format by selecting the Export Lens Data.. button. The parameters
300
Mocha® 2022 User Guide
are written in a resolution-independent way. The focal distance and image center
x/y are represented as multiples of the image width and height. The distortion
parameters are written directly. They are defined in the later section called “For the
technically minded”.
If you are using a grid image, select the Equidistant Lines button. This will enforce a
regular grid structure on the selected lines, by forcing the distance between adjacent
horizontal and vertical lines to be a constant fixed value.
To use this feature, select lines a fixed distance apart on the grid. You can use a
different separation horizontally and vertically. You don’t have to select the lines in the
right order - Mocha Pro will re-order the lines according to their horizontal and vertical
position on the image.
You also don’t have to select all the grid lines. All that matters is that the distances on
the grid between adjacent sampled horizontal lines are the same, with the same rule
applying vertically as well.
301
Mocha® 2022 User Guide
Grid image with sampled equidistant horizontal and vertical lines. Image
courtesy of Jean-Yves Guillernaut, University of Surrey
Note that when you fit a grid, the Grid display option attaches the rendered grid lines
to the image grid, so that you can easily see the result.
In cases where even the radial distortion models are not sufficient, or you have
an anamorphic shot for which a radial distortion model is not suitable, select the
Anamorphic camera model. This allows for different horizontal and vertical distortion.
This is the model used in 3D Equalizer V3, although without the inversion of the model
used in that product, and we use the “raw” curvature parameters cxx , cxy , cyx , cyy .
You will probably need a grid image to compute the parameters of this model
accurately.
302
Mocha® 2022 User Guide
The image center is by default set to the center of the frame, i.e. 50% of the frame
dimensions in both directions. If the center of distortion is or may be offset from the
center of the frame, these values need to be modified.
You can either select the correct image center manually by eye or switch on calibration
for the image center , which will then calibrate for the image center along with the
distortion parameters. A yellow cross indicates the image center position.
Manual calibration
If you don’t get good results from the Mocha Pro calibration procedure, or you have
known distortion parameters that you wish to use in Mocha Pro, you can select the
distortion parameters manually.
By manipulating the distortion parameters and observing the effect on the image,
choose the parameters that straighten up the curved lines as accurately as possible.
This should at least deal with the worst effects of the distortion.
Mocha Pro also has the capability to import camera parameters computed by Realviz’s
MatchMove 3D camera tracking software.
If you are working with Distortion Maps (sometimes called UV maps or ST Maps), a lot
less calibration is required. You can simply bring in your map and it will automatically
set the lens.
303
Mocha® 2022 User Guide
1. Go to the "Distortion Map" tab on the left side of the Lens Module
304
Mocha® 2022 User Guide
2. Use the "Undistort (Inverse)" and "Distort (Direct)" drop downs to import your maps
files
3. Click on the Calibration dropdown and select "Distortion Map"
You can now choose to render out the distortion, or use the current calibration to assist
your tracking and insertion workflow, as you would a line calibration.
Keep in mind the hard boundaries of the Distortion map being imported may affect the
tracking of your shot.
You cannot export Lens Data with a Distortion Map calibration. You
will only be able to perform track and render operations.
305
Mocha® 2022 User Guide
Exporting data to After Effects is done via the clipboard, similar to the tracking and
shape data methods. To bring data into After Effects:
1. Click on Export Lens Data in the Lens Module or the File menu
2. Select "Mocha Lens for After Effects" in the drop down
A lens effect will then be created in the layer with parameters from Mocha. You can
choose to Remove Distortion or Add Distortion from the Effects panel.
306
Mocha® 2022 User Guide
Distortion Maps
Distortion maps feature in the Lens Module only relate to Mocha Pro
and are not available in Mocha HitFilm or Mocha AE
This format will render a map for programs that support color-based displacement or
distortion (such as UV or STMaps). This is also useful if you want to save a calibration
so it can be used on another shot, by importing the Distortion Map back into Mocha.
By default the Distortion Map will only render 1 frame, unless you have an animated
distortion calibrated in Mocha.
Distortion Maps may also generate a map larger than your footage dimensions in order
to accommodate overscan of the distortion.
1. Click on Export Lens Data in the Lens Module or the File menu
3. Note that:
b. The frame range is automatically set to only render 1 frame unless you have
an animated distortion.
307
Mocha® 2022 User Guide
4. Choose whether you want to render a map to Undistort or Distort with the radio
buttons on the right
6. Distortion maps must be 32 bit floats, so TIF or DPX will be the best options
7. Click "Save"
If you have undistorted a shot and plan to export tracking data to the result, you will
need to check "Remove lens distortion" in the tracking data export dialog in order to
match the undistorted data.
This will make sure the tracking information is set to fit the same flattened information
you are using elsewhere.
If you want to keep a shot distorted and plan to export tracking data, you will also need
to check "Remove lens distortion" in the tracking data export dialog and then apply the
lens distortion to the result in After Effects.
Because of the way After Effects handles render order, you need to do a few extra
steps to get a corner pin working correctly:
1. Click on Export Tracking Data… in the Track Module or the File menu.
2. Select your format and select the "Remove lens distortion" checkbox.
308
Mocha® 2022 User Guide
5. Make sure your insert layer is the same size as the source comp. If not:
a. Precompose the layer and move all attributes into the new composition.
b. Open the Precomp and fit the layer to the composition dimensions (Layer |
Transform | Fit to Comp).
309
Mocha® 2022 User Guide
c. Paste the tracking data you exported on the clipboard to the insert layer. You
will notice that it will probably not be sitting in the right spot. This is normal.
6. In order to apply the lens distortion to the insert layer correctly, you now need to
Precompose the layer to make it fit the same dimensions as the original source.
310
Mocha® 2022 User Guide
. You can now go back to Mocha and export the Mocha Lens for After Effects data.
7. Paste the lens data you exported on the clipboard to the Precomposed insert layer.
311
Mocha® 2022 User Guide
If you notice your insert is clipping, this may be because the precomposed layer is going
past the boundaries of the pre-composition. You can fix this by opening the precomp
and making it larger:
3. Increase the dimensions of the Composition. For example with a 1920x1080 shot
with large distortion try adjusting the width to 2500.
4. Close Composition Settings and go back to your original composition to check the
clipping
If you set the proxy scale in View Controls from Full Res to Half Res it should still give
enough information to locate good lines, and will be a lot faster.
Note that for the radial distortion models you need to have selected the correct pixel
aspect ratio for the images when you started the project. If you have chosen the correct
aspect ratio the image will appear in the correct proportions on the screen.
The film back width and height selected when you started the project determine the
pixel aspect ratio. Mocha Pro will normally select the correct film back from the image
dimensions, but sometimes it may be necessary to make manual adjustments if the
correct match was not found.
312
Mocha® 2022 User Guide
To use Mocha Pro on a 360 equirectangular shot you need to first set up the 360 image.
You can then begin using Mocha just like you would any other footage.
The first step for working in 360 VR mode is to import and define you are working in
Equirectangular space.
Mocha Pro can set this in the New Project dialog on standalone:
313
Mocha® 2022 User Guide
VR footage with an odd pixel width may not wrap correctly and you
could see artifacts.
And that’s it! You’re now ready to work in VR lens space. If at any time you want to
adjust the 360 view numerically, the fields Longitude, Latitude and Field of View are
available to adjust in the Lens page.
As soon as you have set the Equirectangular lens type, a new “360” button will appear
in the view controls. Switch over to the Track module and click on this button to
immediately jump to 360 Rectilinear space.
314
Mocha® 2022 User Guide
If you press and hold the 360 button, you can also jump to a specific 360 view, such
as Zenith, Nadir, Front, etc.
• The Zoom tool (Z by default) changes the Field of View (FOV). You can reset the
FOV in the Lens module
You can change the Pan and Zoom shortcut keys in preferences.
We recommend working in 360 view, as this is the intended workflow and is much more
natural because you don’t have to consider seams or poles.
315
Mocha® 2022 User Guide
See the Tracking Basics chapter for more details on how to set up layers for optimal
tracking.
Like tracking, we recommend doing all roto in 360 mode. Roto will automatically warp,
cross over poles and seams and create seam duplicates to make it easier for rendering
and export.
316
Mocha® 2022 User Guide
Feathering is also handled in 360 mode using the inner and outer edges.
You can preview the flattened version of the roto at any time by simply toggling off the
360 button.
See the Rotoscoping Basics section for more details on Rotoscoping effectively.
The Insert module and Remove module work exactly like regular Mocha Pro. See their
respective chapters in the user guide for more details.
317
Mocha® 2022 User Guide
You still draw the layers and set up renders in the same way, and they are rendered
across the 360 seams correctly.
For Reorienting and stabilzing the horizon of a VR shot, you will need to use the
Reorient module, which is only available when your project is set to work with 360
footage. See Mocha Pro: The Reorient Module for more details on how to Reorient a
VR shot.
See other relevant module sections of this user guide for more details on each module
use.
Rendering
Renders work in the same way as they do in the standard Mocha Pro workflow. You
can either render them to file, or render via the plugin host.
You can render the current 360 view from the Lens tab, as panning and zooming in
360 mode is a lens calibration. In the standalone, this is controlled via the Lens tab.
In the plugin, you can control and render the lens directly from the Mocha Pro plugin
interface. See Mocha Pro Lens Plugin Rendering Workflow for 360 VR below for more
details.
For everything else, such as Remove and Insert, renders are rendered into
Equirectangular space.
Exporting
Currently export of tracking data is unsupported. Tracking data will paste to the correct
location in your equirectangular view, but will not be corrected for Lens distortion due to
most editors and compositors not correctly supporting pole or seam splitting of tracking
data. It is best to use the Insert module render process to get what tracking data you
need out of Mocha.
Shape export data presently exports as duplicate splines. This means that any roto
shape that crosses the seam will automatically be duplicated into two separate splines
318
Mocha® 2022 User Guide
on either side of the Equirectangular view. Split VR shape data is presently supported
for:
• SSF
For other compositors and editors you can either use the matte rendering in the Mocha
Pro plugin, or render matte clips from Mocha directly.
See Using the Mocha Pro Plugin for more details on controlling mattes in the plugin
interface and Exporting Rendered Shapes for how to render mattes to file.
The patch workflow is a one-way control system in the plugin interface independent of
the Mocha GUI, which means you don’t need to open Mocha to control the lens view.
By choosing Lens: Undistort from the render options in the plugin, you can then control
the view by adjusting three controls:
• VR Lens Latitude
• VR Lens Longitude
319
Mocha® 2022 User Guide
• VR Lens FOV
Alternatively you can pick a view using the Views dropdown option. This replicates the
360 views in the Mocha GUI, allowing you to choose between specific angles such as
Zenith, Nadir, Front, etc.
1. Click Render in the Module Renders section of the plugin interface and choose
Lens: Undistort from the Module drop down. You should see the view change to
a rendered 360 view.
2. If you don’t see the view change after choosing Lens: Undistort:
a. Open the Mocha GUI and set your footage to Equirectangular mode in the Lens
module.
3. Set your view using the VR lens parameters in the plugin interface
5. If necessary, Nest/precomp the rendered lens patch. You must precomp in After
Effects for the next steps to work correctly.
7. Choose Lens: Distort from the Module drop down in the pasted effect to restore
the warp back to its original position
You can then perform any paint or effect work on the lens-distorted version of the
footage and it will be re-distorted correctly on top of the original footage.
320
Mocha® 2022 User Guide
To use the Reorient module on a 360 equirectangular shot you need to first set up the
360 image.
See the Using Mocha Pro for 360 workflow section for details on how to set up and
work in a 360 shot.
• The ability to track and stabilize the VR horizon in each rotational axis
• The ability to control the position of the VR horizon in tilt in each rotational axis
Horizon Tracking
The most efficient way to stabilize and reorient is to track a layer (or series of layers)
near the horizon. It doesn’t have to be exactly on the horizon, but it helps to be as
close as possible. Multiple layers in sequence will concatenate for a single solution
(see below).
Mocha assumes that if you are tracking with more than one layer
at a time that you’re using a near-object track. See "Near Object
Tracking" below.
Near-Object Tracking
From Mocha version 5.6.0 onwards, if you do not have an obvious horizon to track or
it is constantly obscured, the next best option is to use a series of layers closer to the
camera. You will need at least two layers that are non-coplanar, which is a fancy way
of saying "Not on the same plane". This is necessary for the Reorient module to work
out the relative motion between the planes and calculate a smooth result.
For example, if you are trying to reorient a scene with a corridor, tracking one wall is not
enough: You will need to also track the opposite (non-coplanar) wall or the floor/ceiling
to get the near-object depth for mocha to understand the movement of the scene.
321
Mocha® 2022 User Guide
If you have a long shot where you can see the horizon in parts and not in others you
can track both the horizon and near objects in sequence. Mocha will assume that a
single layer is tracking the horizon and multiple layers on the same frames are tracking
near-objects.
For example, you can track the ground plane and a wall plane and they are on different
planes.
If a shot is moving very far, or has a lot of changes (such as moving through trees),
you can concatenate tracked layers together.
However, it is important to make sure there is a little overlap between the tracked layers
in order to blend the tracked layers together, for example:
This helps to smooth any jumps from one tracked layer to the next.
Like most modules in Mocha, to use the Reorient module stabilization you first need
a tracked layer.
322
Mocha® 2022 User Guide
3. Adjust the red horizon line to fit your horizon using the column “Horizon Align”.
You can do this in either 360 mode or in Equirectangular mode. We recommend
Equirectangular mode, as it is much easier to see the whole horizon.
4. If you would prefer a visual control, you can turn on “Show Control” under the
Horizon Align rotation fields:
• Move up and down to control tilt
• Left and right to control pan
• Rotating the circle controls roll.
5. Once your line fits the horizon, you can turn off the View Horizon check box.
6. If Preview doesn’t turn on immediately, you can toggle it in the view
controls. The button is to the left of the 360 icon in the view controls.
For example, if you’re only interested in stopping the camera from panning, you can
just leave “Pan” on.
If you don’t want to lock the smoothing completely, you can turn off “Maximum
Smoothing” and adjust the number of frames to stabilize the horizon jitter.
323
Mocha® 2022 User Guide
Finally, if you want to position the camera exactly, you can do so by using the ‘Horizon
Reorient’ column.
This has exactly the same parameters as the Horizon Adjust column, allowing you to
either move the camera via the fields, or via the on-screen control.
If you have the Preview button turned on, it will update in the view automatically.
5. Rendering
Like all modules, you can choose to either render in the Mocha GUI, or choose
“Reorient” from the render options in the main plugin interface back in the host.
324
Mocha® 2022 User Guide
Holding CTRL/CMD+Scrolling the mouse wheel will let you scale up and down the
timeline.
You can also zoom to specific ranges by selecting one of the options from the "View"
drop down at the top of the dopesheet view:
As you create animation or tracking data, you will see a number of hollow keyframes
appear in the Dope Sheet. These are known as Group Keyframes which are keys that
contain multiple sets of Parameter Keyframes underneath them.
325
Mocha® 2022 User Guide
You can move the Group Keyframes like normal animation keyframes, but instead of
a single animation key, they will move all the keyframes underneath them.
This is useful when you need to shift a whole section of animation in a layer, and not
just an individual point or parameter.
Expanding a section of the layer tree in the dope sheet will reveal either Parameter
Keyframes or more Group Keyframes, depending on how many levels in that layer tree
there are.
To select keyframes, you either click on one of them in the Dope Sheet, or marquee
select a section. You can use SHIFT to pick multiple keys.
You can move the keyframes manually by dragging them with the mouse, or you can
use the standard Copy/Paste keys (CTRL/CMD+C, CTRL/CMD+V) to copy keys and
paste them at the current playhead position. NOTE: At this time you cannot copy and
paste Group Keyframes, only Parameter/Animation keyframes.
Sliding Keys
To move all keyframes in the project up or down the timeline to accomodate frame
offsets or new clip lengths, you can use "Slide Keys".
326
Mocha® 2022 User Guide
1. Enter the keyframe position you want into the Slide Keys field and press enter
2. Select the "Move to playhead" button to push the keyframes to the current playhead
position.
If you need to only move some of the keyframes, just select the ones needed and use
the "Selected" radio button option before performing the slide.
The Curve Editor is used to review how the data in your animation and tracking looks,
as well as some value and frame manipulation options.
You may navigate the Curve Editor space by using the middle mouse button to Pan and
the mouse wheel to zoom. Alternately, you may pan using the ‘x’ key on the keyboard
and zoom using the ‘z’ key on the keyboard. When zooming with the ‘z’ key, left/right
mouse movements will zoom in/out horizontally and up/down mouse movements will
zoom vertically.
To select keyframes, you must first select the curve, then the keyframes. Keyframes
of unselected curves are not selectable.
327
Mocha® 2022 User Guide
You may move the keyframes manually by dragging them with the mouse, or you may
type in a “Nudge” value at the top right of the Curve Editor.
Entering a negative value in the “Nudge Time” field and hitting the button will move
selected keyframes backwards in time by that amount every time you hit the button.
Entering a positive value in the “Nudge Value” field and hitting its button will move
selected keyframes up in value by that amount every time you hit the button.
Interpolation describes the method of how values are calculated between keyframes. It
defaults to linear interpolations between keyframes but you may wish to convert them
to Bezier for easing in and out. Or if you wish them to hold their position until the next
keyframe, you may wish to select Constant as the mode of interpolation.
328
Mocha® 2022 User Guide
If a keyframe is the first or last keyframe on the curve, its extrapolation can be chosen.
Extrapolation describes the method of how values are calculated “off into space” before
the first keyframe or after the last keyframe. It defaults to Constant, which simply holds
the value steady.
Choose linear extrapolation and the curve editor will continue the value on its current
slope (sometimes called Gradient Extrapolation in other applications).
329
Mocha® 2022 User Guide
Managing clips
You can import any number of clips into the project. Much like a compositing application,
you can have a multitude of assets in the application you may wish to work with at
any given time. As clips are imported into the project, they populate Clip list drop-down
menus found throughout the application.
Above is shown a list of clips that have been loaded into a project.
You can also add additional footage streams to each clip in Mocha Pro using the Add…
button.
The first clip is always imported when you start a new project, and the location of the
clip’s footage stream is shown in the Footage Streams section to the right. The first
clip you start with establishes the aspect ratio and resolution for that project. This can
be adjusted in the clip tab.
Additional clips can be imported into the project through the Clip tab.
330
Mocha® 2022 User Guide
The clips should match the original project clip ratio set for the project (the dimensions
of the first clip you imported when you started the project). You can choose the "inherit
attributes" drop down to match the original project clip settings.
331
Mocha® 2022 User Guide
The Clip tab handles multiple footage streams in a single Mocha clip.
Clips consist of a container and one or more footage streams. Clips can contain any
number of footage streams, which you can then map to a view if required.
Most commonly you will only be working with one footage stream, which is mapped to
the Mono view. If you are working in stereo (Mocha Pro only) you will have multiple
views.
If you import multiple footage streams into the same clip, you can use the View
Mapping dropdown to change which footage stream is shown.
332
Mocha® 2022 User Guide
If you are dealing with multi-channel clips such as EXR files, all views are loaded
automatically.
If you are working with individual views (TIF, DPX, JPG etc), you can import the
additional footage streams using the Add… button under the Footage Streams
dropdown (Mocha Pro only).
If you want to import additional footage streams in Mocha Pro, you can do so using the
Import button under the Footage Streams dropdown.
You can then choose a new footage stream to add to the current clip from the Import
dialog.
333
Mocha® 2022 User Guide
Removing Clips
You may clean up the project by deleting clips you no longer need. Select the clip in
the clip drop-down list and hit Delete. That clip will be removed from the project.
Relinking Clips
When moving project files or updating footage, you may need to relocate the footage
on your system. To do this:
1. Select the clip you need to relink from the clip drop-down list
2. In the Footage Streams section of your clip, choose the footage stream you want
to relink. Most commonly for non-stereo projects there will only be one clip stream.
334
Mocha® 2022 User Guide
3. You will be presented with a relink dialog. Click the Choose… button to browse for
a new clip you wish the original to be replaced by.
4. Make sure an imported footage stream has the same aspect ratio as the original
project clip. You can conform your relinked clip to the current settings in the project,
or keep them the same.
Most often, the first clip you imported will be the one you wish to track. There are times
when you may get an updated shot with color correction or some other enhancements
335
Mocha® 2022 User Guide
to make tracking easier. To use this new clip, you must first import it into the project
as described above.
To select to track on this new clip, you must choose it in the Track tab’s Input drop-
down.
An imported clip must have inherited attributes from the original base
clip to become trackable. See "Importing Clips" above.
An imported clip must have inherited attributes from the original base
clip to be able to roto correctly. See "Importing Clips" above.
336
Mocha® 2022 User Guide
Keyboard Shortcuts
Keyboard Shortcut customization
You can now customize keyboard shortcuts for almost every tool, action and menu
item in Mocha.
You can create a new profile by duplicating a default profile, then customize the keys.
These profiles are then available from the Keyboard menu:
337
Mocha® 2022 User Guide
Tools
Transform
W Rotate
Q Translate
E Scale
Down Arrow Nudge Point/Layer down 1 pixel
Up Arrow Nudge Point/Layer up 1 pixel
Left Arrow Nudge Point/Layer left 1 pixel
Right Arrow Nudge Point/Layer right 1 pixel
SHIFT + Down Arrow Nudge Point/Layer down 10 pixels
SHIFT + Up Arrow Nudge Point/Layer up 10 pixels
SHIFT + Left Arrow Nudge Point/Layer left 10 pixels
SHIFT + Right Arrow Nudge Point/Layer right 10 pixels
338
Mocha® 2022 User Guide
Viewer Canvas
- Zoom out
+ Zoom in
/ Zoom to 100%
* Zoom to fit
Alt + 1 Show/Hide Mattes
Alt + 2 Show/Hide Color Layer Mattes
Alt + 4 Show/Hide Layers
Alt + 5 Show/Hide Spline Tangents
Alt + 6 Show/Hide Surface
Alt + 7 Show/Hide Grid
Alt + 8 Show/Hide Zoom Windows
` (Back dash) Show/Hide All Overlays
Timeline
339
Mocha® 2022 User Guide
Preferences
Some of the preferences below relate to Mocha Pro. Some
preferences may not be available in the Mocha Pro Plugin, Mocha
AE and Mocha HitFilm.
Preferences location
Preferences are accessed through File > Preferences on Windows or Linux (Mocha
Pro only) and Application Menu > Preferences on OS X.
Preferences are not changed until you click the OK button. In some cases you will need
to restart the Mocha application for preferences to take effect.
You can also choose to reset all preferences back to the default using the "Restore
Defaults" button in the bottom left of the dialog.
Output Settings
File Storage
Output Directory (Standalone only)
The Output Directory settings specify the default location of the directory in which the
project file and rendered clips are stored. There is a choice between:
• Relative Path: The project directory is a subdirectory of the directory containing the
original project clip. By default, the subdirectory is Results. If you often load your
project clip over a network, it would be best not to choose Relative Path, because
the performance of project and clip I/O will not be as fast as the local disk.
• Absolute Path: The project directory as an absolute path. For the best performance
choose a folder on a fast disk, with plenty of disk space available.
Autosave
The Autosave box is selected by default. This will automatically save the project you
are working on.
Set the interval between saves by increasing or decreasing the value in the Interval
(minutes) box. The default is 5 minutes. If Save Images Every Frame is checked,
rendered frames are saved to disk as soon as they are created in memory; otherwise
the render to disk only occurs when rendering a sequence of frames.
340
Mocha® 2022 User Guide
You can define the Autosave directory or leave it to the system default.
In the standalone, if there is an autosave file available for the project you have loaded,
a dialog will appear asking if you want to open that instead.
In the plugin, the dialog will appear if there is an autosave available for a Mocha project
done in that host. You can then choose to open, save or remove the project file.
For example, if you are working in After Effects and there is a problem, recovering
your AE project and opening the Mocha GUI will show a Mocha Autosave recovery
dialog for the project made in After Effects. If you have other autosaves (for example
from another Mocha Pro plugin host), the recovery dialog will NOT appear, as it was
a project made in another program.
"mochaAE_plugin-6_aftereffects-16.mocha.autosave"
This literally translates to: "Mocha AE Plugin project saved in After Effects v16".
In standalone, Autosave is per-project, i.e it will be directly related to the project you
are working on. This is because we work with a 1-to-1 match of the project file name.
In the plugin, we can only save an autosave file per HOST, that is, we have no
knowledge of the project/layer that is being worked on, so we can only save based on
what we know, i.e the host the mocha project was saved in.
This means that in the plugin, a crash from a previous project will trigger a load prompt
in ANY project you open created in the same host. For example:
We time-stamp the autosave dialog so you can have a better idea of when the file was
saved, but if you open the autosave it will replace your existing work.
341
Mocha® 2022 User Guide
If your plugin autosave doesn’t automatically prompt to open, you can locate the
directory in the support path. By default these are:
• Windows: C:\Users\[username]\AppData\Roaming\BorisFX\Autosave
• Linux: ~/.config/BorisFX/Autosave
You can then Open or Merge the file into a new or existing project.
Autosave Backups
We also back up each session autosave just in case a previous autosave has a problem
or you want to revert back to an older state.
You can define how many backups in the "Number of Backups field" next to the
Autosave interval field.
Cache Directory
Specify here the folder to use for caching image data and storing auto-saved project
files. For the best performance, choose a folder on a fast disk with plenty of disk space
available. A lot of data is written out in the background while you work, approximately
three times as much disk space as the taken up by the original clip will be used.
The Cache Original Clip box (Standalone only) is selected by default. This will cache the
original clip to the File Cache when a project is created or opened for a more efficient
playback and workflow. It is only necessary to check this if you are getting footage from
a slow network.
System
Application
342
Mocha® 2022 User Guide
The Maximum Size of the history is the number of user interactions stored in the undo/
redo command list. The limit is used to conserve memory.
This feature is to limit the number of threads Mocha will use on multi-core machines.
On a machine with many cores, users may wish to limit the number of threads per
thread pool to prevent Mocha from creating too many threads and potentially crashing.
The default value will be the number of available cores. A value of 16 is a good base
value to start from.
Track in Mocha AE
Check the box if you want to open Mocha Pro via the "Track in Mocha AE" option inside
After Effects, rather than loading the bundled Mocha AE.
Set how many layouts you want to appear in the View menu. The default is 3.
Field Controls
• Rotation Controls: Adjusts the value in the field by moving the mouse in a circular
motion. The larger the circle motion, the more refined the adjustment.
• Linear Controls: Drag left or right in the field to adjust the value.
Inverts the motion of when scrolling in a field increases the value or decreases it.
343
Mocha® 2022 User Guide
Toggles scrolling the timeline playhead with the mouse wheel. This is on by default.
Toggles whether Mocha reads tablet pressure sensitivity for tools such as the Area
Brush. On by default.
Layer Settings
Default Colors
Default Opacity
GPU
Any changes to GPU settings requires a restart of Mocha. For
standalone, this is simply closing Mocha and reopening.
For the Mocha plugin, you need to restart the host environment to
reload the plugin completely.
Display
Use Vertical Sync
Enable vertical sync in the frame display. We highly recommend you keep this on.
The amount of memory that you want to be reserved for textures. This determines how
many frames can be played back in real-time.
Textured rendering may not be compatible with Microsoft Windows Remote Desktop
Connection.
344
Mocha® 2022 User Guide
Matte Rendering
By default, Mocha will generate matte clips and track mattes by rendering with OpenGL
to an offscreen buffer. If Disable Offscreen Buffers is checked, Mocha will fall back to
a software-based matte rendering implementation which is slower and produces lower-
quality results, but will work on all hardware.
GPU Processing
This option is on by default and sets the planar tracker to use the graphics card instead
of the CPU. If this option is disabled it means you do not have a supported graphics
card for GPU tracking.
OpenCL Device
This option lets you choose the graphics card you want to use for GPU tracking. By
default this is set to Automatic, which attempts to choose the best available option.
This option lets you override the officially supported graphics card list and choose any
GPU on your system. Use this option with care as it may lead to unstable results.
Color
Handles defaults for OCIO color settings. See the OpenColorIO (OCIO) chapter for
more details.
Clip
If you are working on a number of shots that share the same clip attributes (the same
video standard, frame rate and color space), it can be useful to set a default clip setting.
Then you will not have to re-enter the same clip information each time you load a clip.
345
Mocha® 2022 User Guide
Defaults
FPS
Custom PAR
Options to set you default timeline as frames or timecode, and set a fixed frame offset.
Output matte clips Check this option to output matte clips to disk when previewing
mattes (this option is only available in the standalone version of Mocha).
Revert in input clip Check this option to revert to the source clip if there is an
unrendered frame displayed in the viewer.
A yellow warning telling you the frame is not rendered will appear over the source frame.
Format
Setting the format defines what results are rendered out to, but also define what your
Cleanplate clips will be saved as.
What to set you rendering result output to for integer clip formats. Currently the choice
is between DPX and TIFF.
What to set you rendering result output to for float clip formats. Currently the choice
is between EXR and TIFF. Float clips will be generated internally as 32-bit float,
increasing the precision of compositing operations but using more memory.
Interlacing
Select the Separate Fields button if you normally use field-based clips.
This will usually consist of a video clip with options for PAL (upper field first, also used
for SECAM) or NTSC (lower field first) field ordering. Separate Fields will de-interlace
346
Mocha® 2022 User Guide
the clip and display both fields. When a clip is rendered, the fields will automatically be
interlaced back together again. There is also a 3:2 Pulldown option if you mainly work
with 3:2 pulldown material.
Video Files
Read/write using
The footage handling process to use. The default is GStreamer. You also have the
option to use QuickTime.
Note that your choice of clip media handler does not affect the opening of image
sequences such as TIFF, DPX, EXR and so on.
It also doesn’t affect any host source material being opened from the Mocha Plug-In,
but will affect any clip media you import directly from disk.
GStreamer
This is a versatile media handling library for reading in various codecs and footage
containers.
GStreamer currently has limited support for writing out of clips. More will be available
in later versions.
If you need to render out a clip to disk, we recommend using a lossless sequence such
as TIFF or DPX.
QuickTime
Open files using the QuickTime library. This will only open footage that QuickTime can
open.
You must restart the host or the standalone application for any change to the read/
write settings.
347
Mocha® 2022 User Guide
Mask
Logging
Diagnostic Logging
This is selected by default. The file generated is useful for Boris FX engineers to
diagnose error messages and fix any problems. You can view the log by selecting View
Log from the Help menu. You can also change the location of the Log File from its
default.
Verbose Mode
This is set to off by default. If you are working on a labor-intensive project, you can
switch to only log errors as they occur, rather than constantly checking. This provides
less information in the event of an error, but can marginally improve performance.
Verbose mode also logs render times. If you are interested in measuring render
performance in your projects, check your log after rendering.
Turn on this option to periodically send anonymous usage data to Boris FX so we can
improve our products.
Key Shortcuts
See the chapter on Keyboard Shortcuts for more information.
348
Mocha® 2022 User Guide
Some OCIO features are only available in Mocha Pro and may be
missing from Mocha AE.
Mocha has extensive color management tools based on the Open Source Color
Management framework called OpenColorIO (OCIO) .
In order to match what is seen in the compositing or editing environment, Mocha can
match the colorspace use by the host (in a plug-in environment) or can be configured
to match the colorspace of supported software.
Since Mocha often renders out a result (be it a Matte or a render in Mocha Pro) we need
to make sure we are matching the original source Mocha is working with, otherwise
the output will not match.
To set a working colorspace, you can open the Viewer Preferences, which is located
in the top right-hand corner of the viewer:
349
Mocha® 2022 User Guide
Then, choose a role from the “Working Color Space” drop down that matches your
current working space:
These options default to the Mocha OCIO config file, but may show varied options if
you are using a custom configuration file (ACES,for example).
To set a Display View colorspace, you can open the Viewer Preferences, which is
located in the top right-hand corner of the viewer:
Then choose a Display View type from the list in the drop down:
350
Mocha® 2022 User Guide
You can then choose an option from the “Clip Color Space” drop down:
You can also convert the image Depth to float or 8-bit if so required:
These options default to the Mocha OCIO config file, but may show varied options if
you are using a custom configuration file.
This gives you all the colour settings in one place to setup the color workflow for clips,
display and working space.
351
Mocha® 2022 User Guide
• OCIO config: Here you can change the OCIO config or reset back to the default.
352
Mocha® 2022 User Guide
• Working Color Space: The color space or Role you want to work with
• Display View: The color view you want to display, such as sRGB, Rec709 etc
• Clip Color space Mode: This is either OCIO or Legacy, which is important if you
are opening projects from an earlier version of Mocha.
• Default Color Spaces: Here you can define what color space to set for clips at
various bit depths.
• Depth conversion: This lets you define if you want to convert clips by default to
8-bit or Float.
Configuration files are usually named as config.ocio in the directory of the color
standard you are working with.
Changing the color configuration will automatically update the Working Space, clip
space and Display View options.
Clicking the "Reset" button will reset your color to the Mocha default configuration.
For example, if you wanted to use the default Nuke OCIO config, you could define:
export OCIO=$HOME/OCIO/nuke-default/config.ocio
353
Mocha® 2022 User Guide
Then run Mocha (or your plugin host) from the terminal after defining this variable.
You could also set the OCIO environment variable system-wide using an appropriate
OS-specific method (e.g. the Environment Variables dialog in Windows). If there is no
config set, you should see the Mocha default configuration in the interface.
If you set a valid config path, you should see the complete list of supported color spaces.
Once set, the OCIO config will be saved with the project.
These map exactly like the controls in Project Settings, but will be assigned
automatically when creating new projects.
354
Mocha® 2022 User Guide
File Formats
Format support is mainly relevant to the standalone version of
Mocha Pro. The Mocha plugin reads the native host source, with the
exception of imports done inside the Mocha GUI.
File input happens automatically when you launch the Mocha GUI. Mocha reads the
source footage directly from the layer, node or track you have applied Mocha to.
The formats below are only relevant to you if you need to import an external file from
disk, such as an additional Insert clip or matte clip.
In order to read in video clip files, you need to set the way video files are read in via
Preferences.
Mocha Standalone has two standards for reading in Media files from disk, which you
can set via the Clip section in Preferences:
• QuickTime: This is the legacy way of reading clip files. This method will only read
clip files that QuickTime supports. In order to use clips with QuickTime (i.e. not
image sequences) you must have QuickTime installed. Level of QuickTime support
can vary depending on the operating system.
Note that some of the file formats and codecs below will vary depending on whether
you have QuickTime or GStreamer selected in Preferences (see above).
355
Mocha® 2022 User Guide
Some clip formats such as MXF will use codecs that Mocha does
not support.
In this case you may need to convert the clip to another format. See
What to Do if Mocha Does Not Support Your Footage below.
Image formats
356
Mocha® 2022 User Guide
Image formats
If you are just tracking, you can use any compressed format such as a JPG sequence
and then use your original footage when you apply the data.
If you are going to be doing rendering, such as using Mocha Pro’s remove or insert
modules, then we recommend converting to a DPX or TIFF sequence.
1. The frame rate, aspect ratio and dimensions are the same as the original footage.
2. If you are creating proxy footage, make sure the aspect ratio and frame rate are
the same.
3. If you are using a particular bit depth, make sure you convert to the same depth if
you are using the footage for rendering inside Mocha
4. If using compressed footage, don’t set the compression too low, as this will create
artifacts that may hinder tracking and roto.
5. Make sure Mocha supports the sequence you are converting to!
If you would prefer to convert to a movie clip format then we recommend a standard
format that QuickTime would understand, such as Animation or ProRes.
357
Mocha® 2022 User Guide
Command Line
Below you will find a list of command line arguments that can be used to load mocha
with preset parameters.
Note that loading a project file on the command line will ignore all other parameters.
Standard usage:
Table 1. Arguments
358
Mocha® 2022 User Guide
0 Progressive
1 Sets interlaced mode UPPER FIELD
FIRST
2 Sets interlaced mode LOWER FIELD
FIRST
3 Sets interlaced mode 3:2 PULLDOWN
UPPER FIELD FIRST AA
4 Sets interlaced mode 3:2 PULLDOWN
UPPER FIELD FIRST BB
5 Sets interlaced mode 3:2 PULLDOWN
UPPER FIELD FIRST BC
6 Sets interlaced mode 3:2 PULLDOWN
UPPER FIELD FIRST CD
7 Sets interlaced mode 3:2 PULLDOWN
UPPER FIELD FIRST DD
8 Sets interlaced mode 3:2 PULLDOWN
LOWER FIELD FIRST AA
9 Sets interlaced mode 3:2 PULLDOWN
LOWER FIELD FIRST BB
10 Sets interlaced mode 3:2 PULLDOWN
LOWER FIELD FIRST BC
11 Sets interlaced mode 3:2 PULLDOWN
LOWER FIELD FIRST CD
12 Sets interlaced mode 3:2 PULLDOWN
LOWER FIELD FIRST DD
359
Mocha® 2022 User Guide
Environment Variables
Mocha can be initialised with several different environment variables to make it easier
to configure across studios.
The most common way to set environment variables in Linux and macOS is via the
command line.
It is best to check if an environment variable is set before you try creating it. You can
do this on Linux or macOS by typing the following into the terminal:
printenv
Alternatively if you want to check the specific variable you can type it after the command:
printenv MOCHA_INIT_SCRIPT
To set an environment variable on Linux or macOS for any programs run from the
current shell, you use the export command:
export MOCHA_INIT_SCRIPT="/path/to/my/scripts"
To set an environment variable persistently, including for programs launched from the
UI, varies by platform.
On Linux, set it in your bashrc file or follow directions for your Linux distribution.
Windows
The most common way to set environment variables in Windows is via the Environment
Variables dialog in System Properties.
360
Mocha® 2022 User Guide
There are numerous ways to get to this dialog, but the easiest on Windows 10 is to:
Once in the dialog, it is best to check if an environment variable is set before you try
creating it.
Path variables
MOCHA_INIT_SCRIPT
This is used to set the Python init.py script directory.
If the MOCHA_INIT_SCRIPT environment variable points to a file, that file will be used,
if it points to a directory, it will look specifically for init.py in that directory. If unset, the
default locations be used.
MOCHA_INIT_SCRIPT='/Users/Mocha/my_scripts/'
See the Mocha Python Guide for more details on how to use init.py and Python scripts
in Mocha.
OCIO
If you need to point to your OCIO config across many applications, or just want to
automate the configuration, you can use the standard OCIO path environment variable.
361
Mocha® 2022 User Guide
This should specifically point to the config file rather than the directory, for example:
OCIO='/Users/Mocha/my_LUTS/ocio.config'
Display Variables
QT_SCREEN_SCALE_FACTORS
While not specific to Mocha, this environment variable is mostly used to adjust the
scaling of the graphics and text in the GUI when working on high resolution monitors.
If you are having difficulty getting GUI scaling to work, try this variable.
The default for this variable is 1.0, that is, the same scale as the current display scale.
A scale of 0.5 would be half the current display scale, and a scale of 2.0 would be
double the size.
QT_SCREEN_SCALE_FACTORS=2.0
If there is more than one screen, you can separate the displays with semicolons. For
example in a two-monitor setup with different resolutions:
QT_SCREEN_SCALE_FACTORS=2;1
MOCHA_QT_SCREEN_SCALE_FACTORS
If you are already using QT_SCREEN_SCALE_FACTORS to affect other programs, you
may get conflicting scales with Mocha.
MOCHA_QT_SCREEN_SCALE_FACTORS=2.0
If there is more than one screen, you can separate the displays with semicolons. For
example in a two-monitor setup with different resolutions:
362
Mocha® 2022 User Guide
MOCHA_QT_SCREEN_SCALE_FACTORS=2;1
License Variables
If you want to point to a default Mocha license directory or file via environment variable,
use genarts_LICENSE, which affects all Boris FX products.
`genarts_LICENSE=5053@server-name`
`genarts_LICENSE=/path/to/file.lic`
You can also set up the RLM environment variable to read all .lic files in a directory:
genarts_LICENSE='your/rlm/directory`
If you wish to point all RLM-based software, including products from other companies
such as the Foundry, to a common license server, you can point to RLM_LICENSE
instead:
RLM_LICENSE='your/rlm/directory`
363
Mocha® 2022 User Guide
Node-locked Installation
1. Make sure you have downloaded the correct version of Mocha for your operating
system. The licensing system for this version is different from v5 and earlier.
2. Make sure that your version of Mocha is the product you have purchased (You
will not be able to use a Mocha Pro AVX Plugin activation code for Mocha Pro
standalone unless you have a multi-host license for example.).
• Apple OS: Double-click the dmg package and drag the application to your
application folder
• Linux: Double-click the installation rpm file and follow the on screen instructions.
(64-bit versions of the software will not run on a 32-bit version of Linux).
When you purchase your license, you will be emailed a serial number. To activate:
2. Open Mocha and choose Activate from the welcome screen or Activate nodelocked
License from the help menu.
3. The BorisFX License Tool will load. Choose "Activate your license now":
364
Mocha® 2022 User Guide
4. Paste the serial number into the available activation field and click Continue
365
Mocha® 2022 User Guide
6. Your license should now be installed and Mocha will close to reset into a licensed
state:
If your machine is not connected to the internet, or you are behind a firewall:
1. Open Mocha and choose Activate from the welcome screen or Activate nodelocked
license from the help menu.
2. . The BorisFX License Tool will load. Choose "Activate your license manually" from
the alternative options:
366
Mocha® 2022 User Guide
4. Download and save the key file that you received from your license email from a
computer that has Internet connection.
5. Transfer the key file to your offline machine you are going to activate via a flash/
thumb drive or a shared network.
7. Pick a location for the request file (which will be created) in the second field.
367
Mocha® 2022 User Guide
9. Upload it to http://activation.borisfx.com/offline-activation.php.
10.Save the activation file it returns (via download or email), and copy that back to the
offline machine.
For After Effects this is called "License…" and sits on the bar of the effect title in your
Effect Controls:
For Premiere, click the small icon next to the effect title:
368
Mocha® 2022 User Guide
For Avid, click the License Control checkbox under the License and Registration section
at the bottom of the plugin controls:
For OFX hosts such as Nuke, Fusion, Hitfilm, Vegas, Flame and so on, click the License
Control button under the License and Registration section at the bottom of the plugin
controls:
Note that the look of this button will vary in the OFX plugin from host to host, but the
location and button name will always be the same.
After that, the rest of the activation procedure is the same as the process above for
Mocha standalone. See "Standard Node-Locked License Activation for Mocha Pro
Standalone" for more details. We recommend restarting the host if you see any issues
with licensing.
1. It is important that your Mocha software matches your activation code, so check
your purchase order to make sure everything matches up version wise. It may
be that you don’t have the correct version of Mocha installed from our download
section. This is especially important for legacy software before V5, where a different
licensing method is used.
2. If you are attempting to install via a terminal instead of directly on the machine itself
and you are having trouble getting Mocha to install, try installing directly on the
machine.
3. Check to make sure you are not restricted to using certain ports due to a firewall or
other admin permissions. When in doubt, temporarily turn your firewalls off for the
duration of the installation and then turn them back on when you are done.
369
Mocha® 2022 User Guide
4. Troubleshoot your machine; try uninstalling all your Mocha software, restarting your
machine, and installing the software again from scratch, and make sure you follow
installation directions off our website exactly. It sounds redundant, but sometimes
it’s a great way to figure out what is going on inside your machine.
5. If all else fails, our support team is happy to help you figure this out. Please contact
support!
370
Mocha® 2022 User Guide
Configuring a new machine to use your floating license server is very straightforward
and requires no internet connection.
Similarly, replacing a failed machine can be done without needing to contact technical
support for the license to be released.
You can download the license server from the Boris FX website. See the steps below.
Floating licenses are easy to set up if if you are familiar with configuring network
services, but if you need any help with the process, please contact technical support.
1. Download the RLM License Manager from the download section here: RLM License
1
Server .
2. Run the License Manager file then follow the installation prompts
1
https://borisfx.com/downloads/?&product=RLM%20License%20Server
371
Mocha® 2022 User Guide
7. Copy and paste your Mocha Activation Key license that you received from your
license email into the “License activation key” field. Then, click “Next”
9. Enter the number of licenses that should be locked to this server in the “License
count (for floating licenses)” field. Or just enter 0 to assign all licenses to the
specified server. Click “Next”
10.A default license location will auto-populate in the “License File to create or edit”
field. Accept the default license location and click “Next”.
11.On the “Activation Request Data” screen, verify all the information you have
entered, and click “REQUEST LICENSE”
genarts should show up under the ISV Servers and it will say Running: Yes.
In cases where you cannot install the license via an Activation code (normally where
the server is not connected to the internet) you can manually install your license:
1. On a machine with internet access, download the RLM License Manager from the
2
download section here: RLM License Server
2. Install the License Manager on both the machine that has an internet connection
AND the offline server you intend to run on (You will use the online machine to get
the license for your offline server)
2
https://borisfx.com/downloads/?&product=RLM%20License%20Server
372
Mocha® 2022 User Guide
3. One the online computer, open a web browser and go to: http://
SERVERNAME:5054/goforms/activate (Replace “SERVERNAME” with the name
of the license server)
4. Click "BEGIN License Activation"
5. Enter activation.genarts.com in the “ISV activation website” field provided
and click “Next”.
6. Enter genarts in the “ISV” field
7. Copy and paste your Mocha Activation Key license that you received from your
license email into the “License activation key” field. Then, click “Next”
8. The Ethernet address of the machine you are on will auto-populate in the “License
Server or Node-lock hostid” field. You will need to overwrite it with the Ethernet
address of the offline license server. To find the Ethernet address on the offline
license server:
a. For RLM Server v13 and newer:
• On Windows: Go to start → Boris FX RLM Server → Get RLM HostID
• On Mac: In a console type: “/Library/Application Support/BorisFX/rlm/Get
Hostid.py”
• On Linux: In a terminal type: /usr/borisfx/rlm/hostid_wrapper.py
b. For older versions of RLM Server:
• On Windows: Go to start → GenArtsRLMServer → Get RLM HostID
• On Mac: In a console type: “/Library/Application Support/GenArts/rlm/Get
Hostid.py”
• On Linux: In a terminal type: /usr/genarts/rlm/hostid_wrapper.py
9. The command above will print out the results – Get the first mac address from the
first line: “Hostid of this machine:“
10.Enter the mac address into the online “License Server or Node-lock hostid” field.
11.Enter the number of licenses that should be locked to this server in the “License
count (for floating licenses)” field. Or just enter 0 to assign all licenses to the
specified server. Click “Next”
12.A default license location will auto-populate in the “License File to create or edit”
field. Replace the default location to a location that you can easily write to and
access the file, such as your Desktop or the Downloads folder.
13.Click "Next"
373
Mocha® 2022 User Guide
14.On the “Activation Request Data” screen, verify all the information you have
entered, and click “REQUEST LICENSE”
15.On the “License Activation” page, click on “(Re)start License Server”
16.Then, on the “Reread/Restart Servers” page, click on “Reread/Restart”
17.Transfer the License File on to the offline license server and save the License File
to the RLM directory.
a. For RLM Server v13 and newer:
• For Windows: C:\Program Files\BorisFX\rlm
• For Mac: /Library/Application Support/BorisFX/rlm/
• For Linux: /usr/borisfx/rlm/
b. For older versions of RLM Server:
• For Windows: C:\Program Files (x86)\GenArts\rlm
• For Mac: /Library/Application Support/GenArts/rlm/
• For Linux: /usr/genarts/rlm/
18.Open the License File in a text editor and edit the file with your offline server’s
Hostname
19.Open a Web browser on the offline server, go to http://localhost:5054 and click on
“(Re)Start License Server”
Now that everything is installed and activated, you no longer need the RLM server
installed on the temporary online computer – you can remove it at this time.
374
Mocha® 2022 User Guide
2. Get the host line from the server license, which looks like this: HOST ServerName
EthernetAddress PortNumber
For example, HOST camelot 00000000042e 5053
3. Create a new file in a text editor called mocha_client.lic. The file name is not
important, as long as the .lic extension exists.
4. Paste in the HOST line into the client license file and press enter to create a new line
5. You can either keep the server Mac address in the client or replace it with the word
"any". See example below:
mocha_client.lic
6. Save the file to the Mocha RLM directory. For your particular system this is:
• For Windows: C:\ProgramData\GenArts\rlm
• For Mac: /Library/Application Support/GenArts/rlm/
• For Linux: /usr/genarts/rlm/
7. If the installation is successful, you will now be able to use Mocha
genarts_LICENSE=5053@server-name
genarts_LICENSE=/path/to/file.lic
You can also set up the RLM environment variable to read all .lic files in a directory:
genarts_LICENSE=your/rlm/directory
375
Mocha® 2022 User Guide
If you continue to have issues installing, please contact support and we will be happy
to help you. You may contact our support team here: https://borisfx.com/support/open-
a-case/
Check that your client license actually exists on the client machine:
Verify you are using the latest version of the license server
software.
If your organization needs to run a firewall, you will need to check if the ports for the
RLM server are open for use.
376
Mocha® 2022 User Guide
Check your purchase order to make sure everything matches up version wise. It may be
that you don’t have the correct version of Mocha installed from our download section.
This is especially important for legacy software.
If you have more than one Mocha license installed on the server or client machine check
to make sure they are not expired licenses. While rare, sometimes these licenses can
conflict with any current ones you have on your system.
The client does not connect or see the server host name
If your client machine does not connect to the server based on the server name, try
replacing the server name with the IP address of the server instead in the license file.
You can easily do this via the License Manager or via a text editor.
Check logs and their paths: Read the logs from Mocha and from your server, they will
tell you all about what is happening to your machine.
Check to make sure you are not restricted to using certain ports due to a firewall or other
admin permissions. When in doubt, temporarily turn your firewalls off for the duration
of the installation and then turn them back on when you are done.
If your client machine is not able to connect to the server you may have a networking
issue. Try changing the server name in the client license to the IP address of the server
instead, or check to see if your host has ".local" appended to the end of it. You can
also do this in any text editor by opening up the client license and server license and
manually editing the server name.
377
Mocha® 2022 User Guide
You might roll your eyes at this one, but try uninstalling, restarting your machine,
and installing the software again from scratch. Make sure you follow installation
directions off our website exactly. It sounds redundant, but sometimes it’s a great way
to troubleshoot what is going on inside your machine.
Contact us! Our support team are more than happy to help you fix any floating license
issues you may have. Please contact support here: https://borisfx.com/support/open-
a-case/
378
Mocha® 2022 User Guide
When you are using a floating license, it is broken into two parts: The interactive portion
and the rendering portion.
1. If you open the Mocha GUI in the Mocha Pro Plugin (and a license is available) you
are entering the interactive portion.
2. If you are back in the host and not using interactive elements such as layer choosing
or opening the GUI, you are using the rendering portion of the license.
1. If you open the Mocha Pro standalone application (and a license is available) you
are entering the interactive portion.
2. If you have the Mocha Pro standalone application closed and are using the
mocharender.py render script, you are utilizing the rendering portion. (See the
Python guide for more details on rendering with mocharender.py)
If the interactive license is in use elsewhere or missing, the Mocha GUI will become
unlicensed and attempting further work may encrypt your project if you choose to save.
If you have no interactive floating licenses available to render with, additional render
licenses can be helpful to let you free up interactive licenses elsewhere.
To help illustrate the Render License workflow, let’s look at the following situation:
379
Mocha® 2022 User Guide
• If only one person is using Mocha on the network, there are 4 interactive and 10
render licenses still available to use.
• If only that one person was using Mocha on the network, they would have 15 render
machines available for use including the one they were working with.
• If another person started working and all machines were in use for rendering, their
version of Mocha would be unlicensed, as there would be no available seats.
To help illustrate the Render License workflow, let’s look at another situation:
Now, say one person wants to send off a render to the network:
• If 5 people are using Mocha on the network already, there would be 11 render
machines available for use including the one the user was presently working with.
• If another person stopped working in Mocha, the interactive license would be
released, and a new machine would then be free to either use for work (interactive)
or render (non-interactive) by another user.
380
Mocha® 2022 User Guide
You will need to make sure the necessary source footage is available for all machines.
This includes anything you have imported into the Mocha GUI such as clean plates,
insert clips and other imported files.
If you are using the plugin, you may have imported footage into the
Mocha GUI separate from the host source footage. Make sure any
imported footage is also available.
381
Mocha® 2022 User Guide
Here are a fe of the more common messages you’ll see, and what they mean.
Tracking
Often paired with the error "One or more layers were not tracked properly."
This usually means Mocha can’t see where to track next. This can be for a variety of
reasons:
1. Your tracking area is too small or does use enough pixels. Try increasing the size
of the spline area or the Min % of pixels used.
2. The area you are tracking has jumped a significant distance. Try moving back
a frame where the tracking was good and increase the horizontal and/or vertical
search area.
3. The area has become completely obscured by something else, the edge of the shot
or by motion blur. Check the next frame to see where it went. If you can’t see an
obvious reason, try expanding the spline area, increasing the percentage of pixels
used, or move the spline to a different part of the shot that is coplanar to the area
you were tracking.
4. Mocha can’t find the frame. This could be because the host hasn’t sent the plugin
a frame or you have a corrupted frame on disk. Check if you need to purge your
cache or free up some memory.
This usually means the tracking surface has gone behind the camera and cannot
calculate the plane as it’s gone out of bounds. Normally this happens in tracking with
extreme perspetive distortion.
382
Mocha® 2022 User Guide
One way around this is to track from the middle of the motion as opposed to starting
at one end.
Splines
When you move a point and get this error, there can be a couple of reasons for the
problem:
1. Usually this is a symptom of a bad track. The track has becme very distorted and
moving the point is trying to translate within that space.
2. A corrupted spline. This can happen when points are very close together or have
very extreme handles, or are looping in on themselve.
In both situations it’s often best to either find the problem point or keyframe and delete
it or remove the spline and attempt to retrack it.
If you open Mocha and you may see a yellow warning that says "Frame X not Rendered
in Clip" and the name of a rendered clip, like Remove, Insert, Stabilize etc.
This is very normal. Your render cache is just cleared and needs to be re-rendered.
To go back to seeing your footage, you can either use the top left hand dropdown in
the viewer to select "Selected Layer" to view the source clip or you can click "Render"
to re-render the frames of the clip that you are missing.
If you’re wondering why you get this message at all, read on:
When you are in the standalone version of Mocha, you will often see the rendered clip
when you reopen, because it is not cleared unless you tell it to. In the plugin, however,
the render is always cleared on exit. You won’t ever see the render when you go back
to the Mocha GUI in the plugin, because it is always removed.
Because a plugin environment relies on the host’s images, if any changes are made
to the source footage (brightness, color correction, editing, effects etc) the plugin
needs to be updated with the new information. If we retain the old cached render, the
output wouldn’t reflect the changes made by the user in the host and you would get
383
Mocha® 2022 User Guide
inconsistent results. So, when you see a message saying “Frame X not rendered”, it
literally just means there isn’t currently a frame to view, because it’s either never been
rendered, or it’s been cleared.
This error will also say "The file is corrupted or in an unsupported format."
Generally the reason this occurs is for that very reason: The file can’t be read because
it’s not currently supported. In most cases the best way to get back to work is to convert
the clip in question to an image sequence such as TIF or DPX.
You can also try to convert to one of the suppported media formats listed in the File
Formats section of the user guide.
If you get this error, it usually means the host hasn’t sent Mocha any readable
information.
This can be for several reasons: . The host has run out of cache memory and can’t
supply any new frames . The node or layer you’ve added the Mocha effect to has hold
or retiming applied to it and is feeding Mocha incorrect frames. . A frame is missing
or corrupted
In most cases, you need to solve this on the host end and find where the problem has
occured. If you’re unsure, please contact Boris FX support.
If you need to use a matte clip in your project you need to import a Grey formatted
file, not RGB.
If you don’t have a file that supports Grey as a color format, we do the conversion for
you and save the resulting clip to the clip cache.
License problems
The error occurs when a floating license client loses connection to the license the
server.
384
Mocha® 2022 User Guide
Normally to fix this you need to restablish the connection to the license server.
Tracking
In most cases, a slipping, drifting or jumping track is going to be because Mocha cannot
find the area you were tracking on the next frame.
There can be multiple causes for this, so let’s take a look at some common cases.
This is probably the most common. When the area you are tracking has something else
enter the layer shape, it can throw off the track.
This can be a small, high-contrast object entering the edges of the shape or even
completely covering the main area.
It can also be caused by the area itself updating, such as screens or reflective objects.
It’s important to check over your clip to see if anything (e.g. a bird, elbow, hair, etc) has
drifted into the space you are tracking. If it has, you need to either adjust your tracking
shape to avoid the object, or create a separate layer mask on top of your tracking layer.
In cases where the foreground interruption is very large, you may not have enough
information left in the tracking shape to get any worthwhile tracking data. In this case,
you may need to track a coplanar area or manually adjust the tracking to ignore the
problem.
If an object is moving fast, you can get two problems: The tracking not being able to
keep up and the introduction of motion blur.
If the object is moving very fast vertically or horizontally, you may need to turn off the
"Auto" checkboxes in the search area parameters and enter a larger value. If the object
is rotating or zooming/scaling very quickly, you can also adjust the angle and zoom
parameters to provide an estimate of the speed of motion.
385
Mocha® 2022 User Guide
For motion blur, it can be trickier. Start by increasing the Min % of Pixels used to see if
there is enough detail to keep Mocha latched on. If the track is still slipping, it may be
worth continuing the track and adjusting the drift with AjustTrack afterwards.
386
Mocha® 2022 User Guide
Qt 5.12.3
Qt is available under the GNU Lesser General Public License version 3.
License
0. Additional Definitions.
387
Mocha® 2022 User Guide
You may convey a covered work under sections 3 and 4 of this License
without being bound by section 3 of the GNU GPL.
a) under this License, provided that you make a good faith effort to
ensure that, in the event an Application does not supply the
function or data, the facility still operates, and performs
whatever part of its purpose remains meaningful, or
a) Give prominent notice with each copy of the object code that the
Library is used in it and that the Library and its use are
covered by this License.
b) Accompany the object code with a copy of the GNU GPL and this license
document.
388
Mocha® 2022 User Guide
4. Combined Works.
You may convey a Combined Work under terms of your choice that,
taken together, effectively do not restrict modification of the
portions of the Library contained in the Combined Work and reverse
engineering for debugging such modifications, if you also do each of
the following:
a) Give prominent notice with each copy of the Combined Work that
the Library is used in it and that the Library and its use are
covered by this License.
b) Accompany the Combined Work with a copy of the GNU GPL and this license
document.
389
Mocha® 2022 User Guide
Code. If you use option 4d1, you must provide the Installation
Information in the manner specified by section 6 of the GNU GPL
for conveying Corresponding Source.)
5. Combined Libraries.
You may place library facilities that are a work based on the
Library side by side in a single library together with other library
facilities that are not Applications and are not covered by this
License, and convey such a combined library under terms of your
choice, if you do both of the following:
a) Accompany the combined library with a copy of the same work based
on the Library, uncombined with any other library facilities,
conveyed under the terms of this License.
The Free Software Foundation may publish revised and/or new versions
of the GNU Lesser General Public License from time to time. Such new
versions will be similar in spirit to the present version, but may
differ in detail to address new problems or concerns.
390
Mocha® 2022 User Guide
Python
License
391
Mocha® 2022 User Guide
OpenColorIO
License
392
Mocha® 2022 User Guide
OpenSSL
License
LICENSE ISSUES
==============
The OpenSSL toolkit stays under a double license, i.e. both the
conditions of
the OpenSSL License and the original SSLeay license apply to the
toolkit.
See below for the actual license texts.
OpenSSL License
---------------
/* ====================================================================
* Copyright (c) 1998-2018 The OpenSSL Project. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* 3. All advertising materials mentioning features or use of this
* software must display the following acknowledgment:
* "This product includes software developed by the OpenSSL Project
* for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
*
* 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used
to
* endorse or promote products derived from this software without
* prior written permission. For written permission, please contact
* [email protected].
*
* 5. Products derived from this software may not be called "OpenSSL"
* nor may "OpenSSL" appear in their names without prior written
* permission of the OpenSSL Project.
*
393
Mocha® 2022 User Guide
394
Mocha® 2022 User Guide
395
Mocha® 2022 User Guide
libpng
License
This copy of the libpng notices is provided for your convenience. In case
of
any discrepancy between this copy and the notices in the file png.h that
is
included in the libpng distribution, the latter shall prevail.
libpng versions 1.0.7, July 1, 2000 through 1.6.35, July 15, 2018 are
Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson, are
derived from libpng-1.0.6, and are distributed according to the same
disclaimer and license as libpng-1.0.6 with the following individuals
added to the list of Contributing Authors:
Simon-Pierre Cadieux
Eric S. Raymond
Mans Rullgard
Cosmin Truta
Gilles Vollant
James Yu
Mandar Sahastrabuddhe
Google Inc.
Vadim Barkov
396
Mocha® 2022 User Guide
libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are
Copyright (c) 1998-2000 Glenn Randers-Pehrson, are derived from
libpng-0.96, and are distributed according to the same disclaimer and
license as libpng-0.96, with the following individuals added to the list
of Contributing Authors:
Tom Lane
Glenn Randers-Pehrson
Willem van Schaik
libpng versions 0.89, June 1996, through 0.96, May 1997, are
Copyright (c) 1996-1997 Andreas Dilger, are derived from libpng-0.88,
and are distributed according to the same disclaimer and license as
libpng-0.88, with the following individuals added to the list of
Contributing Authors:
John Bowler
Kevin Bracey
Sam Bushell
Magnus Holmgren
Greg Roelofs
Tom Tanner
libpng versions 0.5, May 1995, through 0.88, January 1996, are
Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.
Andreas Dilger
Dave Martindale
Guy Eric Schalnat
Paul Schmidt
Tim Wegner
The PNG Reference Library is supplied "AS IS". The Contributing Authors
397
Mocha® 2022 User Guide
The Contributing Authors and Group 42, Inc. specifically permit, without
fee, and encourage the use of this source code as a component to
supporting the PNG file format in commercial products. If you use this
source code in a product, acknowledgment is not required but would be
appreciated.
TRADEMARK:
The name "libpng" has not been registered by the Copyright owner
as a trademark in any jurisdiction. However, because libpng has
been distributed and maintained world-wide, continually since 1995,
the Copyright owner claims "common-law trademark protection" in any
jurisdiction where common-law trademark is recognized.
OSI CERTIFICATION:
Libpng is OSI Certified Open Source Software. OSI Certified Open Source
is
a certification mark of the Open Source Initiative. OSI has not addressed
the additional disclaimers inserted at version 1.0.7.
EXPORT CONTROL:
398
Mocha® 2022 User Guide
Glenn Randers-Pehrson
glennrp at users.sourceforge.net
July 15, 2018
libjpeg
This software is based in part on the work of the Independent JPEG Group.
PySide2
The source code for PySide2 can be obtained from https://github.com/boris-fx/mocha-
pyside2/tree/5.12
License
[This is the first released version of the Lesser GPL. It also counts
as the successor of the GNU Library Public License, version 2, hence
the version number 2.1.]
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
Licenses are intended to guarantee your freedom to share and change
free software--to make sure the software is free for all its users.
399
Mocha® 2022 User Guide
400
Mocha® 2022 User Guide
401
Mocha® 2022 User Guide
"Source code" for a work means the preferred form of the work for
making modifications to it. For a library, complete source code means
all the source code for all modules it contains, plus any associated
interface definition files, plus the scripts used to control compilation
and installation of the library.
You may charge a fee for the physical act of transferring a copy,
and you may at your option offer warranty protection in exchange for a
fee.
2. You may modify your copy or copies of the Library or any portion
402
Mocha® 2022 User Guide
of it, thus forming a work based on the Library, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
403
Mocha® 2022 User Guide
3. You may opt to apply the terms of the ordinary GNU General Public
License instead of this License to a given copy of the Library. To do
this, you must alter all the notices that refer to this License, so
that they refer to the ordinary GNU General Public License, version 2,
instead of to this License. (If a newer version than version 2 of the
ordinary GNU General Public License has appeared, then you can specify
that version instead if you wish.) Do not make any other change in
these notices.
This option is useful when you wish to copy part of the code of
the Library into a program that is not a library.
However, linking a "work that uses the Library" with the Library
creates an executable that is a derivative of the Library (because it
contains portions of the Library), rather than a "work that uses the
library". The executable is therefore covered by this License.
Section 6 states terms for distribution of such executables.
When a "work that uses the Library" uses material from a header file
that is part of the Library, the object code for the work may be a
derivative work of the Library even though the source code is not.
404
Mocha® 2022 User Guide
You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License. You must supply a copy of this License. If the work
during execution displays copyright notices, you must include the
copyright notice for the Library among them, as well as a reference
directing the user to the copy of this License. Also, you must do one
of these things:
405
Mocha® 2022 User Guide
rather than copying library functions into the executable, and (2)
will operate properly with a modified version of the library, if
the user installs one, as long as the modified version is
interface-compatible with the version that the work was made with.
For an executable, the required form of the "work that uses the
Library" must include any data and utility programs needed for
reproducing the executable from it. However, as a special exception,
the materials to be distributed need not include anything that is
normally distributed (in either source or binary form) with the major
components (compiler, kernel, and so on) of the operating system on
which the executable runs, unless that component itself accompanies
the executable.
7. You may place library facilities that are a work based on the
Library side-by-side in a single library together with other library
facilities not covered by this License, and distribute such a combined
library, provided that the separate distribution of the work based on
the Library and of the other library facilities is otherwise
permitted, and provided that you do these two things:
406
Mocha® 2022 User Guide
9. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Library or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Library (or any work based on the
Library), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Library or works based on it.
10. Each time you redistribute the Library (or any work based on the
Library), the recipient automatically receives a license from the
original licensor to copy, distribute, link with or modify the Library
subject to these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties with
this License.
407
Mocha® 2022 User Guide
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
13. The Free Software Foundation may publish revised and/or new
versions of the Lesser General Public License from time to time.
Such new versions will be similar in spirit to the present version,
but may differ in detail to address new problems or concerns.
14. If you wish to incorporate parts of the Library into other free
programs whose distribution conditions are incompatible with these,
write to the author to ask for permission. For software which is
copyrighted by the Free Software Foundation, write to the Free
Software Foundation; we sometimes make exceptions for this. Our
decision will be guided by the two goals of preserving the free status
of all derivatives of our free software and of promoting the sharing
and reuse of software generally.
NO WARRANTY
408
Mocha® 2022 User Guide
<one line to give the library's name and a brief idea of what it
does.>
Copyright (C) <year> <name of author>
409
Mocha® 2022 User Guide
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA
Also add information on how to contact you by electronic and paper mail.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the library, if
necessary. Here is a sample; alter the names:
Shiboken2
The source code for Shiboken2 can be obtained from https://github.com/boris-fx/
mocha-shiboken2/tree/5.12
License
[This is the first released version of the Lesser GPL. It also counts
as the successor of the GNU Library Public License, version 2, hence
the version number 2.1.]
Preamble
410
Mocha® 2022 User Guide
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
Licenses are intended to guarantee your freedom to share and change
free software--to make sure the software is free for all its users.
411
Mocha® 2022 User Guide
412
Mocha® 2022 User Guide
linked with the Library has the freedom and the wherewithal to run
that program using a modified version of the Library.
"Source code" for a work means the preferred form of the work for
making modifications to it. For a library, complete source code means
all the source code for all modules it contains, plus any associated
interface definition files, plus the scripts used to control compilation
and installation of the library.
413
Mocha® 2022 User Guide
You may charge a fee for the physical act of transferring a copy,
and you may at your option offer warranty protection in exchange for a
fee.
2. You may modify your copy or copies of the Library or any portion
of it, thus forming a work based on the Library, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
414
Mocha® 2022 User Guide
entire whole, and thus to each and every part regardless of who wrote
it.
3. You may opt to apply the terms of the ordinary GNU General Public
License instead of this License to a given copy of the Library. To do
this, you must alter all the notices that refer to this License, so
that they refer to the ordinary GNU General Public License, version 2,
instead of to this License. (If a newer version than version 2 of the
ordinary GNU General Public License has appeared, then you can specify
that version instead if you wish.) Do not make any other change in
these notices.
This option is useful when you wish to copy part of the code of
the Library into a program that is not a library.
415
Mocha® 2022 User Guide
However, linking a "work that uses the Library" with the Library
creates an executable that is a derivative of the Library (because it
contains portions of the Library), rather than a "work that uses the
library". The executable is therefore covered by this License.
Section 6 states terms for distribution of such executables.
When a "work that uses the Library" uses material from a header file
that is part of the Library, the object code for the work may be a
derivative work of the Library even though the source code is not.
Whether this is true is especially significant if the work can be
linked without the Library, or if the work is itself a library. The
threshold for this to be true is not precisely defined by law.
You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License. You must supply a copy of this License. If the work
during execution displays copyright notices, you must include the
copyright notice for the Library among them, as well as a reference
directing the user to the copy of this License. Also, you must do one
of these things:
416
Mocha® 2022 User Guide
For an executable, the required form of the "work that uses the
Library" must include any data and utility programs needed for
reproducing the executable from it. However, as a special exception,
the materials to be distributed need not include anything that is
normally distributed (in either source or binary form) with the major
components (compiler, kernel, and so on) of the operating system on
which the executable runs, unless that component itself accompanies
the executable.
7. You may place library facilities that are a work based on the
Library side-by-side in a single library together with other library
facilities not covered by this License, and distribute such a combined
417
Mocha® 2022 User Guide
9. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Library or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Library (or any work based on the
Library), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Library or works based on it.
10. Each time you redistribute the Library (or any work based on the
Library), the recipient automatically receives a license from the
original licensor to copy, distribute, link with or modify the Library
subject to these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties with
this License.
418
Mocha® 2022 User Guide
13. The Free Software Foundation may publish revised and/or new
versions of the Lesser General Public License from time to time.
Such new versions will be similar in spirit to the present version,
but may differ in detail to address new problems or concerns.
419
Mocha® 2022 User Guide
14. If you wish to incorporate parts of the Library into other free
programs whose distribution conditions are incompatible with these,
write to the author to ask for permission. For software which is
copyrighted by the Free Software Foundation, write to the Free
Software Foundation; we sometimes make exceptions for this. Our
decision will be guided by the two goals of preserving the free status
of all derivatives of our free software and of promoting the sharing
and reuse of software generally.
NO WARRANTY
420
Mocha® 2022 User Guide
convey the exclusion of warranty; and each file should have at least the
"copyright" line and a pointer to where the full notice is found.
<one line to give the library's name and a brief idea of what it
does.>
Copyright (C) <year> <name of author>
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA
Also add information on how to contact you by electronic and paper mail.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the library, if
necessary. Here is a sample; alter the names:
FBX SDK
The FBX SDK is supplied by Autodesk.
License
421
Mocha® 2022 User Guide
OpenEXR
License
R3D SDK
422
Mocha® 2022 User Guide
FreeType
License
fontconfig
License
Permission to use, copy, modify, distribute, and sell this software and
its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation, and that the name of the author(s) not be used in
advertising or publicity pertaining to distribution of the software
without
specific, written prior permission. The authors make no
representations about the suitability of this software for any purpose.
It
is provided "as is" without express or implied warranty.
libtiff
License
423
Mocha® 2022 User Guide
Permission to use, copy, modify, distribute, and sell this software and
its documentation for any purpose is hereby granted without fee, provided
that (i) the above copyright notices and this permission notice appear in
all copies of the software and related documentation, and (ii) the names
of
Sam Leffler and Silicon Graphics may not be used in any advertising or
publicity relating to the software without the specific, prior written
permission of Sam Leffler and Silicon Graphics.
uuid
OSSP uuid uses the MIT license.
License
424
Mocha® 2022 User Guide
libxml
License
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FIT-
NESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
libz
License
425
Mocha® 2022 User Guide
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not
be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source
distribution.
GStreamer
The source code for GStreamer 1.16.3 can be obtained from https://
gitlab.freedesktop.org/gstreamer. Boris FX modifications to gst-plugins-good are
available at https://github.com/boris-fx/gst-plugins-good/tree/1.16.
License
Preamble
426
Mocha® 2022 User Guide
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
Licenses are intended to guarantee your freedom to share and change
free software--to make sure the software is free for all its users.
Our method of protecting your rights has two steps: (1) copyright
the library, and (2) offer you this license which gives you legal
permission to copy, distribute and/or modify the library.
427
Mocha® 2022 User Guide
The reason we have a separate public license for some libraries is that
they blur the distinction we usually make between modifying or adding to a
program and simply using it. Linking a program with a library, without
changing the library, is in some sense simply using the library, and is
analogous to running a utility program or application program. However,
in
a textual and legal sense, the linked executable is a combined work, a
derivative of the original library, and the ordinary General Public
License
treats it as such.
428
Mocha® 2022 User Guide
"Source code" for a work means the preferred form of the work for
making modifications to it. For a library, complete source code means
all the source code for all modules it contains, plus any associated
interface definition files, plus the scripts used to control compilation
and installation of the library.
You may charge a fee for the physical act of transferring a copy,
and you may at your option offer warranty protection in exchange for a
fee.
429
Mocha® 2022 User Guide
2. You may modify your copy or copies of the Library or any portion
of it, thus forming a work based on the Library, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
430
Mocha® 2022 User Guide
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may opt to apply the terms of the ordinary GNU General Public
License instead of this License to a given copy of the Library. To do
this, you must alter all the notices that refer to this License, so
that they refer to the ordinary GNU General Public License, version 2,
instead of to this License. (If a newer version than version 2 of the
ordinary GNU General Public License has appeared, then you can specify
that version instead if you wish.) Do not make any other change in
these notices.
This option is useful when you wish to copy part of the code of
the Library into a program that is not a library.
However, linking a "work that uses the Library" with the Library
creates an executable that is a derivative of the Library (because it
contains portions of the Library), rather than a "work that uses the
library". The executable is therefore covered by this License.
Section 6 states terms for distribution of such executables.
When a "work that uses the Library" uses material from a header file
that is part of the Library, the object code for the work may be a
431
Mocha® 2022 User Guide
derivative work of the Library even though the source code is not.
Whether this is true is especially significant if the work can be
linked without the Library, or if the work is itself a library. The
threshold for this to be true is not precisely defined by law.
You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License. You must supply a copy of this License. If the work
during execution displays copyright notices, you must include the
copyright notice for the Library among them, as well as a reference
directing the user to the copy of this License. Also, you must do one
of these things:
432
Mocha® 2022 User Guide
For an executable, the required form of the "work that uses the
Library" must include any data and utility programs needed for
reproducing the executable from it. However, as a special exception,
the source code distributed need not include anything that is normally
distributed (in either source or binary form) with the major
components (compiler, kernel, and so on) of the operating system on
which the executable runs, unless that component itself accompanies
the executable.
7. You may place library facilities that are a work based on the
Library side-by-side in a single library together with other library
facilities not covered by this License, and distribute such a combined
library, provided that the separate distribution of the work based on
the Library and of the other library facilities is otherwise
permitted, and provided that you do these two things:
433
Mocha® 2022 User Guide
or rights, from you under this License will not have their licenses
terminated so long as such parties remain in full compliance.
9. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Library or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Library (or any work based on the
Library), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Library or works based on it.
10. Each time you redistribute the Library (or any work based on the
Library), the recipient automatically receives a license from the
original licensor to copy, distribute, link with or modify the Library
subject to these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
434
Mocha® 2022 User Guide
13. The Free Software Foundation may publish revised and/or new
versions of the Library General Public License from time to time.
Such new versions will be similar in spirit to the present version,
but may differ in detail to address new problems or concerns.
14. If you wish to incorporate parts of the Library into other free
programs whose distribution conditions are incompatible with these,
write to the author to ask for permission. For software which is
copyrighted by the Free Software Foundation, write to the Free
Software Foundation; we sometimes make exceptions for this. Our
decision will be guided by the two goals of preserving the free status
of all derivatives of our free software and of promoting the sharing
and reuse of software generally.
NO WARRANTY
435
Mocha® 2022 User Guide
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
<one line to give the library's name and a brief idea of what it
does.>
Copyright (C) <year> <name of author>
You should have received a copy of the GNU Library General Public
436
Mocha® 2022 User Guide
Also add information on how to contact you by electronic and paper mail.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the library, if
necessary. Here is a sample; alter the names:
Alembic
License
Industrial Light & Magic, ILM and the Bulb and Gear design logo are all
registered trademarks or service marks of Lucasfilm Ltd.
437
Mocha® 2022 User Guide
-------------------------------------------------------------------------------
ALEMBIC ATTACHMENT A —
REQUIRED NOTICES FOR DISTRIBUTION
TO THE FULLEST EXTENT PERMITTED UNDER APPLICABLE LAW, THE OPEN SOURCE
COMPONENTS ARE PROVIDED BY THE COPYRIGHT HOLDERS, CONTRIBUTORS,
LICENSORS, AND ILM "AS IS" AND ANY REPRESENTATIONS OR WARRANTIES OF ANY
KIND, WHETHER ORAL OR WRITTEN, WHETHER EXPRESS, IMPLIED, OR ARISING BY
STATUTE, CUSTOM, COURSE OF DEALING, OR TRADE USAGE, INCLUDING WITHOUT
LIMITATION THE IMPLIED WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR
A PARTICULAR PURPOSE, AND NON-INFRINGEMENT, ARE DISCLAIMED. IN NO EVENT
WILL THE COPYRIGHT OWNER, CONTRIBUTORS, LICENSORS, OR ILM AND/OR ITS
AFFILIATES BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION), HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THE OPEN
SOURCE COMPONENTS, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
438
Mocha® 2022 User Guide
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND
NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR ANYONE
DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES OR OTHER LIABILITY,
WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Eigen
License
439
Mocha® 2022 User Guide
OpenCV
License
License Agreement
For Open Source Computer Vision Library
(3-clause BSD License)
440
Mocha® 2022 User Guide
* Neither the names of the copyright holders nor the names of the
contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
441