(Click here to jump to a discussion of this Knowledge Base article in the TroikaTronix Forum.)
There are many factors that influence Isadora’s video processing speed, including the speed and type of your processor, amount of RAM installed on your computer, hard disk speed, the format in which the video files are stored, and several other factors. This section details several tips to help you get the very fastest frame rates from Isadora.
Tip 1: When it comes to speed, the three most important hardware considerations are the CPU, Graphics Card (GPU) and the Hard Drive.
It is always the case that higher CPU frequencies are better. At this time, a dual-core 2 GHz processor would be the minimum one would want to consider for serious work when working with higher resolution video. Multiple core machines can also boost performance.
When using the standard movie players and video processing actors and FreeFrame 1.0 effects, the video processing is done by the CPU. In this case, CPU speed is the top consideration when it comes to speed.
Graphics Card (GPU)
The importance of the graphics card will depend on the version of Isadora you are using. As mentioned above, if you are not using the Core Image actors provided with the optional Core Image upgrade, then CPU speed is the key factor one must consider. In this case, spending a lot of money on a top-grade graphics card will not boot performance appreciably.
However, when using the Core Image version of Isadora, the speed of the graphics card, its available RAM, and the transfer rate from main system memory become far more important. If you are using this optional feature, investing in a high-grade graphics card can improve performance measurably.
When it comes to hard drives, the fastest units are the relatively new SSD (solid-state) hard drives. Because there is no physical head to move, access speeds, are phenomenally fast. especially when playing more than one movie. Such speed can be especially important if you are attempting to play multiple HD clips. The downside is that these drives are very expensive as of this writing.
Second in speed would be eSata drives, third would be FireWire 800, and finally USB 2. We do not recommend USB 2 when playing high-resolution movie clips from an external drive. When considering traditional drives, a drive with a high RPM speed will improve performance. Drives with 10,000 are now available, with 7200 RPM being a the recommended minimum.
The standard drives included with most laptops are usually 5400 RPM which will give less efficient performance, but are still workable depending on the resolution of your video.
Tip 2: Add as much RAM (Random Access Memory) to your computer as you can afford.
Modern operating systems rely on a feature called “virtual memory.” When the computer senses that some data that resides in your computers RAM (i.e. the extremely fast internal memory linked to your main processor) has not been used for a while, it will write it out to disk to make more RAM available to other applications. This is called “page swapping” and can adversely affect performance.
The best way to solve this problem is to add more RAM to your computer. As a general rule, 2 Gigabytes is a good base line. 4 Gigabytes is even better. Page swapping will often take place on machines with less memory than 2 Gigabytes of memory.
Tip 3: Don’t run other applications at the same time as Isadora
Every running application consumes system resources. So, especially when using Isadora for a live performance, don’t run any other applications at the same time. Even if they aren’t “doing anything” they get some of the processor’s time, and thus slow down Isadora.
Tip 4: Keep your video resolution as low as you can.
The biggest burden any real-time video software faces is the size of the image it has to process. This data has to be brought in from the hard drive or from a live camera input, moved through any effects, and sent to the graphics card for output. It’s a simple relationship: as resolution increases, the speed at which those frames can be processed decreases.
In addition, there is the CPU overhead necessitated by decoding the video from it’s compressed format to the uncompressed format that can be processed by the video effects and/or graphics card.
So, while Isadora has no limitation on the resolution of the video it can play, if you want good frame rates, it is best to keep the resolution as low as you possible so as to get the best frame rates.
To give you a sense of the amount of data being processed, take a look at this table:
|Resolution||Megabytes / Frame||Megabytes / Sec. @ 30FPS|
|320×240 QVGA||0.3 Mb||9.2 Mb/S|
|720×480 DV Video||1.3 Mb||41 Mb/S|
|1920×1080 HD||8.2 Mb||248 Mb/S|
Thus you can expect a single frame of full res 1080p video to take 26 times longer to process than a QVGA frame and six times longer than a frame of DV. Moreover, consider the situation when you’re cross fading from one scene to the next: if you were playing two 1080p HD clips, you’d be pushing around nearly 500 Mb per second. That’s approximately 62% of the maximum bus bandwidth of a top-of-the-line 2011 Mac Book Pro. Playing a third HD clip would put you at 93% of the maximum bus bandwidth of the same machine.
Note that the final column in the table above is the decompressed bandwidth of the image; the actual bandwidth required when reading the clip from disk can be considerably lower depending on the compression scheme used.
BONUS TIP: If you are outputting to video projector with less than HD resolution (e.g., 1024×768) there is no reason to play a full res 1080p HD video. Recompress or crop the so that it matches the resolution of your output device.
BONUS TIP: If you are letterboxing 16:9 video into a 4:3 output device (e.g., 1024×768) calculate the resolution you are actually using. For example, on a 1024×768 device, the resolution of a 16:9 image that uses the entire width of the display would be 1024 x 576. (used height = display width * 9 ÷ 16) Using a movie rendered at 1024×576 saves you 25% of the full 1024×768 bandwidth.
Tip 5: Keep all video resolution consistent
When Isadora has to combine two video streams of different resolutions (e.g., with the Video Mixer actor), it has to scale one stream to match the resolution of the other. (Which one gets scaled is determined by the “Video Image Processing” section of the Video tab in the Preferences.) Scaling is slow, and so you want to avoid it as much as possible. If all of the video streams you are processing are the same resolution, you will get the best possible performance.
Tip 6: In addition to changing the resolution of your files, choosing the correct codec for recompression is crucial
Photo JPEG is ideal for 640×480 (VGA) or smaller resolutions. While the files will not be as small as with other codecs, the Photo JPEG compressor offers several advantages. The most important is that it requires less processor power to decompress the images when compared to many other codecs.
When compressing using Photo JPEG, we suggest using a quality setting of “high” or “medium” (75% or 50%). Using a quality setting of “best” produces very large files that are not significantly better in image quality and will give less than optimum performance.
DV NTSC or DV PAL
For standard DV resolution, PAL is best for 720 x 576 and NTSC is best for 720 x 480. The NTSC and PAL DV codecs exhibit many of the same benefits as Photo JPEG, and are relatively efficient to decompress.
High Definition (HD)
For HD resolution the HDV codec has performed best in our tests, though it is anamorphic (i.e., it’s true resolution is 1440×1080, not 1920×1080.) This codec requires about 3 Mb/s in disk bandwidth, which is relatively low. For the highest HD quality we recommend Apple ProRes. The color fidelity and image quality is excellent but it also requires a significantly higher disk bandwidth of 20 Mb/S.
H264 should not your first choice!
The H264 is extremely popular because it makes small files with good image quality. But it is not the best choice to use with Isadora (or any interactive video software) for several reasons.
First, the CPU overhead required to decompress the image is significantly higher than for Photo JPEG or DV NTSC/PAL.
Second, H264 is only designed to play forward. If you are a VJ or artist who is scrubbing video or you often use the position input of the Movie Player actors, then H264 is most definitely not for you. If you play an H264 movie backward, or you scrub the video back and forth rapidly, you will see the CPU usage increase significantly. This is simply because the codec is not designed to deliver the images in reverse order.
By contrast, the Photo JPEG and DV formats render each frame individually (i.e., the current image is not inherently related to the previous one.) Therefore it these codecs are very fast when jumping to an arbitrary location within the clip and will play just as well backwards as forwards.
You can use a number of software tools to recompress your files, but perhaps easiest is the Pro edition of Apple’s QuickTime Player. See Tip 9 for instructions on how to use QuickTime Player to compress your video.
Tip 7: The duration of a movie has little or no impact upon performance.
We often are asked: “Can Isadora play movies that are an hour long?” The answer is “yes,” because, in fact, the duration of a clip has little to do with playback performance.
The video playback software within the operating system only reads a small amount of the video file at a time, usually about a half-second in advance of where the current playback position. Thus, whether a clip is 1 or 1000 minutes long has little impact on performance. Far more important are the factors listed in the tips listed above.
Tip 8: Stick with one frame rate for all your videos.
Isadora will happily play videos of any frame rate within the same file. But for the smoothest playback performance, you should use the same frame rate for all your videos and set the Target Frame Rate in the General tab of the Isadora Preferences to the same rate.
Furthermore, you should set the Refresh rate of your monitor or video projector to a multiple of your chosen frame rate if at all possible. (Consult the manual for your monitor or projector to learn how to do this.)
For NTSC video rendered at 29.97fps:
- Set the Target Frame Rate to 29.97 fps
- Set the Monitor/Video Projector refresh rate to 60 Hz.
For PAL/SECAM video rendered at 25fps:
- Set the Target Frame Rate to 25 fps
- Set the Monitor/Video Projector refresh rate to 50 Hz.
For videos transferred from film at 24fps or 23.978 fps:
- Set the Target Frame Rate to 24 fps or 23.978 as appropriate.
- Set the Monitor/Video Projector refresh rate to 50 Hz.
Tip 9: Turn off the Video Capture when you’re not using it.
The Capture Control actor allows you to turn live video on and off from within an Isadora scene. If you are not using live video in a section of your piece, then use this actor to turn it on and off at the appropriate moment.
Tip 10: Bypass the Actors or turn off User Actors when not using them.
Many Actors have an input called ‘bypass’. When turned off (default), the effect functions normally. When turned on, the effect is disabled and the video input is passed directly to the video output. You can add a simillar functionality to your User Actor, but the video will not pass the User Actor when set to off. Double click the User Actor and a tab will open with the User Actors name. Inside the User Actor you can add a new actor called ‘User Actor On/Off’ to change the value from outside of the User Actor you have to add a ‘User Actor Input’ to it. The ‘User Actor On/Off’ activates or deactivates all of the actors within a User Actor.
Turning off User Actors or bypassing Actors is usefull when you want to save processor speed.
Tip 11: How to use Apple’s QuickTime Player 7 (Pro Edition) to recompress your movies.
Below are instructions on how to use the Apple’s QuickTime Player to store your movies in this format.
NOTE: While QuickTime and QuickTime Player are free, the Pro edition required to recompress movies costs $29.99 at the time of this writing. You must have the Pro Edition to recompress movies using QuickTime Player.
MAC OS X 10.6 and 10.7 Users: The instructions below are for QuickTime Player 7 which became an optional install since Mac OS X 10.6 (Snow Leopard). To install QuickTime Player 7 under Mac OS X 10.6 or later, follow these instructions.
Compressing Video with QuickTime Player 7 (Pro Edition)
- Open QuickTime Player by double clicking on its icon. Choose File > Open Movie to open the movie you want to recompress.
- Choose File > Export, or press Apple-E (Mac) or Control-E (Windows), to call up the export dialog.
- After the window appears, click the “Options” button to show the “Movie Settings” window.
- Then click the “Settings” button.
- Choose your desired compression format using the pop-up menu under the heading “Compressor”.
- Set the slider under “Quality” to the halfway point, which should be labeled “Medium.” You can use “High” if you like – you’re movies will be somewhat larger but the quality of the image may be somewhat better.
- In the text box to the right of “Frame Rate” type 30, if it is not already set to 30. (Use 25 if you are compressing PAL movies.) Uncheck the other two boxes that say Key Frame and Limit Data Rate.
- Press the “OK” button.
- You’re back at the “Movie Settings” window. Click on the “Size” button.
- Click the “Use Custom Size” radio button. Two text boxes marked “Width” and “Height” will appear.
- Type your desired sizes into the “Width” and “Height” text box.
- Press the “OK” button.
- You’re back at the “Movie Settings” window. Press the “OK” button.
- Choose a name for your movie (it should be different than the old name) and press the “Save” button.
- This process can take a while, depending on how long your movie is. A progress dialog (a window with a little blue “thermometer” type display) will appear to show how things are going.
- When the progress dialog disappears, your movie is done being compressed.
- Open the new movie and play it to see how it looks now.
To see the difference in size between the original movie and the newly compressed one, do the following:
- Bring the original movie to the front by clicking on its window.
- Choose Movie > Get Info to show a window that gives information about the movie.
- Choose “Movie” from the pop-up menu on the top left.
- Choose “General” from the pop-up menu on the top right.
- Look at the “Data Size” and “Data Rate” in that window. Take note of the values.
- Close the window by clicking on its close box in the top left or by choosing File > Close.
- Now bring the new movie to the front by clicking on its window.
- Follow the same procedure starting at Step 2 to show its Data Size and Data Rate.
- You’ll see how much smaller the movie is and how its data rate has been lowered through the resizing and compression process.