Tutorial: Guide to Final Cut Pro Internal Tools |
March, 2009
Guide to
Final Cut Pro Internal Tools
by Jon Chappell
Did
you know Final Cut Pro has a hidden menu? Just hold down Cmd
+ Option + Shift and click the Tools menu. You should
now see a new menu item called Internal Tools.
This is a debug menu used by the developers
of FCP, but it actually has some uses for us mere mortals as
well. It's especially useful for plugin developers and system
troubleshooters, but some features benefit all users. Here is
a rundown of what's in the menu.
Adjust Windows
When you open the Audio Mixer,
Frame Viewer and several other tools in the Tools menu, they
open in a tabbed window called the Toolbench. This normally appears
on top of the Viewer and is hidden behind it when you select
the Viewer again.
The Adjust Windows menu item adjusts
the window layout so the Toolbench can fit in without being obscured
by other windows. If you don't have the Toolbench open when you
click this item, it will leave a gap in your window layout.
Before
After
To restore the default window configuration
again, press Ctrl+U.
App / Perf Info
This generates a text file containing
just about everything you could ever wish to know about your
FCP configuration.
Probably the most useful part is the
Project / Sequence Information section. This gives various statistics
about your project including the total number of clips placed
in your timeline and the proportion of those clips that were
unique. It will even tell you how many edits you performed per
minute (don't let your boss see this!).
Log OpenGL Profile Costs
This function displays timing
information about OpenGL Profiling in the Console. It will do
nothing until you start profiling (see the Statistics section
below), at which point it tells you how long (in ms) it took
your machine to process the given frame sizes and codecs.
One thing I noticed about this is that
it takes a fair while for the data to be posted to the Console
around 1-2 minutes.
Log VM Footprint
This outputs the current memory
usage to the Console.
Resident refers to data in physical memory,
Virtual refers to data on the disk ready to be copied into main
memory as required. Note that the system often assigns more virtual
memory space than it needs, so not all of that space will actually
be used. So if you see a ridiculous number like 4 GB, it is not
necessarily a cause for alarm.
Movie Dumpster
This one crashes Final Cut Pro
for me, so I wasn't able to ascertain exactly what it does. However,
Apple offers a tool called Dumpster
on their developer site which gives you a large amount of technical
information about a specific movie clip. I would imagine this
would be similar if it worked.
Playback Meter
This will show you how your media
drives are performing, and is probably the most useful tool in
the menu.
If you are not using a RAID, only the
audio bars will work. Everything is fine while the bar is green,
but if it turns yellow or red, this is an indication that your
computer cannot keep up.
Screen Size Override
This allows you to fool Final
Cut Pro into thinking that you have a different-sized monitor.
Just select the desired resolution from
the pull down menus and press Ctrl + U to automatically
resize the windows to the new dimensions.
If you mess things up, just restart Final
Cut Pro and press Ctrl + U to restore the windows to the
correct position for your screen resolution.
Statistics
This displays a lot of technical
information about what's going on under the hood of FCP.
For instance, select the Render check
box, drag the playhead across the timeline and then click the
Average button. This will average the times taken to perform
the various function calls required to render the image to the
screen. If your system is getting sluggish, you may find it useful
to use the Averages function to see which areas are taking a
long time to process.
Most of the checkboxes are self-explanatory
so I won't elaborate on them here. However, I would advise selecting
them one at a time otherwise you'll end up with an overflow of
information.
If you want to clear the text box, click
Reset. Copy copies the entire data to the clipboard
and Copy Avg copies only the averages. Unset All
deselects all of the checkboxes.
Both Auto Profile and RT Verify
go through each item in the Browser (video clips, sequences,
images, etc), playing each one four times and averaging the data.
Sequences take longer because the profiler initially tests with
only the V1 track enabled, and then gradually enables V2 and
V3 to perform compositing tests (if such tracks exist of course).
It's worth mentioning that since it goes
through everything four times, it will take a while to finish
processing, depending on the size of the project. You cannot
switch to another application either or the profiling will fail.
I would advise creating a brand new project with short media
clips and sequences. If you truly have serious bottlenecking,
this will still be apparent in the shorter sequence.
All the timing information is stored
inside the Profile.csv log. Although you can view this
in TextEdit, it will be difficult to read because it will not
be formatted correctly. A spreadsheet application, such as MS
Excel or the free NeoOffice or OpenOffice
packages, is recommended.
If you are experiencing poor performance,
look at the timings in this file to see where the major bottlenecks
are. For instance, a slow FXScript filter could be indicative
of a CPU bottleneck or an inefficient script. A slow Flop operation
could be indicative of a GPU bottleneck.
Auto Profile
and RT Verify appear, on the surface, to perform exactly
the same task. However, it is likely that Auto Profiling actually
updates your RT information whereas RT Verify merely performs
the test without changing anything. This is difficult to verify
without official documentation though.
Most of the functions in the Internal
Tools menu will be too technical for a lot of users, and so the
menu will likely remain something of a novelty. But if you are
troubleshooting performance issues or developing applications
and plugins for FCP, it is an invaluable source of information
on the inner workings of Final Cut Pro.
The only downside is that the menu must
be reactivated every time you start Final Cut Pro. If anyone
knows of a way to enable it permanently through a preference
file, I'd love to hear about it.
Copyright 2009 Digital Rebellion,
LLC.
This article was first published on Digital
Rebellion and is reprinted here with permission from the
author.
Jon Chappell
is an editor, VFX artist and software developer originally from
the UK. He is the owner of Digital
Rebellion LLC and is a regular contributor to the Final Cut
Pro community. He is well known for developing the popular troubleshooting
applications FCS
Remover, Preference
Manager and Compressor
Repair. His film credits include the award-winning feature
Perfect Sport.
|