1. Bit Depth and File Formats
Bit Depth
As a student, you will have done most of your work in 8-bit. Photoshop and After Effects start in 8-bit by default. The most common output formats such as MP4 h.264 videos, JPEG and TGA images are all 8-bit
So what is bit depth and why should I care?
Bit depth can be described as the number of tonal steps or the levels of grey between black and white, which can be displayed or stored
8-bit Gradient
The steps are visible, not good
Gradients in 8-bit get worse when color correction is applied
Higher bit depth means more tonal steps and more accurate colors, which is very desirable when working with gradients and color correction
What does bit mean?
1 bit can store 2 values, 1 or 0, on or off
8 bits can store 256 values in each channel, giving us thousands of colors
16 bits allow 65,536 values per channel, giving us trillions of colors
Why are not all files in highest bit depth?
Higher bit depth creates larger file size and most output devices like computer monitors and TV sets display 8 bit. We want to work in higher bit depth as intermediate format, but will eventually create an 8-bit version of the final. This is about to change, new TV sets are ‘HDR’, which is 10-bit.
Dedicated monitors for color grading are capable of displaying higher bit depth
Who is using which bit depth?
Visual Effects projects work with OpenEXR format, which can store High Dynamic Range images in 32-bit and the more efficient 16-bit half-precision
TV Productions work with QuickTime ProRes 12-bit files, some still with 8-bit
Color Grading work in 10 and 12-bit
Professional Photo processing is 16-bit
Web Design is still 8-bit
Is working in 8-bit bad?
Yes and no. It depends on the source image and the intended use
Color correcting an 8-bit snapshot of your cat to post online, there is certainly little need for high bit depth
Color correcting a professional raw photo, yes you want to work in 16-bit, quality would be lost in 8-bit
Creating a digital painting or animation in 8-bit is not a good idea, as you are limiting yourself to 256 luminance steps per channel, which is not a lot. Using 16-bit will already give you 65 thousand (32 thousand in Photoshop), which is quite a lot more. The difference is noticeable when working with fine details and gradients
If the source was captured with higher bit depth, i.e. QuickTime ProRes 12-bit, you want to stay in at least the recording bit depth throughout all intermediate stages to not loose quality. Converting down to 8-bit will lose quality which can’t be brought back
Which bit depth should I work in?
Depends on your tools and workflow, not all tools can handle 32-bit well
In Photoshop and After Effects you can change bit depth at any time but it’s smarter to define before starting. Adobe is not fully 32-bit compatible, many filters still do not work in 32, therefore the most common professional work format in Adobe is 16-bit
Nuke works always in 32-bit, no need to define a working bit depth, only the output file format determines the bits
In Maya, it depends on the output render format, too, and setting the color space to linear
If the next stage is Nuke, use OpenEXR 16-bit half-precision, called RGBA (Half) 4×16 in Maya
If your next stop is AE, you could use OpenEXR as well, but more common is an integer format such as TIF 16-bit
Please also refer to Formats for Intermediate Stages in the Project Workflow Guide
High Dynamic Range
Images with 32 bits are referred to as High Dynamic Range. A true HDR image has to be 32-bit. The term HDR will be watered down now with consumer TV sets branded as “HDR capable” for the next big thing with 10-bit H.265 video
Common Bit Depth Formats
Bits (bps)
Luminance steps
in 1 channel
Total possible colors
with 3 RGB channels
8
256 = 28
16 thousand
10
1,024 = 210
1 billion
12
4,096 = 212
68 billion
16
65,536 = 216
281 trillion
32
4,294,967,296 = 232
4 billion
80 octillion (8 x 1028)
File formats
Not every file format allows to store all bit depth, most formats are limited
Except JPEG, all formats below support lossless compression and could be used as intermediate formats
Format
Supported Bith Depth
Use in Animation and VFX
JPEG
8 bit sRGB
Preview renders. Use 100% quality. Small file size, fast to load in player. Also as background in 3D or plate for Matchmove. Never as intermediate format
TARGA (tga)
8 bit sRGB
Very old, but still used in TVC post as intermediate
TIFF
8 and 16 bit sRGB
32 bit linear float
Standard if intermediate 16-bit integer is required
PNG
8 bit Palette-based
Standard Web format. Supports lossless, therefore useful
Cineon (dpx, cin)
8, 10, 12, 16 sRGB and logarithmic
Used as delivery, intermediate and output format
Standard for telecine and DI grading
Photoshop (psd)
8 and 16 bit sRGB
32 bit linear float
Photoshop work default. Can be used as intermediate delivering layers to next stage
Radiance (hdr)
Standard format to store HDR images used in Image Based Lighting
OpenEXR (exr)
16 bit linear float
32 bit linear float
The standard for rendering and intermediate in VFX
All sRGB formats store integer values, all linear colorspace formats store floating point values
More about integer and floating point in Floating Point vs Integer
Confusing Export Settings
TARGA Export Settings
Targa is 8-bit only, these settings are confusing
The meaning here is 3 times 8 per channel = 24
24 bits/pixel is 8-bit RGB without alpha
32 bits/pixel is 8-bit RGBA with alpha
TIFF Export Settings
Millions of Colors is 8-bit
Trillions of Colors is 16-bit
Floating Point is 32-bit (Why not Octillions of Colors then?)
+ is with alpha channel, else without