Mocha Pro User Guide
Mocha Pro User Guide
Mocha Pro User Guide
Table of Contents
Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
The Art of Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
There Are No Point Trackers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
New in Mocha Pro 2024 v11.0.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Camera Solve with Mocha and SynthEyes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Track and Roto Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Performance Improvements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Architecture Updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Interface Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Layouts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Saving Custom Layouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
The Advanced Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Basic Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
The Viewer Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
The Timeline Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Layer Controls. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Layer Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Cache Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Stereo Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Viewing in Stereo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Timeline Controls in Stereo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Using the Mocha Pro Plugins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
360 VR and Stereo Views Workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Applying the Mocha Plugin for Adobe After Effects . . . . . . . . . . . . . . . . . . . . . . 40
Applying the Mocha Plugin for Adobe Premiere . . . . . . . . . . . . . . . . . . . . . . . . . 48
Applying the Mocha Plugin for Avid Media Composer . . . . . . . . . . . . . . . . . . . . 52
Applying the Mocha OFX Plugin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Adding the Mocha Plugin inside Autodesk Flame . . . . . . . . . . . . . . . . . . . . . . . . 57
Adding the Mocha Plugin inside Blackmagic Design Fusion Studio . . . . . . . . . . 59
Adding the Mocha Plugin inside The Foundry Nuke . . . . . . . . . . . . . . . . . . . . . . 60
1
Adding the Mocha Plugin inside Silhouette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Adding the Mocha Plugin inside VEGAS Pro . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Basic workflow for the Mocha OFX Plugin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Using the Mocha GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Controlling Mattes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Controlling Module Renders. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Rendering Insert Layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Dealing with Alpha Channel Input and Output . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Applying the Mocha HitFilm or Mocha Pro Plugin inside HitFilm . . . . . . . . . . . . 79
Loading Projects containing the Mocha VR Plugin . . . . . . . . . . . . . . . . . . . . . . . 82
Starting a New Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Workflow inside Mocha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Creating a New Project in the Mocha Standalone application . . . . . . . . . . . . . . 83
Setting Up a New Project For VR 360. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Setting Up a New Project For Stereo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Creating a New Project in the Mocha Pro Plugin . . . . . . . . . . . . . . . . . . . . . . . . . 90
Creating a New Project in the BCC 10 Mocha PixelChooser . . . . . . . . . . . . . . . . 91
Setting the In and Out Points. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Project Frame Offsets and Clip Frame Offsets . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Tips for New Projects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Merging and Importing Projects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Merging Projects [Mocha Pro]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Importing Silhouette SFX projects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Tracking Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
The Planar Tracker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
The Relationship Between Splines and Tracking Data . . . . . . . . . . . . . . . . . . . . 97
Selecting an Area to Track. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Dealing With Obstructions or Reflective Surfaces . . . . . . . . . . . . . . . . . . . . . . . 100
Tracking Parameters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Tracking the Spline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Checking Your Track . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Redoing or Deleting Tracking Keyframes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Importing Mattes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Merging Tracks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Keyframe Controls. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
2
Tips for Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
PowerMesh and Mesh Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Mesh Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Mesh Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Edit Track Mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Using Mesh Falloff to Adjust Clusters of Points . . . . . . . . . . . . . . . . . . . . . . . . . 129
Exporting Meshes or Mesh Warped Splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Tips for Mesh Tracking. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Stereo Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
Manual Stereo Offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
Offset Frame Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
AdjustTrack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Setting up reference points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Reference Points. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Adjusting points. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
Adding New Points for Further Adjustment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Exporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
AdjustTrack Classic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Starting the Track Adjustment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Reference Points. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Reference Point Quality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
AdjustTrack with More than Four Reference Points . . . . . . . . . . . . . . . . . . . . . 153
Working Backwards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
About Primary Reference Points (the red X). . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
Changing the Primary Frame for a Reference Point. . . . . . . . . . . . . . . . . . . . . . 155
Selecting Different Reference Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
Deleting Reference Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
Nudging Reference Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
View Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Tips for AdjustTrack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Rotoscoping Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
The Art of Rotoscoping. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Mocha Tracking and Roto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
What’s the Überkey?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
3
Translate, Rotate and Scale your Splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
Turning On and Off Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
Add Motion Blur [Mocha Pro Only] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
Changing the Matte Blend Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
Viewing your Mattes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
Changing the Background Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
Colorize your Matte Overlay. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
Hiding splines or points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
Preview Rendered Mattes [Mocha Pro Only] . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Open Splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
Using Falloff for Adjusting Larger Clusters of Points . . . . . . . . . . . . . . . . . . . . . 172
Splitting Contours into Different Layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
Snapshot Duplicates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
Tips for Rotoscoping. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
Rotoscoping with Magnetic and Freehand Tools . . . . . . . . . . . . . . . . . . . . . . . . . . 176
The Magnetic Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
The Freehand Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Finalising a Drawn Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
Adjusting Detail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
Edge Snapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
Painting Splines with the Area Brush Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
Painting new layers with Area Brush . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
Adjusting the size of the brush . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
Quick Mask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
Fill Gaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
Add Area Brush to Layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
Erase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
Stereo Rotoscoping. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
Working with Difference Mode and Stereo Offsets . . . . . . . . . . . . . . . . . . . . . . 191
Exporting Tracks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
Exporting Tracks to Adobe After Effects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
Exporting Tracks to Silhouette. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
Exporting Tracks to Final Cut Pro or Final Cut Express. . . . . . . . . . . . . . . . . . . 202
Exporting Tracks to Apple Motion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
Exporting Tracks to Apple Shake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
4
Exporting tracks to Mistika. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Exporting Tracks to Nuke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Exporting Tracks to Blackmagic Fusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
Exporting Tracks to Inferno, Flame, Flint, Smoke and Combustion . . . . . . . . . 215
Exporting Tracks to Assimilate SCRATCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
Exporting Tracks to SGO Mistika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
Exporting Tracks to Boris FX Plugins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Exporting Tracks to Avid DS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Exporting Tracks to HitFilm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
Exporting Tracks to Quantel generationQ systems. . . . . . . . . . . . . . . . . . . . . . 226
Exporting Tracks to MochaBlend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
Exporting Stereo Tracking Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
Exporting to Alembic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
Exporting Mattes and Clips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
Exporting Rendered Shapes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
Exporting Stereo Rendered shapes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
Exporting as Adobe After Effects Mask Data. . . . . . . . . . . . . . . . . . . . . . . . . . . 238
Exporting Adobe Premiere Pro CC Masks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
Exporting as Mocha shape for Final Cut. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
Exporting Flame Gmask and Flame Gmask Tracer data . . . . . . . . . . . . . . . . . . 245
Exporting Shake Rotosplines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
Exporting Shapes to HitFilm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
Exporting Roto, RotoPaint and SplineWarp Nodes to Nuke . . . . . . . . . . . . . . . 248
Exporting Shape Data to Blackmagic Fusion Shapes . . . . . . . . . . . . . . . . . . . . 250
Exporting Shape Data to MochaBlend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
Exporting Shape Data to Silhouette Shapes . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
Exporting Stereo Shape Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
Exporting Rendered Clips (Mocha Pro) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
Exporting Stereo Rendered Clips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
The Camera Solve Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
The Camera Solve Workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
Camera Solve Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
Features? Blips? Trackers? What are you talking about? . . . . . . . . . . . . . . . . . 268
Average Error - The Solve Quality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
5
Navigating the 3D Viewer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
3D Objects and Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
3D Alignment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
Importing Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
Measuring Distance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
Exporting Camera Solves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
Exporting to SynthEyes Projects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
The Insert Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Output [Standalone only]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
Source and Region of Interest (ROI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
Comp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
Feather . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
Transform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
Inserting in Stereo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
Rendering the Insert in the Plugin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
Insert Render Resampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
The Mega Plate Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
The Mega Plate Building Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
Mega Plate vs Mega Clean Plate - What is the difference? . . . . . . . . . . . . . . . 300
Mega Plate Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
Mega Plate Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
Tips for Mega Plates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
Using Mega Clean Plates in the Remove Module . . . . . . . . . . . . . . . . . . . . . . . . . . 311
Examples of Using Mega Clean Plates in compositors . . . . . . . . . . . . . . . . . . . 311
The Remove Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
The Removal Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
Removal Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
Remove Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
Stereo Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Tips for Removal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
The Stabilize Module. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
6
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
The Main Stabilization Parameters Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
Warp Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
Warp Mapping Workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
Stabilizing Shaky Camera Footage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
Locking Down Areas of Motion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
Exporting Stabilized Tracking Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
Stabilize in Stereo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
The Lens Module. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Lens Workflow with Line Detection Calibration . . . . . . . . . . . . . . . . . . . . . . . . . 348
Lens Workflow with Layer Splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
Equirectangular Lens Workflow with 360 VR. . . . . . . . . . . . . . . . . . . . . . . . . . . 349
Lens Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
Exporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
Rendering lens distortion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
Using Grid Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
Anamorphic Camera Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
Calibrating the Image Center . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
Manual calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
Lens Workflow with Distortion Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
Exporting Lens Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
Tips for Lens Calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
Using Mocha Pro for 360 VR workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
Using Equirectangular footage in Mocha Pro. . . . . . . . . . . . . . . . . . . . . . . . . . . 377
Mocha Pro Plugin Lens Rendering Workflow for 360 VR . . . . . . . . . . . . . . . . . 383
The Reorient Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
Reorienting Equirectangular Footage in Mocha Pro . . . . . . . . . . . . . . . . . . . . . 385
The Dope Sheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
The Dope Sheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
The Clip Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
Managing clips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
Importing New Clips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
Clip and Footage Stream Workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
Importing New Footage Streams to an existing Clip . . . . . . . . . . . . . . . . . . . . . 395
7
Removing Clips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
Relinking Clips. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
Selecting a Clip to Track . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
Selecting a Clip to Rotoscope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
Keyboard Shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
Keyboard Shortcut customization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
Default Mocha Shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
Preferences location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
Output Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
System. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
GPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
Software Update [Mocha Pro Only] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
Color. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
Clip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
Lens [Mocha Pro Only] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
Key Shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
OpenColorIO (OCIO) Color Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
OCIO Color Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
A Brief Overview of Color Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
Mocha in the Color Pipeline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
Setting the Working Color Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
Setting the Display View color space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
Defining the Clip Color Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
Defining the Overall Project Color Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
Loading OpenColorIO configurations into Mocha . . . . . . . . . . . . . . . . . . . . . . . 420
Mocha Pro OCIO inside Silhouette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
Setting Defaults for Color Space Workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
File Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
Reading files via the Mocha Plug-In . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
Reading files via Mocha Standalone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
Supported in this version. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
Not Directly Supported in this version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
What to Do if Mocha Does Not Support Your Footage . . . . . . . . . . . . . . . . . . . 425
8
Command Line. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
Environment Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
Checking and Setting Environment Variables . . . . . . . . . . . . . . . . . . . . . . . . . . 430
Path variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
Display Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
License Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
Installing Node-Locked Licenses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
Node-locked Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
Installing Floating Licenses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
Floating licenses - How it works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
How do I Install the Floating License Server? . . . . . . . . . . . . . . . . . . . . . . . . . . 442
Installing Floating Licenses with Online Activation . . . . . . . . . . . . . . . . . . . . . . 442
How do I point to the server license using an Environment Variable?. . . . . . . 447
Troubleshooting Floating Licenses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
Installing Render Licenses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
Render Floating Licenses vs Interactive Floating Licenses . . . . . . . . . . . . . . . 450
Installing Render Floating Licenses. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
File Management for Rendering on a Network . . . . . . . . . . . . . . . . . . . . . . . . . 452
Troubleshooting Mocha issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
Common Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
Common problems encountered when working with Mocha . . . . . . . . . . . . . . 456
Third Party Open Source and Commercial Licenses Used by Mocha . . . . . . . . . 458
Qt 5.15.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
OpenColorIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
OpenSSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
libpng. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468
libjpeg. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
PySide2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
FBX SDK. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
OpenEXR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
R3D SDK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
FreeType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
libtiff. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
uuid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
9
libxml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
libz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480
GStreamer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
Alembic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493
Eigen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495
OpenCV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496
10
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.
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
11
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 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.
12
New in Mocha Pro 2024 v11.0.0
Camera Solve with Mocha and SynthEyes
The 3D Camera Solve Module in Mocha has been completely overhauled to take
advantage of the SynthEyes core solver and now allows you to view and
manipulate the results.
• Use Mocha Tracking for 3D Solves: Optionally use Mocha Planar tracking and
PowerMesh to assist difficult solves
• Roto out problems: Use Mocha masking to eliminate problem areas that throw
off your Camera solves
• Camera and scene controls: Modify the solved results to fit your project
• USD Import: Import 3D models to visualise draft results overlaid on your scene
• More flexible 3D Export: Export USD and FBX to supported systems. Export
nulls to After Effects.
• Hold keyframes: Set linear or constant keyframes for more control over
stepped motion
13
from previous frames
Performance Improvements
• Insert Optimisation: Insert Module is now optimised to render up to 15x faster
• Switch Resolution from Plug-In dialog: Full resolution switching options when
opening Mocha in After Effects
Architecture Updates
• OpenEXR 3.1.11
• Alembic 1.8.6
• OCIO 2.2.1.1
14
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.
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
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
The Panel contains the following features (from top to bottom):
1. Translation
2. Scale
3. Rotation
5. Perspective
Track Buttons
Link to Track
Surface
• 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
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.
18
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.
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
Save Project: Save the project
20
Add Magnetic Shape Selected to Layer: Add a new
magnetic line that converts to an X-Spline in the
existing layer.
Create New Freehand Layer: Draw a freehand line
that converts to an X-Spline.
21
Create Ellipse Bezier-Spline Layer: Draw a new Ellipse
B-Spline layer. Double-click to create an Ellipse in the
middle of the view.
Add Ellipse Bezier-Spline to Layer: Draw a Ellipse B-
spline that is added to the current spline layer.
Double-click to create an Ellipse in the middle of the
view.
Attach Layer: Used to select a point and drag-lock it
to another layer spline point. Useful for lining up
individual splines.
Rotate: Rotate selection around the axis of the point
you click in the viewer
22
Selection Falloff: Toggles the radial selection falloff
for the current point. Works for spline points and
mesh points (when in Edit Mesh mode).
Measure Distance: Turns on the distance
measurement tool for 3D solved features in the
Camera Solve module.
Basic Toolbar
In Essentials Mode, only a basic set of these tools is shown, to simplify the
interface.
23
Add Bezier-Spline to Layer: Draw a B-spline that is
added to the current spline layer.
24
Add Ellipse X-Spline to Layer: Draw an Ellipse X-spline
that is added to the current spline layer. Double-click
to create an Ellipse in the middle of the view.
Create Ellipse Bezier-Spline Layer: Draw a new Ellipse
B-Spline layer. Double-click to create an Ellipse in the
middle of the view.
Add Ellipse Bezier-Spline to Layer: Draw a Ellipse B-
spline that is added to the current spline layer.
Double-click to create an Ellipse in the middle of the
view.
Show Planar Surface: Toggles the planar surface view
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.
25
Proxy Scale: Adjust the resolution of the footage for
performance (Mocha Standalone only)
26
Show Zoom Window: Toggles the Zoom window
27
Viewer Preferences: Adjustments dialog for
parameters such as grid lines and trace frames. Also
controls for viewer OCIO colourspaces.
The timeline controls cover frame range, playback, tracking controls and key-
framing.
28
Zoom Timeline to full frame range:
Resets the timeline scale to the full
range of frames
Play Controls: Controls for playing back
and forth and moving one frame at a
time. T buttons skip to the end of the
track.
Change Playback Mode: Toggles tri-
state button between Play once, Loop
and Bounce playback modes.
Tracking Controls: Controls for tracking
back and forth and tracking one frame
at a time.
Go to Previous Keyframe: Jump to the
previous keyframe set in the timeline for
that layer
Go to Next Keyframe: Jump to the next
keyframe set in the timeline for that
layer
Add New Keyframe: Add a new
keyframe at the current position for the
selected layer. This only appears if you
are not hovering over an existing
keyframe.
Delete New Keyframe: Deletes the
keyframe at the current position for the
selected layer. This only appears if you
are hovering over a keyframe.
Delete All Keyframes: Deletes all
keyframes on the timeline for the
selected layer
Delete All Forward Keyframes: Deletes
all keyframes on the timeline forward
from the playhead for the selected layer
29
Delete All Backward Keyframes: Deletes
all keyframes on the timeline backward
from the playhead for the selected layer
Autokey: Toggles automatic key
insertion when moving points or
adjusting parameters
Überkey: Toggles the Überkey, which
modifies all keys in the layer relative to
the key you are now on.
Layer Controls
The top left hand panel contains the tools to manage layers.
30
Layer Icons:
31
Layer Actions dropdown:
32
Group Layer: Groups the currently
selected layers. If no layers are
selected, creates an empty group.
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
• Set In/Out to Tracked Region: Sets the in/out range of the layer to the tracked
frames
• 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
• Matte Clip: Replaces the current layer splines with a matte clip.
• Link to Track: Which layer track to link your layer splines to. Can also be set to
33
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.
34
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.
35
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.
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.
• Active: If you have an active shutter monitor available, you can view in this
mode (Note: Only tested on Windows)
36
• Anaglyph: Probably the most common mode to view stereo work through. You
can choose from Red/Cyan or Green/Magenta
• Difference: A difference mode of the views laid over each other. This view also
has additional functionality explained below
Both these buttons and their uses are covered in the Stereo Tracking and Stereo
Roto sections of the User Guide.
37
Using the Mocha Pro Plugins
In Mocha Pro 2019 and above, the Mocha VR plugin is as a legacy
plugin. This is because all Mocha VR features are now inside Mocha
Pro.
The Mocha VR category is maintained for compatibility with Mocha
VR V5 plugin projects.
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
38
The first 4 Views options are for non-360 footage:
• 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.
39
used, Mocha will split the footage exactly in half horizontally and use the Top
and Bottom halves for each eye. The output to the host 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.
40
The general workflow for the Mocha Adobe Plugin is as follows:
1. Select any additional source layers you want to use inside Mocha
41
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.
42
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: 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.
• 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.
43
Controlling Module Renders
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.
• 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.
44
See Using Mocha for 360 workflow for more on how to use the VR Lens controls.
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.
45
Then choose ether the name or the cog of the layer you want to read tracking
data from in the dialog that appears.
If you only have one layer in your Mocha project, Create Track
Data will automatically create the data from the layer. There is no
need to pick a layer.
Once you click 'OK', the plugin will generate keyframes to populate the tracking
46
parameters in the plugin. You can then use this data to copy to other layers, or link
via expressions.
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
47
2. Select "Create Nulls…" under the PowerMesh section of the Adobe Mocha Pro
Plugin interface
4. Click OK
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.
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
48
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 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
49
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.
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
50
back to the host.
• 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.
51
Applying the Mocha Plugin for Avid Media Composer
Due to extensive frame access by the Mocha plugin, it is
recommended that you use Avid storage media (i.e. DNxHD) when
working, rather than linked files.
(Use of linked files which use codecs such as H.264 will
significantly slow down render time as such media is not designed
for random access.)
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.
52
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.
53
• 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.
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.
54
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. Choose from the current layer or below the current video
track.
• 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.
55
Processing larger frame sizes and more complex rendering in
Mocha may take a long time per frame.
When a frame render exceeds a certain interval in Media
Composer, a BlipPlayer error can occur.
If you see this message, you should render the effect prior to
playing back, or preview the render inside the Mocha UI before
rendering back on the timeline.
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.
Your Insert should then appear inside the layer where you have placed your
surface.
56
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!
To get full use of the Mocha Pro plugin, we recommend using it as a batch effect.
57
2. Drag a new OpenFX plugin into the Batch FX graph
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.
58
Adding the Mocha Plugin inside Blackmagic Design
Fusion Studio
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.
59
Adding the Mocha Plugin inside The Foundry Nuke
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):
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.
60
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.
The Mocha Pro OFX plugin can generate tracking data from a layer’s surface
directly in the plugin interface.
This data can either be linked to other nodes via expressions, or be used in
conjunction with the Data Export tab.
To generate data:
61
3. Twirl down the Tracking Data section of the OFX plugin interface.
5. If you have more than one layer in the Mocha project, a layer chooser dialog
will appear to select the layer you want to create the data from. Otherwise it
will generate automatically.
This then populates the 4 sets of fields with keyframes. Each x/y field
corresponds to the corner position of the surface of the selected Mocha layer.
The Nuke OFX plugin has addtional export options to create tracking nodes
directly in the node graph.
3. Click the Data Export tab in the Mocha Pro plugin interface
◦ Tracker node
◦ CornerPin2D node
◦ Linked: This links the data to the Mocha Pro project data. If you update the
surface in Mocha Pro, the linked data will also update when you regenerate
the data.
◦ Baked: This bakes the keyframes so the node can operate independently of
Mocha.
6. If you have more than one layer in the Mocha project, a layer chooser dialog
will appear to selec the layer you want to create the data from. Otherwise it will
generate automatically.
62
You can of course still export directly via the Mocha Pro interface if you prefer.
See Exporting Tracks to Nuke.
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.
63
Linear Workflow
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.
• Track FX: Click the effect icon on the appropriate video track and then select
the Mocha effect and click OK.
64
Once loaded, you can begin with the 'Launch Mocha UI' button at the top of the
effect panel.
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…'
65
3. Select the Mocha effect and click OK
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.
If you don’t want to use the matte rendering to apply mattes from Mocha, you can
click the Create Masks… button to generate a Bezier masking effect in VEGAS.
This will take the spline layers inside the Mocha project and convert them to
native bezier masks.
The masks generated are determined by either what layers you have visible in the
Mocha project,
or you can select to export all of them by choosing "All" from the Visible
Layers dropdown.
66
VEGAS Bezier Masking limitations
Currently, the Bezier Mask effect in VEGAS has a limit of 5 Masks
per effect. This means that if you have more than 5 splines or
contours in your Mocha project
and then generate masks, only the first 5 masks will be created and
the rest will be ignored.
If you do have more than 5 masks in your Mocha project is best to
turn on the Mocha Pro built-in "Apply Matte" to render the matte
instead.
If you have a tracked layer in Mocha you can see the output of its surface back in
the VEGAS 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.
Then choose the layer you want to read tracking data from in the dialog that
appears. You can only choose one layer at a time.
67
Once you click OK, the plugin will generate keyframes to populate the tracking
parameters in the plugin. You can then use this data to generate tracked PiP
effects on other clips.
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.
If you are planning to insert media on top of your tracked source footage, it’s
recommended the insert media is placed above the source clip in the timeline.
2. Click 'Apply Export…'. This will open the native Motion Tracking dialog in
VEGAS
3. Select the bottom right arrow in the Motion Tracking dialog. This will show your
available clips to apply the tracking data to.
68
4. Select the clip from the dropdown that you want to apply the tracking data to,
and select "VEGAS Picture in Picture"
2. Click 'Apply Export…'. This will open the native Motion Tracking dialog in
VEGAS
3. Select and hold the Motion Track Transfer button in the Motion Tracking
dialog. This will change your cursor to a pick tool.
69
4. Still holding down the left mouse button, drag the cursor to the clip on your
timeline that you want to apply the tracking data to, and select "VEGAS Picture
in Picture"
Both these approaches will generate a new Picture in Picture (PiP) effect on the
target clip.
70
If your inserted clip media looks squeezed or out of shape, this is most likely
because of the default settings in the Event FX Pan/Crop tool.
71
You need to change the following settings in Pan/Crop:
72
Basic workflow for the Mocha OFX Plugin
One your source clip is hooked up to you Mocha Pro Effect, the general workflow
for the Mocha OFX Plugin is as follows:
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
can be applied to the plugin.
Plugin interface examples below use the Nuke UI.
73
Using the Mocha GUI
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.
74
• 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.
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.
75
Rendering Insert Layers
You can use secondary clips in the host application to render tracked inserts into
your shots.
See the User Guide Chapter on the Insert Module for more details on manipulating
and warping inserts.
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
Your Insert should then appear inside the layer where you have placed your
76
surface.
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:
You can also adjust the Insert Blend Mode and the Insert Opacity from the plugin
interface without needing to go back into Mocha:
• Insert Opacity: Overrides the default insert opacity set inside the Mocha
project.
77
You can either turn Alpha off entirely by toggling off the button, or choose from
one of the following options:
• 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.
78
Some OFX hosts handle stereo support differently. See your
specific host notes in this chapter for instructions. Especially Nuke
and VEGAS.
• 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.
79
Basic workflow for the Mocha Plugin in HitFilm
Once your layer is hooked up to your Mocha Effect, the general workflow for the
Mocha Plugin is as follows:
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"
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.
80
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.
• 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.
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.
81
Loading Projects containing the Mocha VR Plugin
When you load a project that contains the old Mocha VR plugin, you will notice
that Mocha VR is labelled as "Legacy".
This is because all Mocha VR features have been rolled into Mocha Pro and a
Mocha VR plugin stub is kept to avoid breaking compatibility with your old
projects.
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.
82
Starting a New Project
Workflow inside Mocha
Mocha workflow is designed around a project structure. It is good practice to only
work on one shot per project file to minimize layer management and to keep the
work streamlined.
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
83
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.
84
85
Name
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.
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
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
86
New Project dialog. If you don’t set them correctly, you cannot modify them and
will have to restart the project.
Remove Pulldown
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 Options
The color options help you set up the default OCIO config for the project.
• OCIO config: Here you can change the OCIO config or reset back to the
default.
• Working Color Space: The color space or Role you want to work with
87
• 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.
88
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.
89
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:
1. Apply the Mocha Pro effect to your layer or footage track
90
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
91
the Mocha PixelChooser and it applies any visible layers as mattes back to the
effect.
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.
92
Tips for New Projects
Only import as much as you need
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.
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!
93
Merging and Importing Projects
Merging Projects [Mocha Pro]
If you are working on a large roto project you will sometimes need to have more
than one person working on the same shot.
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
94
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.
95
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.
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.
96
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.
97
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.
98
with the screen below.
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
99
them more curved. Right clicking a handle will adjust all the handles in the
spline at once.
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.
100
4. By turning on the Mattes button under View Controls you can see the area that
will be tracked.
101
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:
102
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.
Input Clip
This is the clip you are going to track. By default it is the one currently in the
viewer.
103
Preprocessing [Mocha Pro Only]
This button opens the Preprocessing panel, which has controls for applying non-
destructive clip processing for better tracking results:
• Blur: Blurs the source clip. Useful when there is heavy interference like snow,
heavy rain, etc.
• Sharpen: Sharpens the source clip. Useful when there is low detail in the
image.
• Contrast: Contrasts the source clip. Good for low-detail (or low contrast)
images
• Gamma: Increases the gamma in the image. Note this differs from the gamma
view control which does’t affect the clip.
• Denoise: Reduces noise in the image. Especially useful for very noisy images.
• Remove Flicker: Balances flickering footage. This requires using the Reference
Frame button
• Set Reference Frame: Used with Remove Flicker above. This defines the
Reference frame to take the luminance levels to adjust to.
• Apply to All: Applies the same preprocessing to all layers. If this is off, the
preprocessing only happens to the current layer.
104
We recommend trying to track the shot before attempting
preprocessing. The planar tracker is very robust and will often track
through many problem areas.
Input Channel
When tracking, Mocha looks at contrast for detail. The input channel determines
where to look for that contrast.
• Luminance looks for contrast in the light and dark of the image
• 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.
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:
105
• Translation: The position of the object
• Mesh (Mocha Pro Only): Movement within the overall plane, such as distortion,
warp etc.
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.
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.
• Extrapolate Track: Create tracking data based on the motion of the previously
tracked keys. This is useful for filling in with estimated motion when you do not
have a trackable area or your layer is going off the edge of the image.
• Existing Planar Data (Mocha Pro Only): This is only used when you want to add
Mesh tracking to an existing planar track.
106
Extrapolate Track is an estimate only based on the motion of the
previous tracked keys. You need existing tracked data in order to
use Extrapolate Track effectively.
Frames
This subtab is for handling frames you need to skip over due to problems, or to
step at regular intervals.
Step
The Step field lets you define what frame interval to track with, with the first
frame always being tracked as a starting point.
The default is 1, which will track every frame. A value 2 will only track every
second frame after the first frame, a value of 3 will only track every third frame
and so on.
For those working with stepped or stop motion, you may also want to set your
keyframes to constant.
See Keyframe Controls for more information about setting the keyframe type from
Linear to Constant.
Skip
The Skip field will let you skip frames or ranges of frames entirely. This is helpful if
there is bad or untrackable data on some frames.
• Entering a value of 5 for example will skip over frame 5 when tracking.
Skipped and stepped frames will leave empty tracking data keys on
those frames. Motion will be interpolated between the gaps.
Search Area
107
• 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.
If you want to see the extent of the horizontal and vertical search area, you can
turn on a matte to view the boundaries.
1. Press and hold the Show Layer Mattes button in the View Controls or select
View | Mattes from the menu
3. If the matte view is not already on, click the Show Layer Mattes button to
turn on matte view.
You should now see an area around the spline that represents the extent to which
Mocha will look for the object in the next frame.
The Selected Search Area view is a visual guide only and has
no impact on track mattes or roto.
Track the plane selected by pressing the Track Forwards button on the right-hand
side of the transport controls section.
108
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.
109
• 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.
The Surface and Grid have no keyframes; they are simply guides
that let you check the accuracy of your track. Note that the
position of the Surface WILL affect the exported tracking data, so
you MUST position the corners of the Surface before exporting
tracking data.
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.
110
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.
111
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 and scale of the grid by adjusting the values in View |
Viewer Preferences:
The grid overlay can give you a quick representation of the accuracy of the track.
112
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.
113
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.
You can modify aspects of the surface by right-clicking anywhere on the edges or
the centre point.
114
• Set Ratio: This submenu allows setting of predefined ratios or custom ratios:
◦ Source: Sets the current surface to the same ratio as the source footage
◦ Insert: Sets the current surface to the same ratio as the insert clip
◦ 16:9, 4:3, 2:1: Sets the surface to these commonly used ratio types
◦ Custom…: This brings up an entry field so you can define your own ratio,
either in dot format (e.g 1.4) or colon format (eg. 16:9)
• Align: This is the same control as the Align Surface tool button in the Toolbar. It
will set the size of the surface to fit the dimensions of the tracked footage.
• Hide: Hides the surface. To turn it back on you will need to toggle the view
from the toolbar.
• Reset: Resets the surface back to the dimensions of the spline area. If more
than one spline exists in the layer, it will reset to the collective area of all
splines.
• Hide Insert: Hides the insert clip inside the Surface without turning off Preview.
Toggle to turn the insert back on.
115
However if you’d prefer to delete keyframes you have multiple methods.
You can use the clearing buttons on the righthand side of the timeline to delete
keyframes as a batch.
All keyframes on the Mocha timeline are contextual, i.e. what you select in Mocha
updates the timeline to show the keyframes for that selection.
For example, if you have a spline selected, Mocha will show the spline keyframes.
If you select a keyframable parameter, it will show those keyframes and so on.
For tracking, the keys are hidden unless you expose them using the Manual radio
button in the Motion section of the tracking parameters.
1. Click on the Manual radio button in the Motion section of the track parameters
2. Position your playhead where you want to clear the keys (If you are clearing all
keys you don’t need to do this)
4. Click the Large Motion radio button to take the tracking out of Manual mode
again.
If you don’t want to make a keyframe for the Motion selection, turn
on the Uberey button before you switch modes.
116
Clear from the Dopesheet
The alternative method for clearing keys is to open the dopedheet and delete the
keys from there.
5. Select all group level keys (these are the hollow keys) of the track section you
want to delete
You will see the blue section of the keys you deleted clear in the timeline.
Importing Mattes
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.
Merging Tracks
Sometimes when you’re dealing with a difficult shot it’s easier to break the
tracking into multiple layers.
If you want to combine these tracks together you can do so with the Merge
Layer Tracks option.
Merge Layer Tracks appears as a button under the layer controls, but is also
available as a menu option under the Edit menu and the Actions menu.
117
Track merging creates a new layer with the merged keys.
This happens in a top-to-bottom priority, meaning that tracking keys in the
topmost layer of the selection will always be copied,
then the next layer will merge any keys that should fill gaps missing from the
previous layer and so on until all layers are merged.
1. Select the layers you want to merge. The layer tracks should be on areas with
similar planar movement, especially if merging perspective or shear tracks.
Keyframe Controls
If you want to change the way keyframing is handled in the project, you need to
adjust the keyframe controls.
Keyframe By
This dropdown controls how keyframes are handled when animating splines:
• Points: Keyframe only the current point you are moving in the spline.
118
The recommended default is "Spline" as this keyframes all points when you
manipulate any point on a spline.
This makes it much easier to keep track of where in time you have animated the
layer.
When working on certain shots, especially with stop motion animation, you may
not want motion to transition smoothly between keyframes.
• Constant: Do not interpolate between keys and hold the motion until the next
keyframe.
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.
119
Draw more shapes
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 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.
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.
120
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.
121
PowerMesh and Mesh Tracking
PowerMesh is designed to help track non-planar surfaces. This is for both rigid
and non-rigid surfaces that would otherwise be impossible to track with a regular
planar tracker.
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
To track a mesh, you first need to generate one.
122
An initial Mesh is generated.
Then you can refine your PowerMesh with the following parameters.
123
Generation Mode
• 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.
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.
124
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.
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
125
• If the region doesn’t have much perspective shift, use Shear.
• 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
• 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”.
126
For example:
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.
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)
127
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)
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
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.
128
Using Mesh Falloff to Adjust Clusters of Points
Normally adjusting Mesh points is done by moving selections of vertices or
carefully moving individual ones.
An alternative approach is to use the falloff tool to move areas of vertices in a
Mesh all at once with a gradient of strength.
With the Edit Track Mesh tool active, you can click the falloff icon to activate
the Mesh selection radius.
In order to use Mesh falloff, you must have Edit Track Mesh
selected, otherwise falloff will only affect splines.
• Strength Adjusts the strength of the falloff. At 100% all points within the radius
are moved the same amount as the selected point.
You can use Ctrl/CMD and Left-Dragging to adjust the size of the Radius.
Similarly, you can adjust the strength by holding Ctrl/CMD+Shift and Left-
Dragging.
Adjustments are visualised by a red gradient, but this turns off while using the tool
on Mesh points.
129
Exporting Meshes or Mesh Warped Splines
Using PowerMesh, you can export:
• 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.
130
Stereo Tracking
Please note that stereo features is only available in Mocha Pro
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.
2. Draw your shape as you would normally in mono mode (See Mocha User Guide
for an introduction to mono Mocha tracking techniques)
3. Make sure the "Track in all views" button on the right side of the tracking
buttons is switched off.
131
4. Select your tracking parameters as normal
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
132
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.
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.
133
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.
134
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.
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”
Note that the Transform selection works in a similar way 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
135
then adjust the reference points (see below).
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.
136
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.
Right-clicking a point selects all points or you can shift-click individual points and
can move them as one.
Take note of the Transform type when moving points, as the Transform type
affects how points adjust the track.
By default, for your initial set of points, each point adjustment sets a key frame for
every other point in the shot to avoid unwanted distortions.
137
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.
An adjustment point only affects the track within the bounds of its
own keyframes. Outside that keyframe range it stops adjusting the
track. See Adjustment Point Lifespan
You can then keep adjusting the points over the timeline until all drift is corrected.
You’ll notice as you make keyframes for your points that they have different arrow
symbols in the viewer. These help you determine what points have been
keyframed and if there are other keyframes in the timeline for that point.
If there are point keyframes to the left, right or both sides of the current frame,
arrows will appear to indicate the direction they are in.
138
Reference Point with Keyframes: A reference frame
that has adjustment keyframes. Arrows will point in
the direction keyframing has been done on the
timeline. If there are keyframes on either side of the
reference frame, there will be arrows on both sides.
You can add as many points as you like to an adjustment over time. Each
keyframed point contributes to the adjustment on that frame.
A point can be moved to contribute to the current adjustment, but that point’s
adjustments are only valid between those keyframes.
Any additional keyframes you add to a point further in time forward or backward
139
from the reference point will contribute to the overall adjustment.
What this means is you can add new points further along the timeline that can
create adjustments that won’t be affected by the other points.
The point below has a reference point at frame 571 and an adjustment
keyframe at 610. This point only affects the track adjustment between these
keyframes:
Also note the extra bracket on the arrow on the adjustment point. This tells us
we’re currently in the contributing keyframe range of the point.
When you want to add a new point to continue the adjustment, you can create
one at the keyframed boundaries of the old point:
140
3. Place the new point at a clear feature location. It will then become a new
starting reference point.
5. You will will then want to keyframe points separately to avoid keyframing the
old point. See "Keyframing with a New Point" below.
By default, all AdjustTrack points are keyframed at the same time with the
"Keyframe All Points" option:
When adjusting new points in a different keyframe range you will want to turn off
"Keyframe All Points" or use the Alt+CMD/Ctrl shortcut when altering points.
This is important, because continuing to keyframe all points will make the old
points still affect the adjustment at that frame in the timeline.
141
4. Repeat for any points still contributing to the adjustment
5. Do NOT keyframe the old point. Keyframing an obscured or out of frame point
will re-add its position to the adjustment
We recommend locking points when you are no longer using it in the current
adjustment range. See Locking Points below.
142
Example 2. Adding and adjusting new points
In this example, the point in the bottom corner is about to go off screen. It’s
last adjustment keyframe is on frame 276:
We can create a new reference point at this frame to keep adjusting when the
old point goes offscreen. Note that this is on the same frame (276):
Further along the timeline, the old point is now out of the screen, but we can
keyframe the new reference point, making sure we’ve turned off "Keyframe All
Points":
143
We then adjust any other point we still want to contribute to the adjustment,
adding a keyframe for those points. Note the specific keyframing arrow that
tells us it’s contributing.
Selecting the old point that is outside the view, we can see it doesn’t have a
keyframe on this frame, and so it is not in the adjustment range:
144
Locking Points
To avoid keyframing reference points by accident, you can lock a point by using
the lock icon in the interface:
When a keyframe is locked, it turns grey in the viewer. It can still be selected, but
you can no longer keyframe or move the point until you unlock it again.
145
To unlock a point, just select it and click the lock icon again.
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.
146
Nudge
Nudging is used to adjust the track by pixel increments. This helps when
adjustments are too subtle to be done by mouse movement.
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
147
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.
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.
148
Reference Points
Once you select the Classic AdjustTrack tab, a key frame with four reference
points is created.
149
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.
150
given reference point. For best results keep reference points away from one
another.
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.
151
The green lines indicate that this reference point position is a good choice.
152
AdjustTrack with More than Four Reference Points
Often there are times where your reference points are either obscured or exit
frame. In AdjustTrack you have the ability to create multiple reference points per
surface corner that can be positioned in alternate locations to handle these
situations. Simply click the New Ref button to create a new reference point for the
selected corner.
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.
153
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, 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.
154
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.
155
You may set a new Primary Reference Frame for all active points by hitting the Set
Primary All button.
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.
156
Reference point is encountered.
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 Classic 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.
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).
157
Tips for AdjustTrack
Adjust frames at the peak of drift
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.
158
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.
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
159
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.
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
You can use the Shape tools to quickly draw around objects in your view:
• Ellipse: Select the tool and draw to size, or double-click to automatically create
160
an Ellipse.
Holding the Shift key and double-clicking will make a uniform shape. In the case of
Rectangles it will make a square, and for Ellipses a circle.
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.
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.
161
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.
Your newly created roto spline will now follow the motion of the linked track.
162
5. Refine your roto
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.
• The pointer tool with the 'B' will move both the inner and outer spline point (‘B'
= ‘Both')
163
• 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 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.
The Edge Offset buttons cover three different approaches to manipulating the
edges:
• Outer Edge (Default): Moves the outer edge feather in and out. You can also
set this to a specific pixel width. This will not reduce below zero to avoid
inverted feathering.
• Inner Edge: Moves the inner edge up to the outer edge or towards the centre
of the spline.
• Both: Scales both the inner and out edge inward or outward. This is useful for
tightening up a matte or expanding edges for garbage mattes.
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
164
effectively.
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:
165
Turning On and Off Points
You can turn on and off individual points in a spline. When they are off, you can
still see the points, they can still be animated, but they are not contributing
mathematically to the spline. This allows you to have a complex spline only when
you need it, rather than having to deal with superfluous points in parts of the shot
when they are not needed.
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.
166
Add Motion Blur [Mocha Pro Only]
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).
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.
167
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.
Note that this can’t be keyframed and that these settings apply to the entire layer,
not to individual splines of the same layer.
168
Select the Matte button and you will see your rotoscoped object against a flat
background.
169
Colorize your Matte Overlay
When you have your Mattes turned on, you may choose for the matte to be filled
with a color instead of cutting out the object, using Colorize.
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.
1. Select your layer and turn on the Mattes button (Show Layer Mattes)
For points:
170
1. Right-click the spline
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.
171
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 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
With the selection tool active, you can click the falloff icon to activate the
172
selection radius.
• Strength Adjusts the strength of the falloff. At 100% all points within the radius
are moved the same amount as the selected point.
You can use Ctrl/CMD and Left-Dragging to adjust the size of the Radius.
Similarly, you can adjust the strength by holding Ctrl/CMD+Shift and Left-
Dragging.
Adjustments are visualised by a red gradient, but this turns off while using the tool
on points.
Any point on the line of control points near your selection that fall under the circle
will be affected.
To remedy this, you can split any selected points into a new layer and they will
173
retain the existing keyframes and tracking data.
To split a contour:
A few caveats:
• You can’t split off a shape using less than three points
• Similarly, you can’t split off a shape if the original shape will be left with less
than three points
• You can’t split from more than one contour at a time. If you want to split
multiple contours, just repeat the process for several selections.
Snapshot Duplicates
Some roto requires making copies of existing splines to continue a different part
of the work.
To make this easier, you can use Snapshot Duplicate to make an exact in-
place copy, which compiles both the keyframed position and tracked position into
a new untracked layer.
This will also keep the surface in the exact same spot for that frame to make it
easier to match corner pins or inserts.
To snapshot a layer:
174
A new layer will be created that exactly matches the position of the original layer
without any of the animation or tracking keys.
You can of course just copy splines or duplicate layers normally, but with these
methods you’re often left with more work to do to remove keyframes or readjust
splines into position.
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.
175
Rotoscoping with Magnetic and
Freehand Tools
The magnetic and freehand tools provide an easy way to quickly roto an object.
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.
176
(Image courtesy of LateNite Films)
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.
177
Finalising a Drawn Line
One you have completed a drawn line, you can either click back on the original
point, or right-click.
This will generate an X-Spline that follows the originally drawn line.
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.
178
If you want to increase or reduce this detail:
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.
To snap to an edge:
179
2. Press the 'Alt+S' key once to snap
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.
180
Painting Splines with the Area Brush
Tool
The Area Brush produces X-Splines based on paint strokes in the viewer canvas.
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.
181
Once done, you can turn off Quick Mask if it is on or just release the mouse button
and a spline will be generated.
182
Adjusting the size of the brush
You can adjust the brush size using either:
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 Fill Gap diameter of 1000 in a 1920x1080 image will close very large gaps.
A large fill gap setting is useful for quickly circling an object with paint to make a
filled spline.
183
Add Area Brush to Layer
The Add Area Brush will add new paint-generated splines to the selected layer.
The tool is under the main Area Brush icon. Just press and hold the toolbar icon to
select the brush from the list:
184
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:
185
Erase
In both Quick Mask mode and normal painting mode, you can hold down the
alt/option key to switch to erase mode.
186
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:
187
When you release, the erase will eat into the existing spline:
188
189
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.
190
If you insert additional points to a shape while in the non-Hero
view, they will be automatically deactivated in the Hero view to
avoid destroying the work done in the Hero view.
You can reactivate these points in the Hero view by right clicking
them and choosing "Point > Activate"
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.
191
6. Turn off Difference view and review your results on your Non-Hero view.
192
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.
193
Exporting Tracks to Adobe After Effects
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.
To export tracking data to After Effects, press the Export Tracking Data button.
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
194
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).
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
195
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.
2. Open the Precomp you just made and fit the layer to the composition
dimensions (Layer | Transform | Fit to Comp).
196
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.
197
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.
198
for match move tasks.
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:
199
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:
1. Feed an the insert image and the previously created tracker node into a
Transform node:
200
3. You can then use a 'Composite' or 'Math Composite' to combine the corner
pinned image over the top of the background image:
201
4. And adjust the corner pin settings to fit the background:
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.
The distort option exports the 4 point x, y information from either the adjusted
202
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.
203
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
204
(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
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.
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".
205
Then take the following steps to insert your footage:
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.
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.
206
The layer lines up on the first frame, but then it drifts
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.
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:
207
In the File menu, select ‘Add script'.
Navigate to the Shake script file you exported and select it.
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.
208
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.
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.
209
Exporting tracks to Mistika
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.
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.
210
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'.
211
Exporting to Nuke 7 Tracker Node
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.
212
Exporting to Nuke Mesh Tracker node
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.
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.
You can also export linked or baked tracks directly from the Mocha Pro OFX plugin
interface in Nuke. See The Data Export Tab for more details.
213
Exporting Tracks to Blackmagic Fusion
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.
214
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.
215
Exporting Flame Axis data
Currently Mocha can only export Flame Axis tracking data via the Gmask Tracer
node.
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).
You should then see the axis in the Flame viewer output.
You can now wotk with the Axis nodes via the Gmask Schematic:
216
Exporting IFFFSE Tracking Data
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.
217
Importing into Combustion
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.
218
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.
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.
219
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.
220
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
221
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.
222
Exporting Tracks to SGO Mistika
The Mistika export format provides 4 corner pin track points.
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 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
4. You may have to delete an errant 'T0' tracker that Mistika adds by default.
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.
4. Choose the type of data you wish to apply in Apply To. Note, you will have to
have more than one tracker selected to use Rotation and Size.
5. In Apply, select the type of move you wish to do, eg. Move for matchmoves or
223
Stabilize for stabilization.
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.
224
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 Avid DS 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.
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:
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.
225
Exporting Tracks to HitFilm
You can export HitFilm transform and corner pin data directly to a HitFilm
Composite Shot file.
2. Choose HitFilm Corner Pin [supports motion blur] or HitFilm Transform Data
[postion, scale and rotation]
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
226
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:
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:
227
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:
2. If there is a warning about no camera rig, click the green "Create Rig" or "Set
Active Rig" according to your needs
228
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.
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
Exporting to Alembic
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.
229
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.
• Nuke
• Flame
• Fusion
• HitFilm
• Cinema 4D
• Maya
• 3ds Max
• Blender
And so on.
2. Select the "Export Track…" option in the Track module or the File menu
230
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.
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.
231
Importing Alembic Meshes to Fusion
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:
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.
232
Importing Alembic Meshes to Cinema4D
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).
233
Exporting Mattes and Clips
Some export formats listed below are not available for Mocha
HitFilm or Mocha AE. For a full comparison of features, please refer
to the comparison chart online.
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.
234
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.
235
• File Format: A list of available image formats to render to.
• 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:
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.
236
c. By layer ID: A special use case for those that want the mattes to be colored
by their layer ID.
b. To single footage stream: Renders all views to a single file. You are limited
to rendering to EXR or SXR.
237
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.
238
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.
239
In Mocha V5 onwards we changed the shape export for After
Effects to remove key padding. This means you must now paste to
the same frame in After Effects as the project in point in Mocha,
rather than the beginning of the clip.
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.
240
Exporting Adobe Premiere Pro CC Masks
Exporting shapes to Adobe Premiere Pro CC is very similar to exporting shapes to
After Effects
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.
241
Exporting as Mocha shape for Final Cut
The Mocha shape plug-in will import the following data into Final Cut:
• 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
242
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.
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.
243
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
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.
244
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:
245
To import the mask data into Flame:
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:
246
Exporting Shake Rotosplines
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.
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.
247
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.
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.
248
To export shapes to Nuke:
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.
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.
249
Exporting Shape Data to Blackmagic Fusion Shapes
To export shape data to the Fusion shape format, click the Export Shape Data…
button in the Track module or from the File menu.
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:
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:
250
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:
2. If there is a warning about no camera rig, click the green "Create Rig" or "Set
Active Rig" according to your needs
251
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:
252
however now you can choose the view you want to export.
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
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.
253
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
254
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.
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:
255
See the Video Files in Preferences chapter for more on clip exports.
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.
256
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.
257
The Camera Solve Module
This section covers all Camera Solve features that are in Mocha
Pro.
Mocha HitFilm users do not have access to this version. See Mocha
User Guides in HitFilm for more details.
Overview
The Camera Solve module integrates Mocha Planar and PowerMesh tracking with
Boris FX SynthEyes to solve cameras in 3D.
258
1. Track any parts of the footage you want to get accurate placement using the
planar tracker (Optional)
2. Track any parts of the footage you want to have static meshes using the
PowerMesh tracking (Optional)
3. Mask any part of the footage that may interfere with the track (Optional)
5. Define how many auto features you also want to track with
Unless you’re absolutely sure you’re dealing with a very long or complex shot, the
best starting point for any solve is to just click the Solve button and see what
happens!
The default settings will give you a good grounding in the shot.
If there are any obstructions in the shot that may cause a problem, you can first
mask them out.
Usually this doesn’t have to be very accurate, it just has to generally cover the
objects you don’t want to add to the solving process.
259
Good examples of items to mask will be:
• Any moving object that takes up a significant portion of the shot. Things like
actors that fill a large part of the frame or cars moving through the shot are
good examples of this.
• Any clusters of smaller moving objects that are high contrast that move
through the shot or hang around for the entire shot
• Very far areas like clouds or skylines that don’t contribute much to the overall
scene
Often you may not need a mask as the solver is very good at discarding what it
considers bad data, but if you’re not getting a good solve, masking is a good place
to start.
Step 2 - Track anything in the shot where you want focused data
You can use Mocha planar tracking anywhere you think will help solve or place
items in the shot.
260
Again, this is not absolutely necessary, but a good solid Mocha track can really
help out in tougher shots.
PowerMesh Tracking
You can also add PowerMesh tracking data for non-planar areas. Solving a shot
that contains PowerMesh tracking will attempt to convert the tracking
into a 3D Mesh. This is exportable to FBX and USD.
261
Step 3 - Set Camera Solve Parameters
Aside from the general clip properties, a 3D Camera solve requires some
additional information to be as accurate as possible.
See the Camera Solve Parameters section below for detailed explanations of each
of these parameters.
You also need to define what you want each 2D layer in your project to do.
In the layer controls in Camera Solve, there are two new columns:
• Processing Cog: Any layer with a Processing Cog icon will add that layer’s
tracking data to the solve process. If you don’t want to use a layer in the solve,
click the cog icon to turn this off.
262
• Masking: The other icon is the masking toggle. If you want a layer to mask any
areas during the 3D solve, click this icon.
Clicking an icon will toggle the other icon off. You can’t process and
mask with the same layer.
Step 4 - Solve!
Once you have defined your parameters you can now click the Solve button.
The solver has 3 main processes which you will see in the progress bar in the top
right corner:
1. Blipping: If you have auto features applied, the solver will go through the shot
looking for features, or "blips", ignoring any area you’ve set as masked
2. Peeling: The solver will attempt to make trackers from the blipped features
3. Solving: The solver will take the auto features and the data from Mocha and
attempt to solve the shot and generate a camera.
Depending on the length of the shot and how many trackers are defined, the
solving part of the process will usually take the longest.
If you’ve been waiting a long time during solving, you can review what the solver is
up to by clicking the Solve Output button.
Once the solve has finished, the 3D view will appear, looking through the solved
camera and showing the features along with a ground plane grid.
If you have chosen to track a PowerMesh it will also be in the scene as a 3D mesh,
but it is represented as individual vertices in the 3D Objects panel.
A graph will also appear in the Solve Data column, showing you the average
pixel error for the whole scene.
The focal length field will also update based on what the solver calculated.
263
A pixel error average below 1.0 is usually considered a good solve.
If you have anything above 1.5 you may want to consider adjusting
your parameters.
Step 5 - Adjust
Once you have solved the shot you can make adjustments to review the scene.
On the right hand side is the 3D Objects panel containing a list of all objects in the
solved shot.
You can consider these like the 3D equivalents of the Layer controls and Layer
Properties panels.
Selecting any feature will tell you its position in space. By default every feature
has a rotation of zero and a scale of 1.
264
The Scene Transform
At the top of the 3D objects panel you will see an object called Scene
Transform. This object is a parent of the entire scene and manipulating it will
transform all features and the camera.
This is very useful for quickly adjusting the position, rotation and scale of a scene
without affecting the solved camera or projection.
When you click Make origin or Align to Ground (see below) you are
manipulating the scene transform.
Make Origin
The Make Origin button is used to center the entire scene, including the camera,
around that point. The feature selected will be at the origin (0,0,0).
This will also set the Scene Transform pivot to the origin to make it easier to
rotate around the axis.
Aside from the ground plane grid leaping to this point, you shouldn’t see any other
change when looking through the Camera.
Align to Ground
When three or more features are selected, the Align to ground button will
become active.
This rotates the entire scene to fit the selected points to the ground plane. At
least 3 points are needed to make sure the angle of the rotation is adjusted across
all axis points.
Step 5 - Export
Once you are happy with the scene, you can export your shot to your preferred
package. See Exporting Camera Solves for more details.
265
Camera Solve Parameters
This section describes each parameter in the Camera Solve module parameters.
Like all Mocha modules, workflow for the Camera Solve is left to right.
Camera
This column covers the main solving buttons and the details of the physical
camera.
• Solve: This button starts the solve process based on the settings you have
chosen in parameters. Solving again will clear the previous solve.
• Clear Solve: If you have created a solved scene, you can use this button to
clear the solved data.
• Focal Length: A field for entering the known focal length. "Unknown" is
checked by default and will disable the field. This field is updated to the solved
focal length after solving.
• Film back: The horizontal and vertical film back of the camera, sometimes also
known as sensor size. The fields will alter each other to match the dimensions
of the clip if you modify a value.
3D Motion
This column defines the type of motion in the scene. Most of these options are
based on the SynthEyes equivalent.
266
• Motion Type: This dropdown has options for different types of camera motion:
◦ Normal Motion: The most common type of camera motion. In most cases
you will start with this.
◦ Low Detail: For shots with very little trackable detail, such as green screen
backgrounds.
• Zoom Lens: If the camera is using any lens zoom during the shot
• Corners: If there are any structural corners in the scene (buildings, windows,
bricks etc). This can be helpful for solving scenes in non-organic environments.
Features
This column defines the auto features to track alongside any tracks you have
made with layers.
267
• Use auto features: This will tell Mocha to use additional tracking features in the
shot. If this is off, it will only use planar tracks and PowerMesh tracks.
• Min tracker/frame: How many auto feature trackers to try looking for in each
frame of the shot
• Max tracker count: The maximum number of auto feature trackers to use in the
entire frame range
• Small blip size: The smallest size of features to look for in the shot (in pixels)
• Big blip size: The largest size of features to look for in the shot (in pixels)
Solve Data
This section displays solve results and options for exporting data.
• Solve Output: This button opens a dialog that displays messages from the
SynthEyes process. This output is useful for debugging problems in your solve.
• Average Error: The HPIX graph or "Average Error" of the entire scene. This
graph shows the average error on each frame, and the overall scene error. See
"Average Error" below for more details.
• Export Camera Data…: Opens the dialog to export camera data. See Exporting
Camera Solves for more details.
268
For more in-depth details about tracking and solving workflow in
SynthEyes, we recommend reading the SynthEyes manual.
Features
This is a broad term to describe individual 2D (x,y) points of interest tracked in the
scene. It can also be its 3D (x,y,z) equivalent after solving.
• A vertex in a PowerMesh
Blips
When the SynthEyes process creates auto features, the first phase is to look at
every frame and create blips by looking for interesting features and labeling them.
Inside Mocha, this is an invisible process and just part of the camera solve, but
you can refine the size of the blips to look for in the parameters.
Trackers
269
When a solve is complete, a graph under Solve Data will appear.
This is the Horizontal Pixel Error or (HPIX) graph, and represents the average pixel
error in the scene along with indicators for every frame.
• The actual 2D position in the image from the original tracked point
For example, if you have a corner of a planar tracked surface locked firmly to the
corner of a wall and the solved 3D point for that corner varies at all, the horizontal
pixel error is the difference between the 2D point and the 3D point.
The Average Error, listed under the graph is an average of all features for all
frames in the shot.
In general you should be aiming for an average error below 1 pixel. An error of 1-2
pixels isn’t terrible, but 0.9 or below is excellent.
In short, the bigger the error is, the worse the solution is.
For very high error features, Mocha will automatically remove the point during
clean up.
In some cases, Mocha will say it could not solve the shot. This is normally because
the pixel error was so high that all features were removed and a good solve could
not be reached.
If this occurs, we recommend either manually tracking a few areas with the planar
or PowerMesh tracker or adjusting the number of auto features and blipping sizes.
270
The main 3D view controls are (left to right):
• 3D: The toggle button for turning on the 3D viewer. When off, MOcha will show
the standard 2D view. Pressing and holding this button lets you select the view
(see below)
• 3D Ground Plane: The 3D grid that represents the ground plane. This turns on
by default when you first perform a solve.
If you press and hold the 3D button you are presented with different views:
• Camera (default): This view looks through the solved camera and displays a
projection of the footage so you can easily see results
• Orthogonal Views: Front, Back, Left, Right, Bottom and Top views show
orthogonal views of the scene for lining up your ground plane or preview
models.
271
Mouse navigation
While in Perspective view, you can move about the scene using standard camera
shortcuts:
• Middle Scroll Wheel will also dolly the view in and out
In the orthogonal views only Pan and Zoom will work. You cannot rotate them.
If you use the rotate shortcut while in Camera view, it will switch to Perspective
view.
Resetting 3D views
After working with the 3D viewer for a while, you may want to restore the views
back to a default position.
You can right click any view and select options to set the camera:
• Reset Camera: Resets the camera back to its default position for that view.
• Re-center Projection: This places the solved scene back to the center of the
viewer to make it easier to preview the shot
• Fit All: Fits all solved objects into the view, including the camera. This is
especially useful in the orthogonal views.
• Fit All: Fits all visible objects into the view, including the camera
• Fit Selected: Fits Fits all selected objects into the view
272
3D Objects and Properties
Once a scene is solved, the 3D Objects list will appear by default on the right.
• Scene Transform: The parent transform for the entire scene. Rotating, moving
or scaling the scene transform will apply those changes to the whole scene
non destructively.
• Layers: Any features that 2D Mocha layers contributed to the scene, including
planar tracks and PowerMesh tracks solved into 3D points or meshes
You can hide, lock or change the color of any selected object in the 3D objects
list.
273
• Position: View or change the X, Y or Z position of an object
• Uniform Scale: While this box is checked, changing any scale field will change
the value for all scale fields.
• Source: Change the source model for the selected File Asset. See Importing
Models below.
3D Alignment
Underneath 3D Object Properties is the Align panel:
This lets you manipulate the scene to line up with the ground or objects.
• Make Origin: Selecting any single feature and clicking this button will position
the whole scene to this point and make it the center of the scene (0,0,0).
This will also make the pivot of the Scene Transform position to this point to
make it easier to rotate.
Selecting more than one feature will disable the button.
• Align to Ground: Selecting 3 or more points and clicking this button will
attempt to rotate the entire scene to align to the ground plane based on your
selection.
You need at least 3 points for this to work to ensure alignment occurs on each
274
rotation axis.
Importing Models
You can import USD 3D models into Mocha via the file menu.
Go to File > Import > USD 3D Object… and select your model from the file
browser.
The model will then appear in the 3D Viewer and be listed under "File Assets" at
the bottom of the 3D Objects panel.
You will most likely need to scale and rotate the model after import as every
package is different.
Measuring Distance
To give a sense of scale, there is also the Measure Distance tool in the toolbar:
275
Clicking the measuring tape icon reveals a Distance field.
This field only becomes active when you select two points in the solved scene.
2. Select 2 points in your scene that you know (or estimate) the distance between
3. In the active Distance field next to the Measure tool, enter the known or
estimated value.
Entering the value, you should see no difference in the scene. This tool is simply
setting a scale for the whole scene based on your selected measurement.
You can see this if you select any other two points. They will now be scaled in the
distance field relative to your original measurement.
The measured distance setting will be applied to your export to more easily match
up with your unit scale.
If you’re not entirely sure what the correct distances are, your best bet is using
markers in your scene that would be a standard size.
For example, the width of roads, doors or windows in countries are usually a
standard size.
You can also use the approximate height of a person in the scene to get a rough
estimate.
276
Exporting Camera Solves
Importing Mocha Pro 3D camera solve data into After Effects
requires the Mocha Pro Adobe plugin or the "Mocha 3D Track
Importer". Go to https://borisfx.com/downloads to get the plugin.
• FilmBox (FBX)
The USD format is being quickly adopted by many hosts as a standard for
handling large sets of data.
Follow your target host’s import instructions for how to handle USD format
correctly as each one handles it slightly differently.
FilmBox (FBX)
The FBX format is a useful animation transfer format for camera data.
• FBX 7.7.0
The reason for a separate Nuke format is that Nuke interprets FBX axis directions
differently to other hosts.
We also use 7.7.0 specifically because we don’t need the additional properties in
current FBX formats to export point and camera data.
277
After Effects 3D Motion Data
This format utilises a custom After Effects plugin called the "Mocha 3D Track
Importer" that allows you to paste Mocha camera solve data directly to an AE
Comp.
You can download the plugin from the Boris FX website here: https://borisfx.com/
downloads
2. Inside the Mocha Camera Solve module, select the points you want to export
with the camera
4. Select After Effects 3D Motion Data from the dropdown in the Export
Camera Data dialog
5. Copy the data to the clipboard using the Copy to Clipboard button
6. Switch back to After Effects and in your Comp, go to Edit > Paste Mocha
camera
• The Camera
If you want all the points, expect to wait a little while After Effects generates the
relative nulls.
While you can now import FBX into HitFilm, we still offer the ability to import the
composite shots as well.
278
Exporting Camera Data
◦ If you choose FBX, USD or SynthEyes click Save and create a filename.
◦ You can then paste into After Effects using the "Paste Mocha camera"
option in the Edit menu, or import your USD or FBX data into the program of
your choice.
Export Options
Depending on the Export type, you will be presented with several options to
choose from.
• Export feature points: Export the features as well as the camera. This is on by
default
• Bake scene transform: Bakes the top-level parent transform used to modify
the entire scene into the individual points and camera. In After Effects exports,
baking is done by default.
Export points
For FBX and USD formats, this dropdown provides options for converting the
279
features in the scene to different types:
• Individual Meshes (USD Only): Export each feature point as a small inverted
pyramid, with the tip of the pyramid acting as the feature position.
This type is useful for easily seeing the points in the scene, especially if your
host is not suited to displaying nulls.
• Single Mesh: This will export PowerMeshes as mesh faces and any other
features as unclosed vertices in a single mesh. This also allows you to define a
UV reference frame (see below)
• Nulls: This will export features as null objects with transform data.
UV Ref Frame
The UV Reference frame field lets you define the planar UV texture reference
frame when exporting meshes via the Single Mesh option.
For example, if you plan to re-project your source image to the mesh on a certain
frame, you can define it here.
By default this will be the frame on which you created the mesh or last adjusted
the surface.
• All 2D Planar Tracks and PowerMesh tracks used to solve the scene in Mocha
• All 3D solve points and the camera from the final solve result.
• Any adjustments to the 3D data done in Mocha after the initial solve.
280
The Insert Module
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
281
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.
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.
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.
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.
282
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.
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.
283
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.
The same applies for the left and right edges of the frame with the left and right
number fields.
Comp
284
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.
285
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
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:
286
Adjusting the PowerMesh falloff to 0% tells Mocha to ignore the grid outside the
mesh boundaries, and pulls it back into place:
Reset
287
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
• Luminosity
• Difference
Opacity
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.
288
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 between 0 and 1, where the value 0 indicates no edge and 1
means that the edge covers the whole of the insert.
289
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.
290
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.
291
change this in the Project Settings.
• 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.
292
The Mega Plate Module
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.
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.
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.
293
1. Identify your foreground and background planes
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
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.
294
3. Make sure your layer order is correct
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
295
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 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.
296
Don’t make your layer TOO big! If there is a widely distorting
perspective track, the matte may become too distorted and Mega
Plates will not be able to build a full plate.
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
7. Render
Once your layers are ready and the parameters are set, click the render button.
297
This will generate a large plate either based on your own dimensions, or
autoscaled if you have set Autoscale on:
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
298
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:
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.
299
Mega Plate vs Mega Clean Plate - What is the
difference?
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").
300
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.
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.
301
build a plate or remove an 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.
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.
302
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.
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.
2. Click on the file Import… button to specify the file(s) you want to use. If they
are numbered in the same way as the input clip, they will be given
corresponding frame numbers. Otherwise, edit the Frame Number field for
each cleanplate to set up the correct frame number. The entries for two
cleanplates will look like this:
303
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 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
304
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.
• 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.
305
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
306
• 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.
3D Compensation
307
3D compensation can be switched on to try to remove artifacts due to the
background layer not being planar.
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
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.
308
Tips for Mega Plates
Some of the foreground object is still visible after using Remove Foreground.
• 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.
309
• 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.
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.
• 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.
310
Using Mega Clean Plates in the Remove
Module
Ultimately once you have created a Mega Clean Plate, it can be used as a single
clean plate for your scene.
This means you can paint on one large plate and then reference only this clean
plate in remove, by turning on "Use cleanplates exclusively".
3. Make any changes to the clean plate you need in your image editor
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
311
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
5. Precompose the mega plate and select the Leave All Attributes option
312
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.
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.
313
6. Import the mega plate to a new read node
7. Apply a Reformat node to the mega plate to fit to the project size, but set the
Resize type to "None"
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.
'''
314
The Remove Module
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.
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.
315
The Removal Process
Object removal requires a few simple steps to work correctly. The key to a good
remove is adequate, tracked background and a correctly masked foreground.
The only time you don’t need a tracked background is if you have a static (locked)
scene. See the Static Scene option for more details.
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 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.
316
In the example below, we have tracked and rotoscoped the sign and the door
frame, which would otherwise obscure the ground plane.
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.
317
4. Track your background plane
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.
318
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.
319
Removal can be a slow process depending on the resolution of the
footage and the amount of frames you are removing on. You can
optimize your search range (see Remove Parameters below) but
keep in mind that removal quality can vary.
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.
320
also cause artifacts when the removal is performed.
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.
321
Input Clip
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.
2. Click on the file Import… button to specify the file(s) you want to use. If they
are numbered in the same way as the input clip, they will be given
corresponding frame numbers. Otherwise, edit the Frame Number field for
each cleanplate to set up the correct frame number. The entries for two
cleanplates will look like this:
322
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 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
323
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.
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
324
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.
Static Scene
This checkbox tells Mocha there is no moving background behind the current
layer (for example a moving object in a locked shot), so it doesn’t require a
background layer to remove.
If you use the "Static Scene" checkbox, you don’t need to track a
background layer. This is the only scenario where a background
tracked layer is not required.
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.
325
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.
326
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.
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.
327
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.
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.
328
• 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.
• 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
removed.
• 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.
329
• 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.
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.
• 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.
'''
330
The Stabilize Module
Overview
This section only relates to Mocha Pro.
The Stabilize module is unsupported for 360 Equirectangular
footage in VR Mode. Use the Reorient module to stabilize 360
footage.
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 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
Input Tab
331
Range Tab
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.
332
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
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
333
Rotation
Stabilize rotation
Zoom
X Shear
Y Shear
X Perspective
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.
334
Warp Mapping parameters
2. Switch to Stabilize
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.
335
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.
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
336
6. Close and save the project
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:
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.
4. In the Mocha Pro Plug-In interface, select "Stabilize: Warp" from the Module
render drop down.
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.
337
5. If required, turn on "Apply Matte" in the Plug-In to isolate the region
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
338
Output' from "Auto" to "On":
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.
Overlay Images
Overlay images can either be transformed images (for example brand logos) set in
339
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.
When you want to make changes to the pixels of the whole stabilized sequence,
the Unwarp/Warp method can be helpful.
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.
3. Render a Warp of the modified result to restore back to the original motion.
In the Mocha Pro Plug-In most of this happens in the Plug-In interface.
340
2. Open the Mocha GUI
3. Track the area you want to stabilize using the Mesh option
7. In the plug-in interface, select "Stabilize: Unwarp" from the Module render drop
down.
8. Turn on the Render checkbox. If you scrub the timeline you should now see the
unwarp.
10. Precomp your existing layer and move all attributes into the new composition
12. In the plug-in interface for the pasted effect, select "Stabilize: Warp" from the
Module render drop down.
13. Either Turn on "Apply Matte" or use the "Use matte" option in the Warp
mapping to isolate the region
Now you can make any changes to the precomped version of the warp and it will
rewarp correctly in the parent composition.
3. Track the area you want to stabilize using the Mesh option
6. Turn on "Use Matte" if you want to matte out the render using the stabilized
mask
341
8. In the plug-in interface, select "Stabilize: Unwarp" from the Module render drop
down.
9. Turn on the Render checkbox. If you scrub the timeline you should now see the
unwarp.
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.
1. Track the area you want to stabilize using the Mesh option
4. Render forwards
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
342
10. Turn on Warp.
The modified clip should now warp back to the correct spot.
This tool helps automate removing the black edges you gain from the footage
being stabilize.
Center
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
343
The range of frames to look for possible fill frames.
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.
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.
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
344
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.
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.
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.
345
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.
346
The Lens Module
Overview
Some features in the Lens Module are not available in Mocha
HitFilm or Mocha AE and only relate to Mocha Pro (such as
rendering). For a full comparison of features, please refer to the
comparison chart online.
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
347
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).
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.
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).
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
348
Image (see Using Grid Images)
3. Draw splines to match the curved areas of the shot. With the "Use Layer
Splines" turn on, the splines will be open lines instead of closed shapes by
default
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 first step for working in 360 VR mode is define you are working in
Equirectangular space.
Mocha Pro can set this in the New Project dialog on standalone:
349
You can also change to Equirectangular in the Lens module:
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
350
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.
• 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.
351
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.
• 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
352
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.
353
Use Splines
Turn this option on if you want to draw layer splines to calibrate the lens.
When this option is in use, any splines you draw in the viewport will be open
splines, allowing you to define curves in the scene more easily than the line
detection method.
3. Draw lines that exactly follow any curves in the footage that should be straight
when calibrated.
It’s best to draw enough splines that define the curve of the lens on all sides of
the shot.
They should reach as close to the outer edge as possible as that helps define
the maximum distortion.
354
4. Select a Calibration type (see "Calibrate Parameters" below)
5. Click Calibrate
Below is an example of splines drawn on the edges of a building shot with a wide
angle lens:
In order to use a spline in the layer list, its processing cog must be turned on. The
cog is on by default when you draw a new layer.
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
355
more line segments. See "Min Line Length" below.
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 .
356
• 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.
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:
• 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)
357
• Equirectangular will automatically set and calibrate the lens to standard
Equirectangular lens format and needs no further calibration. See the
Equirectangular Lens Workflow with 360 VR section above for more details.
The Grid display option will show a reference grid with the computed distortion
added.
358
Here is an example grid of an anamorphic distortion model:
359
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.
360
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.
361
Distortion
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.
Enable
This checkbox Enables the calibration lens distortion for the scene.
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.
K1/K2/Cxy/Cyy
These fields define the exact numerical values for the calibrated distortion.
If your calibration doesn’t look quite right, you can adjust these fields to modify
the result.
362
Exporting
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.
• Mocha XML Lens Data: You can export the lens parameters in a simple XML file
format by selecting the Export Lens Data… button.
This can be used to import into future Mocha projects so you don’t need to
recalibrate the same lens.
The parameters 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.
Here you can import Mocha XML Lens Data to define pre-calibrated lenses.
When imported, the K1, K2, Cxx and Cyy fields are populated and the calibration
type is set, ready for use.
• 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
363
keyboard instead.
• Selecting the cog render button 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.
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.
364
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.
You will probably need a grid image to compute the parameters of this model
accurately.
365
Calibrating the Image Center
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.
366
An example of a Distortion Map
1. Go to the "Distortion Map" tab on the left side of the Lens Module
2. Use the "Undistort (Inverse)" and "Distort (Direct)" drop downs to import your
maps files
367
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.
368
Mocha Lens for After Effects
This format provides a way to get the Lens data into After Effects via the Mocha
Lens for After Effects plugin which you can download and install separately.
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
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.
Distortion Maps
369
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
370
3. Choose whether you want to render a map to Undistort or Distort with the
radio buttons on the right
4. Choose the size of map you want to render from the dropdown underneath the
radio buttons:
◦ Minimum Sizes: This will render distortion maps at the minimum size
possible to maintain correct distortion. The Undistort and Distort maps may
vary in size to accomodate for overscan.
◦ Equal Sizes: This will render the Undistort and Distort maps at equal
dimensions to make 1-to-1 mapping easier. Dimensions will be based on the
larger of the two map sizes calculated.
6. Distortion maps must be 32 bit floats, so TIF or DPX will be the best options
7. Click "Save"
371
1. The dimensions of the distortion map will be automatically
calculated at a larger size to your footage to make sure there is
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.
372
3. Click "Copy to Clipboard".
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).
373
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.
374
7. You can now go back to Mocha and export the Mocha Lens for After Effects
data.
8. Paste the lens data you exported on the clipboard to the Precomposed insert
layer.
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
375
precomp and making it larger:
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.
376
Using Mocha Pro for 360 VR workflow
The Mocha Pro 360 features are specifically designed to work on equirectangular
shots.
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.
1. Load Equirectangular footage into Mocha and set the Lens type
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:
377
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.
2. Switch to the Track module and view your footage in 360 mode
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.
If you press and hold the 360 button, you can also jump to a specific 360 view,
such as Zenith, Nadir, Front, etc.
378
• The Pan tool (X by default) pans the view in all directions
• 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.
379
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.
380
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
381
their respective chapters in the user guide for more details.
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
382
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 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.
383
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
• 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
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.
384
The Reorient Module
This section applies specifically to Equirectangular 360 VR footage
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".
385
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.
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:
• Etc.
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.
386
2. Move to the Reorient module. This will turn on the 'View Horizon' checkbox,
which shows the red horizon line on screen. It will also disable Preview so you
can work with the original clip.
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:
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.
387
3. Smoothing the Horizon
You can control the Smoothing to any rotational axis by turning off the tilt, roll and
pan 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.
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.
388
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.
389
The Dope Sheet
The Dope Sheet
The Dope Sheet is used to move, copy and paste keyframes in your layers.
You can navigate the Dope Sheet space by using the scroll bars horizontally and
vertically.
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
390
keyframes appear in the Dope Sheet. These are known as Group Keyframes which
are keys that contain multiple sets of Parameter Keyframes underneath them.
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.
When a hidden keyframe exists in the timeline, the group-level keyframe will still
show, letting you know there is data that can be moved or manipulated.
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.
391
NOTE: At this time you cannot copy and paste Group Keyframes, only
Parameter/Animation keyframes.
Sliding Keys
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.
392
The Clip Module
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.
Additional clips can be imported into the project through the Clip tab.
393
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.
394
Clip and Footage Stream Workflow
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.
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.
395
You can then choose a new footage stream to add to the current clip from the
Import dialog.
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.
396
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.
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.
397
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.
To select to track on this new clip, you must choose it in the Track tab’s Input
drop-down.
398
An imported clip must have inherited attributes from the original
base clip to be able to roto correctly. See "Importing Clips" above.
399
Keyboard Shortcuts
Keyboard Shortcut customization
You can now customize keyboard shortcuts for almost every tool, action and
menu item in Mocha.
You can access the keyboard shortcut customization dialog in two ways:
1. Directly, via File | Keyboard | Customize…
You can create a new profile by duplicating a default profile, then customize the
keys. These profiles are then available from the Keyboard menu:
2. Select a category and choose an action you want to change or add a key
sequence to
6. Click "Default" if you want to revert your change back to the default shortcut
400
Pressing return or delete/backspace counts as a key entry, so
please click outside the cell to complete the entry and use the
"Clear" button to clear an entry.
Tools
401
CTRL/CMD + SHIFT + Z Redo
C Close contour
D Delete point
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
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
402
Timeline
403
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.
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
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:
• 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.
404
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.
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 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.
405
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:
2. Autosave kicks in
4. Reopen host
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.
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
406
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
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.
407
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.
Toggles scrolling with the mouse wheel. This is on by default. There are two sub-
options:
• Mouse Wheel Scrubs Timeline: Sets the mouse wheel to scrub the timeline
when the cursor is over the viewer or the timeline.
• Mouse Wheel Zooms Viewer: Sets the mouse wheel to zoom in and out of the
viewer when the cursor is over the viewer.
If you hover over the timeline, it scrolls the timeline instead.
Toggles whether Mocha reads tablet pressure sensitivity for tools such as the
Area Brush. On by default.
408
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
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.
409
Stereo [Mocha Pro Only]
Here you can enable Active Stereo viewing mode if it is available to you.
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
410
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.
Defaults
FPS
You can enter a custom number if you click inside the dropdown.
Custom PAR
Options to set you default timeline as frames or timecode, and set a fixed frame
offset.
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.
411
Integer result clip format
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 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
412
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.
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
413
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.
Keep this option on to send anonymous crash and error data to Boris FX.
This is extremely useful for helping the Mocha team fix defects in future versions
and help narrow down problems.
Key Shortcuts
See the chapter on Keyboard Shortcuts for more information.
414
OpenColorIO (OCIO) Color Management
OCIO Color Management
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) .
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.
415
Mocha defaults to an OCIO configuration that matches the nuke-
default configuration found in Nuke by The Foundry.
To set a working colorspace, you can open the Viewer Preferences, which is
located in the top right-hand corner of the viewer:
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).
Then choose a Display View type from the list in the drop down:
416
Defining the Clip Color Space
To set a Clip color space, go to the Clip Module and switch to the Color Space tab.
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:
417
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.
418
Here the Color Space section is divided into several sections:
• OCIO config: Here you can change the OCIO config or reset back to the
default.
419
• 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.
You can load the path to a different config by accessing any of the config path
options in Mocha.
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.
You can define an OCIO environment variable on your system to point to a custom
420
configuration.
For example, if you wanted to use the default Nuke OCIO config, you could define:
export OCIO=$HOME/OCIO/nuke-default/config.ocio
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.
421
These map exactly like the controls in Project Settings, but will be assigned
automatically when creating new projects.
422
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.
423
Supported in this version
Mocha supports most standard movie clip and image sequence formats.
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).
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
424
• PNG files (.png)
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
425
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 artefacts that may hinder tracking and roto.
5. Make sure Mocha supports the sequence you are converting to!
426
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
427
--par par Set the Pixel Aspect Ratio for the
imported footage. For example mocha
--par 0.5 myFootage.mov
--interlace-mode mode Set the interlacing mode for field
ordering and pulldown for the imported
footage. For example mocha --interlace
-mode 1 myFootage.mov See Table 18.2
below for interlace mode codes.
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
428
12 Sets interlaced mode 3:2 PULLDOWN
LOWER FIELD FIRST DD
429
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"
On Linux, set it in your bashrc file or follow directions for your Linux distribution.
430
Windows
The most common way to set environment variables in Windows is via the
Environment Variables dialog in System Properties.
There are numerous ways to get to this dialog, but the easiest on Windows 10 is
to:
2. Type "environment"
3. Select the "Edit the system environment variables" option that appears at the
top of the list.
4. Click the "Environment Variables…" button at the bottom of the dialog that
appears
Once in the dialog, it is best to check if an environment variable is set before you
try creating it.
2. Enter your environment variable name into the "Variable name" field (such as
MOCHA_INIT_SCRIPT)
3. Enter the value you want to set to this variable in the "Variable Value" field (eg.
/path/to/my/scripts)
4. Click "OK"
Path variables
MOCHA_INIT_SCRIPT
431
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.
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:
432
QT_SCREEN_SCALE_FACTORS=2;1
MOCHA_QT_SCREEN_SCALE_FACTORS
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:
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:
433
RLM_LICENSE='your/rlm/directory`
434
Installing Node-Locked Licenses
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":
435
4. Paste the serial number into the available activation field and click 'Continue'
436
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:
437
3. You will be provided with file fields to load a key file:
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.
438
7. Pick a location for the request file (which will be created) in the second field.
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.
12. Your license should install automatically and Mocha will close.
For After Effects this is called "License…" and sits on the bar of the effect title in
your Effect Controls:
439
Adobe Premiere Plugin License
For Premiere, click the small icon next to the effect title:
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.
440
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.
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!
441
Installing Floating Licenses
This guide will walk you through the process of installing floating licenses.
Installing node-locked licenses does not require the use of the license manager.
See above.
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.
2. Run the License Manager file then follow the installation prompts
442
3. Open a Web browser and go to: http://SERVERNAME:5054/goforms/activate
(Replace “SERVERNAME” with the name of the license server)
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
443
the 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)
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:
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”
444
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.
14. On the “Activation Request Data” screen, verify all the information you have
entered, and click “REQUEST LICENSE”
17. Transfer the License File on to the offline license server and save the License
File to the RLM directory.
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”
445
ISV Servers and it will say Running: Yes.
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.
If you haven’t yet installed the server license, follow the instructions above in How
do I Install the Floating License Server.
Once you have the server license installed, perform the following steps to get the
client license running:
2. Get the host line from the server license, which looks like this: HOST
ServerName EthernetAddress PortNumber
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:
446
How do I point to the server license using an
Environment Variable?
If you want to point to a license file via environment variable, use
genarts_LICENSE. It uses the usual RLM syntax, e.g:
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 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/
447
For older versions of RLM Server:
Check that your client license actually exists on the client machine:
Verify you are using the latest version of the license server software.
Verify there is not a firewall running between the server and the client
computer
If your organization needs to run a firewall, you will need to check if the ports for
the RLM server are open for use.
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.
448
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.
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/
449
Installing Render Licenses
This section will discuss the installation of floating render licenses and how they
differ from standard interactive floating licensed.
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.
450
Workflow for Render Licenses: Example 1
To help illustrate the Render License workflow, let’s look at the following situation:
• 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:
• If another user tries to work on a 6th machine, they will open Mocha
unlicensed, because all interactive licenses are in use.
• They open an existing project with Mocha in it (or render from the command
line), they will be able to render, because all render licenses are available.
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
451
with.
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.
452
Troubleshooting Mocha issues
Uh Oh. You’ve run into a problem using Mocha. Here are some guides to tackling
some roadblocks.
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.
453
"Tracking failed: couldn’t decompose motion matrix"
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.
One way around this is to track from the middle of the motion as opposed to
starting at one end.
Splines
"Point could not be transformed into frame due to distortion. Error: SEL3"
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:
454
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 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.
1. The host has run out of cache memory and can’t supply any new frames
2. The node or layer you’ve added the Mocha effect to has hold or retiming
applied to it and is feeding Mocha incorrect frames.
455
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.
Normally to fix this you need to restablish the connection to the license server.
Tracking
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.
456
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.
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.
457
Third Party Open Source and
Commercial Licenses Used by Mocha
Mocha uses the following third-party libraries and commercial licenses.
Where relevant, full license text is listed under each heading.
Qt 5.15.9
Qt is available under the GNU Lesser General Public License version 3.
License
You may use, distribute and copy the Qt Toolkit under the terms of
GNU Lesser General Public License version 3, which is displayed
below.
This license makes reference to the version 3 of the GNU General
Public License, which you can find in the LICENSE.GPLv3 file.
---------------------------------------------------------------------
----
0. Additional Definitions.
458
GNU General Public License.
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
459
3. Object Code Incorporating Material from Library Header Files.
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.
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.
460
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:
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.
461
it, you have the option of following the terms and conditions either
of that published version or of any later version published by the
Free Software Foundation. If the Library as you received it does not
specify a version number of the GNU Lesser General Public License,
you may choose any version of the GNU Lesser General Public License
ever published by the Free Software Foundation.
Python
License
462
the changes made to Python.
OpenColorIO
463
License
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
---------------
464
/*
====================================================================
* 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
* openssl-core@openssl.org.
*
* 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.
*
* 6. Redistributions of any form whatsoever must retain the
following
* acknowledgment:
* "This product includes software developed by the OpenSSL
Project
* for use in the OpenSSL Toolkit (http://www.openssl.org/)"
*
* THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
* EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
465
* 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 THIS SOFTWARE, EVEN IF
ADVISED
* OF THE POSSIBILITY OF SUCH DAMAGE.
*
====================================================================
*
* This product includes cryptographic software written by Eric Young
* (eay@cryptsoft.com). This product includes software written by
Tim
* Hudson (tjh@cryptsoft.com).
*
*/
466
* 1. Redistributions of source code must retain the 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 acknowledgement:
* "This product includes cryptographic software written by
* Eric Young (eay@cryptsoft.com)"
* The word 'cryptographic' can be left out if the rouines from
the library
* being used are not cryptographic related :-).
* 4. If you include any Windows specific code (or a derivative
thereof) from
* the apps directory (application code) you must include an
acknowledgement:
* "This product includes software written by Tim Hudson
(tjh@cryptsoft.com)"
*
* THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS 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 THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF
* SUCH DAMAGE.
*
* The licence and distribution terms for any publically available
version or
* derivative of this code cannot be changed. i.e. this code cannot
simply be
* copied and put under another distribution licence
* [including the GNU Public Licence.]
467
*/
libpng
License
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
468
Some files in the "contrib" directory and some configure-generated
files that are distributed with libpng have other copyright owners
and
are released under other open source licenses.
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
469
including, without limitation, the warranties of merchantability and
of
fitness for any purpose. The Contributing Authors and Group 42, Inc.
assume no liability for direct, indirect, incidental, special,
exemplary,
or consequential damages, which may result from the use of the PNG
Reference Library, even if advised of the possibility of such damage.
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:
EXPORT CONTROL:
470
The Copyright owner believes that the Export Control Classification
Number (ECCN) for libpng is EAR99, which means not subject to export
controls or International Traffic in Arms Regulations (ITAR) because
it is open source, publicly available software, that does not contain
any encryption software. See the EAR, paragraphs 734.3(b)(3) and
734.7(b).
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-pyside/tree/bfx/5.15.9
License
You may use, distribute and copy the Qt Toolkit under the terms of
GNU Lesser General Public License version 3, which is displayed
below.
This license makes reference to the version 3 of the GNU General
Public License, which you can find in the LICENSE.GPLv3 file.
---------------------------------------------------------------------
----
471
This version of the GNU Lesser General Public License incorporates
the terms and conditions of version 3 of the GNU General Public
License, supplemented by the additional permissions listed below.
0. Additional Definitions.
472
that uses the facility (other than as an argument passed when the
facility is invoked), then you may convey a copy of the modified
version:
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.
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.
473
c) For a Combined Work that displays copyright notices during
execution, include the copyright notice for the Library among
these notices, as well as a reference directing the user to the
copies of the GNU GPL and this license document.
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:
474
b) Give prominent notice with the combined library that part of it
is a work based on the Library, and explaining where to find the
accompanying uncombined form of the same work.
FBX SDK
The FBX SDK is supplied by Autodesk.
475
License
OpenEXR
476
License
3. Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
R3D SDK
This software is based in part on the work of RED.COM, LLC
FreeType
License
477
libtiff
License
uuid
OSSP uuid uses the MIT license.
478
License
libxml
479
License
libz
480
License
GStreamer
The source code for GStreamer 1.18.5 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.18
License
481
Copyright (C) 1991 Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA 02110-
1301, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
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.
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.
482
Also, for each distributor's protection, we want to make certain
that everyone understands that there is no warranty for this free
library. If the library is modified by someone else and passed on,
we
want its recipients to know that what they have is not the original
version, so that any problems introduced by others will not reflect
on
the original authors' reputations.
483
However, unrestricted linking of non-free programs would deprive
the
users of those programs of all benefit from the free status of the
libraries themselves. This Library General Public License is
intended to
permit developers of non-free programs to use free libraries, while
preserving your freedom as a user of such programs to change the free
libraries that are incorporated in them. (We have not seen how to
achieve
this as regards changes in header files, but we have achieved it as
regards
changes in the actual functions of the Library.) The hope is that
this
will lead to faster development of free libraries.
"Source code" for a work means the preferred form of the work for
484
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
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:
485
in the event an application does not supply such function or
table, the facility still operates, and performs whatever part of
its purpose remains meaningful.
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.
486
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.
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.
487
whether or not they are linked directly with the Library itself.
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:
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
488
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:
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
489
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.
490
original copyright holder who places the Library under this License
may add
an explicit geographical distribution limitation excluding those
countries,
so that distribution is permitted only in or among countries not thus
excluded. In such case, this License incorporates the limitation as
if
written in the body of this License.
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
491
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH
DAMAGES.
<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
License along with this library; if not, write to the Free
Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
MA 02110-1301, USA.
You should also get your employer (if you work as a programmer) or
492
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.
493
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 THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
---------------------------------------------------------------------
----------
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.
494
---
Eigen
495
License
OpenCV
License
496
If you do not agree to this license, do not download, install,
copy or use the software.
License Agreement
For Open Source Computer Vision Library
(3-clause BSD License)
* 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.
497
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 this software, even if advised of the possibility of such
damage.
[1] Apple and ProRes are trademarks of Apple Inc., registered in the U.S. and other countries and regions.
498