Some software applications produce JPX (JPEG 2000 Part 2) files that are superficially indistinguishable from JP2. This applies, for example, to the Adobe JPEG 2000 plugin that comes with Adobe Photoshop (add version). In principle, JPX files can be distinguished from JP2 by the value of the brand field in the File Type Box. For JP2 this is 'jp2 ' (0x6a70 3220). The specification of JPX (15444-2annexm.pdf) states that a value of 'jpx ' (0x6a70 7820) shall be used for "files that are completely defined by" JPEG 2000 Part 2. However, if applications ignore this, such JPX files can be easily mistaken for JP2s.
Materials may be ingested that contain advanced features of JPX, even though identification tools will identify these as JP2. Since software support for JPX is still minimal, such files may not be rendered properly, and future migrations may result in loss of information (colour space information is particularly affected by this).
Files that contain features that are not permitted in JP2 will not pass validation by Jpylyzer.
|Tool||Affected if expression returns True|
|Jpylyzer||"/jpylyzer/isValidJP2 = 'False'"|
Location of brand field
The value of the brand field can be found at the following location in jpylyzer's output:
Identify files that are affected by this problem using Jpylyzer and do not accept them.
- Identify files that are affected by this problem using Jpylyzer.
- Document the issue and the associated risks, and mark affected materials in metadata.
- Normalisation of affected files to 'proper' JP2s may be considered for important collections (but this would require careful planning and risk assessment).
Both files created with Adobe Photoshop CS4 + Adobe JPEG2000 plugin 2.0. They both have JPX features, but will be identified as JP2 based on the Brand field:
Van der Knijff, J.M. JPEG 2000 for Long-term Preservation: JP2 as a Preservation Format. D-Lib Magazine Volume 17, Number 5/6. May 2011