JPEG 2000 JP2 MIME Type

Learn what image/jp2 files contain, how JP2 differs from JPEG and other JPEG 2000 formats, which applications open them, and what Poly supports.

MIME type details for image/jp2

In active use
MIME typeimage/jp2
Extensions
.jp2.jpg2
Magic number00 00 00 0C 6A 50 20 20 0D 0A 87 0A
First standardized2000
Created byJoint Photographic Experts Group
Browser supportNo native support in current major browsers
Example applicationsAdobe Photoshop, Apple Preview, ImageMagick
Poly supportPartial. Poly recognizes image/jp2 and .jp2 filenames, but its current image decoder cannot decode JPEG 2000 pixels.
Indexed by PolyPartial. The filename is searchable, but decoding failure prevents metadata extraction, thumbnails, and visual-similarity indexing.
Preview in PolyNo. Poly routes JP2 files to its image viewer, but cannot create the rendered thumbnail or PNG fallback that the viewer needs.
Poly agentNo. The agent's image-reading path depends on a rendered thumbnail, which Poly cannot currently produce from JP2.

What does image/jp2 mean?

The image/jp2 media type identifies a still image in the JP2 file format defined by JPEG 2000 Part 1. A JP2 file wraps one JPEG 2000 codestream with essential information such as image dimensions and color space, and it can also carry resolution, XML, rights, or application-specific metadata.12

JPEG 2000 is the coding system. JP2 is its basic interchange container. That distinction is similar to the relationship between JPEG coding and JFIF, but the two JPEG generations are not compatible.

The preferred extension is .jp2. RFC 3745 also records .jpg2, although it is much less common. A conforming JPEG 2000 family file starts with this 12-byte signature:

00 00 00 0C 6A 50 20 20 0D 0A 87 0A

That signature is more reliable than the filename. A raw JPEG 2000 codestream, often named .j2k, .j2c, or .jpc, is not a JP2 file and should not be served as image/jp2.1

Why was JPEG 2000 created?

ISO published the first edition of ISO/IEC 15444-1 in December 2000. The format was designed for varied still-image work, including photography, medical and satellite imagery, scanned documents, and large image libraries.34

Unlike classic JPEG's block-based transform, JPEG 2000 uses wavelet coding. One system supports both lossy and mathematically lossless compression, high bit depths, very large images, progressive decoding by quality or resolution, and access to selected regions without decoding the whole image.24

Those capabilities explain why JP2 appears in controlled imaging systems and cultural-heritage workflows. They do not make it a drop-in web replacement for JPEG. Decoder coverage, profile support, and browser interoperability matter just as much as coding features.

Lossless describes the relationship between the source pixels and the decoded pixels. A file with a .jp2 extension can still contain a lossy codestream, so the extension alone does not prove archival fidelity.

How to open a JP2 file

Use an application with an explicit JPEG 2000 decoder:

  • Adobe lists JPEG 2000 among the graphic formats Photoshop can import and export.5
  • Apple Preview can open JPEG 2000 and export it to formats such as JPEG, PNG, or TIFF.6
  • ImageMagick can read and write JP2 when its JPEG 2000 delegate is available.7

Current mainstream browsers should not be treated as JP2 viewers. Chrome, Edge, Firefox, and Opera do not decode the format. Safari supported it through Safari 17.6 on macOS and iOS 17.7, but WebKit removed that support before Safari 18.89

For a website, convert the image or provide a broadly supported fallback. Setting an image/jp2 HTTP header does not add a decoder to the browser.

Support in Poly

Poly recognizes the registered image/jp2 identifier and infers it from .jp2 filenames. It does not infer the registered .jpg2 extension.

The current indexing pipeline then treats the file as an image, but decoding stops in Poly's general Rust image loader. That decoder has no JPEG 2000 backend. As a result:

  • The file can be stored, synced, shared, versioned, and found by filename.
  • Poly does not create WebP thumbnails or visual-similarity embeddings from its pixels.
  • JPEG 2000 metadata is not extracted.
  • The image viewer cannot render a thumbnail or transcode the original to PNG.
  • The Poly agent cannot inspect the image because its reliable image-reading path uses a generated thumbnail.
The Supported File Types table lists JP2 separately because recognizing the type does not mean Poly can decode it.

Converting JP2 to a common format

Choose the output for the job:

DestinationBest forImportant tradeoff
PNGLossless interchange, diagrams, and browser displayLarge high-resolution images can grow substantially
TIFFPreservation or editing workflows that need high bit depth or rich metadataBroad in professional tools, weak on the web
JPEGPhotographs that need maximum compatibilityAdds a lossy generation unless the JP2 source was already lossy and the workflow accepts further loss
WebP or AVIFEfficient delivery in current browsersVerify color, bit depth, and metadata handling during conversion

ImageMagick documents a direct conversion command:

magick input.jp2 output.png

Before deleting the original, compare pixel dimensions, bit depth, color profile, alpha, and metadata. Converting a lossless JP2 to JPEG discards information. Converting a lossy JP2 to PNG prevents another lossy save, but it cannot restore details already removed by the JP2 encoder.

JP2, JPX, J2K, and JPEG are different

The JPEG 2000 family has several related identifiers:

NameTypical extensionMedia typeWhat it contains
JP2.jp2image/jp2Part 1 still-image container with one compatible JPEG 2000 codestream
Raw codestream.j2k, .j2c, .jpcimage/j2cCompressed JPEG 2000 data without the JP2 wrapper
JPX.jpx, .jpfimage/jpxPart 2 extensions such as multiple codestreams, richer color descriptions, composition, and animation
Motion JPEG 2000.mj2, .mjp2video/mj2A sequence of independently coded JPEG 2000 frames, optionally with audio
JPEG.jpg, .jpegimage/jpegThe older and incompatible JPEG coding family, commonly in JFIF or Exif files

Renaming one extension to another changes none of these structures. Decode and re-encode when you need a different format.

Metadata, security, and interoperability

JP2 can carry XML, UUID-addressed application data, resolution information, color data, and intellectual-property metadata.4 Preserve those boxes deliberately when migrating a collection. A simple raster conversion may keep the visible pixels while silently dropping descriptive, rights, or geospatial information.

RFC 3745 also warns that implementations may support only some JPEG 2000 profiles. A decoder can recognize the container and still fail to render all or part of the image.1 Test representative files with the exact software used in production, especially for unusual bit depths, color spaces, large dimensions, or specialized profiles.

As with any complex binary image, process untrusted JP2 files with a maintained decoder, apply memory and pixel limits, and avoid assuming that a small compressed file will decode to a small image.

Footnotes

  1. Singer, D., et al. RFC 3745: MIME Type Registrations for JPEG 2000. Internet Engineering Task Force, 2004. 2 3
  2. Joint Photographic Experts Group. Overview of JPEG 2000. JPEG Committee. 2
  3. International Organization for Standardization. ISO/IEC 15444-1:2000, JPEG 2000 Core Coding System. First edition published December 2000.
  4. Library of Congress. JPEG 2000 Part 1 (Core) JP2 File Format. Sustainability of Digital Formats. 2 3
  5. Adobe. Supported File Formats in Photoshop.
  6. Apple. Convert Image File Types Using Preview on Mac.
  7. ImageMagick. JP2 Encoding Options.
  8. WebKit. Remove the Support for JPEG2000. Change landed in 2024.
  9. Can I Use. JPEG 2000 Image Format Browser Support. Compatibility data accessed August 2026.
© Poly Corp. 2026