Feature Tutorials

QuickTime Video Compression (Archive)

CrystalMaker provides industry-leading digital video capabilities, allowing you to record video as you work, build, edit and save animations - and export rotatable QTVR objects. The technology used to do this is called QuickTime®. This article provides some general tips for making the most of QuickTime's powerful video compression settings, and includes the results of our own tests on video output quality and file size.

This document presents the results of tests carried out on 19 May 2009, using an earlier version of CrystalMaker that did not support the multi-frame compression feature of the H.264 compressor. These results are valid for CrystalMaker versions prior to 8.5 (Mac) or 2.5 (Windows). For the latest results, which include the effects of the new H.264 video support, please see our current tests.

QuickTime Movie Icon

Video Compression

Many people are familiar with the notion of compression, in the context of making computer images smaller. Common image compression formats include the ubiqutous "JPEG" files, found on most websites.

With video, the problem of file sizes is much worse than with static images. Videos need to display many images per second, so the file sizes quickly mount up. Developers have come up with a wide range of algorithms for compressing these video sequences - some algorithms are just like those used for compressing still images; others are more advanced, and compare a sequence of frames, so that only the changes between frames need to be saved.

Controlling QuickTime

Compression Settings button

Video compression button

CrystalMaker's Video Palette (Window > Palette > Video) includes a Compression Settings button (with an "accordion" icon). Pressing this brings up a dialog that's crammed with controls. CrystalMaker is giving you full access to the extraordinary wealth of control settings provided by QuickTime. These include video frame rate, output size/quality controls - and a choice of many different video compressors, also known as "codecs".

The question is: which codec should you use - and what particular settings are going to work best when recording your video?


CrystalMaker's Compression Settings dialog. The compression type ("codec") is displayed in the popup menu at the top of the dialog and the output quality can be previewed in the bottom right-hand corner

Compression Settings dialog

Criteria for Choosing the Best Video Settings

The key factors you need to consider when recording video are: image quality and file size. Unfortunately, these two factors tend to oppose each other, so that the best image quality tends to result in the worst (i.e., highest) file sizes. However, some codecs are more efficient than others, so is possible to make some general recommendations.

By default, CrystalMaker uses the Animation compressor. This is a good, safe choice. It is designed to work well with images that contain lots of sharp edges: the type of "synthetic" images used in programs such as CrystalMaker. The downside is that this compressor isn't particularly efficient.

By contrast, more efficient video compressors - such as the popular H.264 codec - don't work very well with CrystalMaker's images. These type of compressors are designed for natural images - movies of real objects, where there are softer transitions, and where things don't change very much from frame to frame. If you try to using this type of compressor with "hard" synthetic objects, then you'll end up with fairly poor results.

Video Testing

To help you choose a good, general purpose codec, we undertook a detailed series of tests, using a "typical" CrystalMaker file, and comparing the file sizes and video quality for the different compressors/settings used.

Test Settings.We used the Fullerene ("bucky ball") structure, displayed as a ball-and-stick model, viewed in red/blue colour stereo, in a graphics pane with dimensions 800 × 600 pixels and using millions of colours. For each test, the structure was rotated through 60 frames (at 6° intervals), making a complete revolution. We used the highest-quality rendering mode (Rendering > Full Rendering Mode), to give smooth bonds.


Results of video tests, showing the output file size and our (subjective) quality ranking.

Codec Setting Size
[MB]
Quality(*)
Ranking
Comment
Animation Millions / Best 29.7 1
Animation Millions / High 24.4 =1
PNG Millions / Best Filter 10.8 =1
JPEG 2000 Millions / Best 24.5 =1
JPEG 2000 Best Depth / Best 24.5 =1
JPEG 2000 Millions / High 12.3 =1
JPEG 2000 Best Depth / High 12.3 =1
JPEG 2000 Millions / Medium 11.2 =1
JPEG 2000 Best Depth / Medium 9.7 =1
JPEG 2000 Millions / Low 7.4 =1
JPEG 2000 Best Depth / Low 5.7 2
Animation Thousands / Best 13.4 3 A good, safe choice - space permitting
Animation Millions / Medium 16.9 4
Photo JPEG High 5.5 5
JPEG 2000 Millions / Least 2.7 6 The best quality/size compromise
Aimation Millions / Low 13.4 7
Animation Thousands / High 9.5 8 Banding effects visible in shadow areas
MPEG4 Video High 6.4 9 Slightly "smeared" appearance
Apple Intermediate Other 5.6 10
H.264 High 3.1 11 This popular compressor doesn't work well with synthetic images! Definite blurring of detail and loss of colour fidelity
Apple Pixlet Medium 3.8 12
Animation Millions / Least 10.2 13
Animation Thousands / Medium 7.3 14
H.264 Medium 1.7 15 Blurred and blotched colours
MPEG4 Video Medium 2.0 16 Quality unacceptable below this point
Photo JPEG Medium 2.6 17
JPEG 2000 Best Depth / Least 1.7 18
DVCPRO PAL Progressive 8.2 19
DVCPRO50 PAL Progressive 16.5 20 Proof that bigger isn't always better!
Animation Thousands / Low 5.9 21
Animation Thousands / Least 5.9 =21
DV - PAL Progressive 8.2 22
Apple VC H.263 Best 2.3 23

(*) Subjective quality ranking, based on visual inspection of each video, where 1=best.

Discussion

We should begin our discussion with a very-important caveat. These tests were specific to CrystalMaker - and one structural model in particular. They should not be interpreted in isolation. Using different models will give different results.

In attempting to rank the different codecs, we put particular emphasis on the appearance of video artifacts, such as stripes or banding. These were felt to be more objectionable than subtle blurring of fine detail - at least, from the perspective of having a model rotating, where spots, stripes and bands are clearly evident, whereas the odd blur here and there is easily missed.


Examples of output quality for different compressor settings used.

Animation compressor at best setting Animation compressor at lower-quality setting

Animation compressor at maximum quality

Animation compressor at lower quality showing severe banding in shadow areas plus horizontal streaks across the empty black region.

H.264 compressor showing blurring and loss of colour detail DV PAL Progressive compressor showing horizontal striping and overall blurriness

H.264 compressor at Medium quality. Note the slight blotchiness and lack of colour detail.

DV PAL compressor, showing general blurriness and horizontal striping.

In the tests we carried out, output file sizes varied from 1.7 to 29.7 MB - that's a factor of 15 difference! The most interesting observation, however, was that "bigger" wasn't necessarily better. In particular, the video codecs used by digital video (DV) cameras fared particularly poorly in these tests - resulting in large file sizes with very-poor video quality. Also poor was the much-vaunted H.264 compressor: clearly this is better suited to more naturalistic scenes.

The best performing codec in these tests was the JPEG 2000 codec, and we'd recommend the Millions of Colours setting, with the output quality set to Low or even Least.

Having said this, my hunch is that models with more straight edges - such as polyhedral plots - would probably work better with the Animation compressor, set to Low or Medium quality, using Thousands of Colours. We'll have to save this for a possible future test.

Conclusion

In conclusion, we've found that for a typical CrystalMaker structure, the best compressor to use is probably the JPEG 2000 compressor, set to display Millions of Colours and using a Low or Least quality output. Other models may require slightly-different settings, but this table of results should give a good general guide as to which compressors work best

Copyright © 2016 CrystalMaker Software Ltd. All rights reserved.