JPEG 2000

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
(Specifications: Replaced links on old.jpeg.org (which is not online anymore) with corresponding WayBack links)
(Software)
Line 100: Line 100:
 
* [https://github.com/cureos/csj2k CSJ2K]
 
* [https://github.com/cureos/csj2k CSJ2K]
 
* [https://github.com/GrokImageCompression/grok Grok]
 
* [https://github.com/GrokImageCompression/grok Grok]
 +
* [https://github.com/faceless2/jpeg2000 jpeg2000] (fork of JJ2000, based on Sun JAI adaptation with JAI dependency removed)
 
* [[XnView]]
 
* [[XnView]]
 
* [[Wikipedia:Kakadu (software)|Kakadu]]
 
* [[Wikipedia:Kakadu (software)|Kakadu]]

Revision as of 16:31, 1 October 2018

File Format
Name JPEG 2000
Ontology
Extension(s) .jp2, .jpf, .jpx, .jpm, .mj2, others
MIME Type(s) image/jp2, image/jpx, image/jpm, video/mj2

JPEG 2000 (or JPEG2000) is standard that defines a wavelet-based raster image compression format, and a family of associated file formats, protocols, etc. (For the older JPEG-1, see JPEG.)

For details about specific formats, see:

Contents

Disambiguation

JPEG 2000 is sometimes incorrectly used as a synonym for JP2, and vice versa. Although JP2 might be the most important part of the JPEG 2000 standard, it is only one small part of it.

In some contexts, JPEG 2000 is used to mean the compressed codestream format, instead of the whole standard.

The terms JPEG 2000 and JPEG2000 (with and without a space) seem to be used interchangeably. The parts of the official specification that are freely available use only JPEG 2000, so that is probably the preferred form. But it must have been settled on late in the standardization process: even some of the committee drafts prefer JPEG2000.

Details

The JPEG 2000 standard consists of many parts, including:

Format

At the highest level, JPEG 2000 files (JP2, JPX, JPM, and MJ2, but not the codestream format) consist of a hierarchical sequence of tagged "boxes" (boxes/atoms format). It is the same format used by QuickTime and MP4, but with different terminology.

Identification

Most JPEG 2000-related files (but not the codestream format) begin with bytes 00 00 00 0c 6a 50 20 20 0d 0a 87 0a.

This byte sequence represents a box of type "jP  " (JPEG 2000 signature), which contains an arbitrary 4-byte signature (0d 0a 87 0a).

Brands

The JPEG 2000 file formats (except JPEG 2000 codestream) use a concept called brands. (The term profile is sometimes used as a synonym for brand, but this can be confusing because profile is also used to mean any subformat, regardless of whether it has a corresponding brand.)

A brand corresponds to one of the major file formats (JP2, JPX, etc.), or a defined subformat of one of them. Each brand is assigned an identifier consisting of four ASCII characters.

Every JPEG 2000 file has a primary brand, indicating the major file format it is based on. The primary brand's identifier usually appears in the file at offset 20.

A file also has a compatibility list, containing any number of brands. The compatibility list usually begins at offset 28.

See Boxes/atoms format#Brands for more information about brands.

Known brands

Identifier Description Reference
"jp2 " JP2 JP2 specification
"jpx " JPX JPX specification
"jpxb" Baseline JPX JPX specification
"jpm " JPM JPM specification
"mjp2" Motion JPEG 2000 MJ2 specification
"mj2s" Motion JPEG 2000 Simple Profile MJ2 specification

Specifications

See also the articles about the specific file formats. The most important specifications are not freely available, but the committee drafts are.

Software

Sample files

Links

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox