Merinorus

Identifying the manufacturer of your 35mm (and APS) films

In a previous article, I introduced how I was digitizing my 35mm film archive with my digital camera.

By digitizing the pictures, I wanted to save as much information as possible, including the film manufacturer and type, because this information impacts color post-processing.

Depending on whether you own the cassette or the film roll, and if they were made after the 1980s, you will most likely find enough information thanks to the DX codes.

A bit of history about the DX encoding system

The DX (Digital Index) encoding system was introduced by Kodak in the 1980s to simplify 35 mm film handling, both for consumers and photofinishers.

Three types of DX codes are used:

1. DX barcode

On the left cassette, the DX CAS code. On the right one, the DX barcode.
On the left cassette, the DX CAS code. On the right one, the DX barcode.

The DX barcode is printed directly on the film cassette. It is scanned by film-processing machines and contains 6 digits:

Since the digits are directly written under the barcode, this is the easiest way to retrieve the manufacturer and the film type.

In the picture above, the DX barcode is 412503. With this 6-digit number, you can look for a match on the Big Film Database.

Note: this database might be shut down in the future, but the maintainer has published the source code. I am maintaining a modified version with additional features, though it is still experimental.

2. DX CAS code on the film’s cassette

The DX CAS code is also on the film cassette, but it is used by the camera. Instead of a barcode, it consists of 12 gray (metallic, conductive) or black (insulated) squares:

The camera can automatically detect the film speed and adjust exposure. To make an analogy with modern digital cameras, it is similar to the aperture mode (A), but with fixed ISO: you set the aperture, ISO is fixed, and the camera adjusts the exposure time accordingly.

3. DX film edge barcode

If your film is already developed, there is a good chance you no longer have the cassette. In this case, you have to retrieve the information from the film roll itself. You might find the label in a human-readable format, but often, you will have to rely on the DX edge barcode.

A 35mm roll, with the DX film edge barcode “40-9” on the bottom.
A 35mm roll, with the DX film edge barcode “40-9” on the bottom.

Like the cassette’s barcode, it contains the film manufacturer and type (digits 2 to 5 of the cassette’s DX barcode). This helps to automate the photofinishing process. For manually operated machines, a human-readable label might be written to help the operator, but it doesn’t always give us the commercial name of the film.

In the 1990s, this barcode was extended with a “half-frame” number to indicate the current frame: 1, 1A, 2, 2A, 3, 3A… They are two barcodes per frame, which ensures that at least one complete barcode remains when the film roll is cut at the end of a frame.

A 35mm roll from 1998. These wider DX edge barcodes “79-2” contain the half-frame number (from left to right: 62A, 63, 63A, 0). Also, a human-readable label indicates “Kodak DB-5”, but I guess the film emulsion is “Kodak VR200”.
A 35mm roll from 1998. These wider DX edge barcodes “79-2” contain the half-frame number (from left to right: 62A, 63, 63A, 0). Also, a human-readable label indicates “Kodak DB-5”, but I guess the film emulsion is “Kodak VR200”.

I’m pretty sure some specialized machine or scanners read this code for color processing, but I haven’t found any application or library that can read this kind of barcode. Probably because very few people need this.

In the meantime, I’ll explain how to interpret this barcode manually.

DX edge barcode explained

This Kodak patent helped me understand how to read a DX edge barcode:

Illustration from Kodak patent n°US4965628A, describing the fields of a DX edge film barcode.
Illustration from Kodak patent n°US4965628A, describing the fields of a DX edge film barcode.

There are two main parts:

The barcode is binary: a black bar is 1, and a white (or empty) bar is 0. Let’s detail each part:

DX edge barcode fields.
DX edge barcode fields.
DXN1 (red) Space DXN2 (orange) Frame number (green) Half-frame flag (cyan) Space Parity bit (rose)
1110000 0 0001 001010 1 0 1

Notes:

We now have enough information to query our film database, which tells us this film (112-1) is probably a Kodak Vericolor III, Type S. Very cool, isn’t it?

Update 2024: The wikipedia article about DX number has been improved by Mliu92. DX film edge encoding is now explained with a concrete example. Thank you!

Update 2026: If you have a lot of negatives to scan, this can be a daunting and error-prone task. I worked on an open-source library to automate this process. Check it out!

#C++ #Open-Source