Screenflick: Compression and Movie Size

The size of the resulting movies is completely dependent on the video compression settings you choose for the export. Screenflick assumes you have some knowledge of them because there are a lot of choices and trade offs for various applications, and there is no good one-size-fits-all solution.

Several things affect the file size of an exported movie:

You have complete control over the resolution and frame rate of an exported. The smaller the resolution and the lower the frame rate, the smaller the movie will be. You also have control over the desired video quality, which we'll discuss below. What you don't have control over, is the actual content of the movie - how much of each frame changes from the previous, which has the biggest effect on the inherent size of the movie file. The way you control this, is by adjusting the video quality.

Video Quality Settings

Generally want to stick to using the H.264 video encoder, which is the main video encoding scheme used today all across the Mac platform, and on most of the web as well.

The "Key frame" rate can have a big impact on file size. The key frame rate says how often the movie should include a complete video frame versus simply saving the changes between individual frames, the latter of course giving a smaller file). Generally, you can stick to 1 key frame every 10 seconds or longer.

The second important setting is to either use the "Quality" slider, or if you're targeting a specific file size, you can use the "Limit data rate to" field to limit the data rate of the video directly in KBytes/sec which is what you should use to target a specific file size.

If you know you want the movie to only be 100 MB, 100 MB is 100 * 1024 = 102400 KB. If your movie is 10 minutes long, then that's 600 seconds, so you want to set the limit to be 102400 / 600 = 170 KBytes/sec. A fairly standard rate is 1.5 megabits per second, which will be (1.5 * 1024 / 8 = ) 384 KBytes/sec. This is what Apple tends to pick as standard when doing any "Save for Web" movie creation in iMovie and QT Player for instance.

Generally, just playing with the slider works fine, but if you want to be more precise about it, learning about and experimenting with the data rate limit is the way to go.




Video and Audio Compression

There are many terms used in video and audio compression which can be unfamiliar to you. Understanding some of these options will give you the ability to fine tune the quality and file size of your exported movies.


Video Compression Options

Compression Type

For some movie file formats, they can compress video in a number of different ways, and allow you to pick. With QuickTime mov files, you have many choices such as Animation, H.264, MPEG-4, and more. Most of these compressors are "lossy" meaning, they will reduce the quality of the movie to make the file size smaller, however some are much better at retaining quality while dramatically reducing file size. Each has different characterstics. Typically, you should simply use H.264 for everything unless you know you need to use something else.

Frames Per Second (FPS)

Just like with choosing the FPS to record a movie at, you can pick the FPS to export a movie with. 30 is the typical frame rate for all movies. Lower numbers will reduce the file size, but also make the movie appear less smooth.

Key Framing

Video compression works not only by compressing the image of each individual frame, but it also compresses "temporally" or across frames. That is, if a portion of two frames is exactly (or nearly) the same, the movie stores just pieces of the second frame which will get drawn on top of the previous frame; So in order to draw the second frame, the movie must draw the first frame and the second frame ontop of it to get a complete picture.

Key Frames are frames which are always complete regardless of whether or not they could actually be partial frames. The more key frames there are the bigger the file size will tend to be, but it also can reduce visual problems when playing the movie. It also will make scanning through a movie faster because it has less previous frames to draw in order to display the current frame.

For key framing you can stick to one every 10 seconds or so, so if your export FPS is 30, you would key frame every 300 frames.

Quality / Data Rate Limit

For determining the quality of the movie to export, typically video compressors let you pick either a relative "Poor to Maximum" quality level on a sliding scale, or they let you choose the amount of bytes/data/memory to use for each frame on average. When using the Quality slider, the file size will end up being whatever it needs to maintain the quality you selected. When using a Data Rate limit, the quality will be adjusted to whatever it takes in order to maintain a consistent data rate in the movie.

For example, if your movie is ten minutes long, choosing a data rate of 128 Kilobytes (KB) per second will produce a movie that is roughly 75 Megabytes large. If you know you want your movie to be a maximum of 40 megabytes, you can calculate the data rate by (40 * 1024) / (10 * 60) = 68 KB/sec.

Optimized For

Download / Streaming, etc. Unless you're going to actually be using real streaming video, choose Download.

Multipass

In single-pass video compression, the compressor starts at the beginning of the movie and compresses each frame in order and that's that. With Multipass turned on, the compressor will scan the movie (perhaps multiple times) in order to learn about the movie first, allowing to make better choices when compressing the video. This takes longer, but produces smaller files.


Audio Compression Options

Audio compression options are really just as varied as video compression options, but generally audio data is so much smaller than video data, that even using full CD quality audio doesn't make a significant difference to lower quality audio. With that in mind, you can generally always stick to AAC compressed stereo audio, at 128 Kbps, at 44.1 kHz. For smaller files, 96 kbps stereo, or even mono audio generally will work very well.