Network Working Group D. Singer Request for Comments: 3745 Apple Computer Category: Standards Track R. Clark Elysium Ltd D. Lee Yahoo Inc. April 2004 MIME Type Registrations for JPEG 2000 (ISO/IEC 15444) Status of this Memo This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited. Copyright Notice Copyright (C) The Internet Society (2004). All Rights Reserved. Abstract This document serves to register and document the standard MIME types associated with the ISO/IEC 15444 standards, commonly known as JPEG 2000 (Joint Photographic Experts Group). 1. Introduction This document describes the registration of the MIME [MIME1] sub- types image/jp2, video/mj2, image/jpx, and image/jpm. The image encoding is defined by [ISO-JPEG2000-1]. The still image file format to which this document refers is defined in Annex I of [ISO-JPEG2000-1]. Note that a file format is optional in [ISO-JPEG2000-1], but mandatory for the MIME sub-type. This document is not related to the definition of the MIME sub-type image/jpeg, which is partly defined by [ISO-JPEG-1], and partly by the file format specification defined in [JFIF]. JPEG 2000 is a new standard, intended to create a image coding system for many types of still images (bi-level, gray-level, color, multi- component) with different characteristics (natural images, scientific, medical, remote sensing, imagery, text, rendered graphics, etc.) allowing different imaging models (client/server, real-time transmission, image library archival, limited buffer and Singer, et al. Standards Track [Page 1] RFC 3745 MIME Type Registrations for JPEG 2000 April 2004 bandwidth resources, etc.) within a unified system. This coding system is intended to provide low bit-rate operation with rate- distortion and subjective image quality performance superior to existing standards, without sacrificing performance at other points in the rate-distortion spectrum. This standard is intended to serve still image compression needs that are currently not served by the current JPEG standards [ISO-JPEG-1], [ISO-JPEG-2], [ISO-JPEG-3], and [ISO-JPEG-4], and is intended to compliment, not replace, the current JPEG standards. JPEG 2000 is a modern wavelet-based codec that is expected to be widely used for still images. Its use for motion sequences is expected to be similar to JPEG: in those environments where only a single codec is required, and JPEG 2000 is available (e.g., digital still cameras recording short motion sequences) or where frame-by-frame coding is desired (no inter-frame coding). There is a standard file format for Motion JPEG 2000 sequences. This file format permits the carriage of audio in addition to the video. The format is derived from the ISO Base Media File Format as defined in [ISO-JPEG2000-12]. The visual coder in a Motion JPEG 2000 file is JPEG 2000. The Motion JPEG 2000 standard is specified in [ISO- JPEG2000-3]. The ISO Base Media File Format is jointly maintained by the ISO/IEC JPEG and MPEG committees. The MP4 format is also derived from the ISO Base Media File Format. Therefore, to identify this restricted usage, a new mime type is desirable. This file type is intended always to contain a video sequence, though simple audio is permitted in addition to the video. Therefore it falls correctly under the "video" branch of mime types. Also within WG1 of ISO there is an effort underway to define a standard file format for Compound Images. This file format optionally supports other coding systems, in addition to JPEG 2000, as needed. 2. JPEG 2000 Definition JPEG 2000 is defined in detail in [ISO-JPEG2000-1]. The documentation can be obtained from any national standards body or from ISO at http://www.iso.ch. Information as to its latest status, and downloads of the initial documents and some supporting documentation are available through the JPEG committee's official Web site at http://www.jpeg.org. Singer, et al. Standards Track [Page 2] RFC 3745 MIME Type Registrations for JPEG 2000 April 2004 While a brief scope and feature description is provided in this section as background information, the reader is directed to the original JPEG 2000 specification [ISO-JPEG2000-1] to obtain complete feature and technical details. 2.1. JPEG 2000 Scope JPEG 2000 is used to compress image data that typically comes from digital cameras, scanners, frame grabbers, complex image capture devices such as medical or satellite systems, and paint- and photo- retouching programs. Unlike previous JPEG standards, it includes information necessary to allow its use as a complete coding architecture. [ISO-JPEG2000-1] defines a set of lossless (bit- preserving) and lossy compression methods for coding continuous-tone, bi-level, gray-scale, or colour digital still images. It therefore: - specifies decoding processes for converting compressed image data to reconstructed image data; - specifies a codestream syntax containing information for interpreting the compressed image data; - specifies a file format; - provides guidance on encoding processes for converting source image data to compressed image data; - provides guidance on how to implement these processes in practice. [ISO-JPEG2000-1] is one of a series of standards which will cover the full range of facilities the new architecture is intended to offer. Approval has been given for JPEG to develop the following documents in addition to [ISO-JPEG2000-1]. - Part 2 - Coding extensions [ISO-JPEG2000-2]. This includes a more comprehensive file format and other extensions to the definitions in [ISO-JPEG2000-1]. The mime sub-type image/jpx is recommended to describe files based on this Part, and a separate RFC is planned to describe this usage and its associated file extensions of jpf and jpx. - Part 3 - Motion JPEG 2000 [ISO-JPEG2000-3]. This provides definitions of how the standard may be extended for use in recording time series of JPEG 2000 images with associated metadata such as audio objects. This document registers the mime sub-type video/mj2 for motion JPEG 2000, with associated file extensions mj2 and mjp2. Singer, et al. Standards Track [Page 3] RFC 3745 MIME Type Registrations for JPEG 2000 April 2004 - Part 4 - Conformance [ISO-JPEG2000-4]. This deals with testing of equipment and systems claimed to conform to the JPEG 2000 standards. - Part 5 - Reference software [ISO-JPEG2000-5]. This will provide developers with a source of publicly available reference software. Its role is envisaged as similar in concept to that played by the Independent JPEG Group (IJG) in publicizing the current [ISO- JPEG-1] standard. - Part 6 - Compound Image File Format [ISO-JPEG2000-6]. This describes a file format used to store compound documents using JPEG 2000 compression. These may contain scanned images, synthetic images or both. This work is based on the multi-layer Mixed Raster Content (MRC) imaging model, defined in ITU-T T.44 | ISO 16485. The mime sub-type image/jpm is recommended to describe files based on this Part. - Part 7 - Has been withdrawn - Part 8 - JPSEC (Security aspects) [ISO-JPEG2000-8]. This provides standardised tools and solutions in terms of specifications in order to ensure the security of transaction, protection of contents (IPR), and protection of technologies (IP), and to allow applications to generate, consume, and exchange JPEG 2000 Secured bitstreams. - Part 9 - JPIP (Interactive protocols) [ISO-JPEG2000-9]. This client-server protocol has been designed to exploit JPEG 2000's flexibility with respect to random access, codestream reordering and incremental decoding in a networked environment. - Part 10 - JP3D (Volumetric imaging) [ISO-JPEG2000-10]. This will provide extensions of JPEG 2000 for logically rectangular 3- dimensional data sets with no time component. - Part 11 - JPWL (Wireless applications) [ISO-JPEG2000-11]. This extends the elements in [ISO-JPEG2000-1] with mechanisms for error protection and correction. - Part 12 - ISO Base Media File Format [ISO-JPEG2000-12]. This is the part of the file format used by JPEG 2000 which is common with that used within MPEG-4 [ISO-MPEG4]. Singer, et al. Standards Track [Page 4] RFC 3745 MIME Type Registrations for JPEG 2000 April 2004 2.2. JPEG 2000 Features Some of the features of JPEG 2000 include: - JPEG 2000 is capable of describing bi-level, grayscale, palette- color, and full-color image data in several color spaces. - JPEG 2000 includes a number of compression schemes that allow developers to choose the best space or time tradeoff for their applications. - JPEG 2000 is designed to be extensible and to evolve gracefully as new needs arise. - JPEG 2000 allows the inclusion of an unlimited amount of private or special-purpose information within the metadata of its file format. - These are features that JPEG 2000 shares with the definition of TIFF [RFC-TIFF]. In addition, JPEG 2000 offers: - state of the art lossless and lossy compression, based on wavelet technology, within a single codestream - low bit-rate compression performance effective down to below 0.25 bits per pixel for high resolution gray-scale images - large image handling (greater than 64k x 64k pixels) without tiling - single decompression architecture. The current JPEG standard [ISO-JPEG-1] has 44 modes, many of which are application specific and not used by the majority of JPEG decoders. - features to improve transmission in noisy environments, for example mobile radio / telephony - capability to handle both natural and computer generated imagery 3. Security Considerations JPEG 2000 utilizes a structure that can store image data, and metadata corresponding to this image data. The fields defined in the JPEG 2000 standards are of a descriptive nature and provide information that may be useful to facilitate viewing, rendering and cataloging of images by a recipient. As such, the fields currently defined in the JPEG 2000 standards do not in themselves create additional security risks, since the fields are not used to induce Singer, et al. Standards Track [Page 5] RFC 3745 MIME Type Registrations for JPEG 2000 April 2004 any particular behavior by the recipient application. It should be noted that selected metadata fields may encompass information partly intended to protect the image against unauthorized use or distribution. In this case the intention is that alteration or removal of the data in the field would be treated as an offense under national agreements based World Intellectual Property Organization (WIPO) treaties. JPEG 2000 has an extensible structure, so that it is theoretically possible that metadata fields could be defined in the future which could be used to induce particular actions on the part of the recipient, thus presenting additional security risks, but this type of capability is currently not supported in the referenced JPEG 2000 specification. Encryption, signing, or authentication of these file formats can use mechanisms defined in [ISO-JPEG2000-8]. 4. MIME Types 4.1. Still Image Registration The image/jp2 content-type refers to all of the profiles and extensions that build on JPEG 2000 [ISO-JPEG2000-1] encoded image data. The file format is also defined in [ISO-JPEG2000-1], Annex I. The recommended file suffix is "jp2" To: ietf-types@iana.org Subject: Registration of Standard MIME media type image/jp2 MIME media type name: image MIME subtype name: jp2 Required parameters: none Optional parameters: none It is up to the implementation to determine the application (if necessary) and render the image to the user. Encoding considerations: files are binary and should be transmitted in a suitable encoding without CR/LF conversion, 7-bit stripping etc.; base64 is a suitable encoding; Security considerations: see above Interoperability considerations: The ability of implementations to handle all the defined applications (or profiles within applications) of JPEG 2000 may not be ubiquitous. As Singer, et al. Standards Track [Page 6] RFC 3745 MIME Type Registrations for JPEG 2000 April 2004 a result, implementations may decode and attempt to display the encoded JPEG 2000 image data only to determine that the image cannot be rendered either partially or in full. Published specification: ISO/IEC 15444-1 defines the JPEG 2000 codec and the jp2 file format Applications which use this media type: Imaging, fax, messaging and multi-media Additional information: Magic number(s): 12 byte string: X'0000 000C 6A50 2020 0D0A 870A' (for all JPEG-2000 family files) File extension(s): jp2 and jpg2 are both declared at http://www.nist.gov/nics/; jp2 is preferred Macintosh File Type Code(s): 'jp2 ' Person & email address to contact for further information: JPEG Webmaster - mimesupport@jpeg.org JPEG Convenor - convenor@jpeg.org JPEG2000 Editor - J2KEditor@jpeg.org Intended usage: COMMON Change controller: JPEG Webmaster 4.2. Extended Still Image Registration The image/jpx content-type refers to all of the profiles and extensions that build on JPEG 2000 [ISO-JPEG2000-2] encoded image data. The file format is also defined in [ISO-JPEG2000-2], Annex M. The recommended file suffix is "jpf" To: ietf-types@iana.org Subject: Registration of Standard MIME media type image/jpx MIME media type name: image MIME subtype name: jpx Required parameters: none Optional parameters: none It is up to the implementation to determine the application (if necessary) and render the image to the user. Encoding considerations: files are binary and should be transmitted in a suitable encoding without CR/LF conversion, 7-bit stripping etc.; base64 is a suitable encoding; Security considerations: see above Singer, et al. Standards Track [Page 7] RFC 3745 MIME Type Registrations for JPEG 2000 April 2004 Interoperability considerations: The ability of implementations to handle all the defined applications (or profiles within applications) of JPEG 2000 may not be ubiquitous. As a result, implementations may decode and attempt to display the encoded JPEG 2000 image data only to determine that the image cannot be rendered either partially or in full. Published specification: ISO/IEC 15444-2, JPEG 2000 Extensions Applications which use this media type: Imaging, fax, messaging and multi-media Additional information: Magic number(s): 12 byte string: X'0000 000C 6A50 2020 0D0A 870A' (for all JPEG-2000 family files) File extension(s): jpf is declared at http://www.nist.gov/nics/. jpx is also an acceptable file extension, although it is not recommended for files on a desktop computer that are not directly associated with a MIME media type Macintosh File Type Code(s): 'jpx ' Person & email address to contact for further information: JPEG Webmaster - mimesupport@jpeg.org JPEG Convenor - convenor@jpeg.org JPEG 2000 Editor - J2KEditor@jpeg.org Intended usage: COMMON Change controller: JPEG Webmaster 4.3. Motion Registration MIME media type name: video MIME subtype name: mj2 Required parameters: none Optional parameters: none Encoding considerations: files are binary and should be transmitted in a suitable encoding without CR/LF conversion, 7-bit stripping etc.; base64 is a suitable encoding; Security considerations: see above Interoperability considerations: A number of interoperating implementations exist within the MPEG-4 community with the formats derived from the ISO Base Media File Singer, et al. Standards Track [Page 8] RFC 3745 MIME Type Registrations for JPEG 2000 April 2004 Format; and that community has reference software for reading and writing the file format. Reference software for MJP2 is also available. Published specification: ISO/IEC 15444-3, Motion JPEG 2000 Applications: Multimedia Additional information: Magic number(s): 12 byte string: X'0000 000C 6A50 2020 0D0A 870A' (for all JPEG-2000 family files) File extension(s): mj2 and mjp2 are both declared at http://www.nist.gov/nics/; mj2 is preferred Macintosh File Type Code(s): mjp2 is registered with Apple Person to contact for info: David Singer, singer@apple.com Intended usage: Common Author/Change controller: David Singer, MJP2 file format editor 4.4. Compound Image Registration The image/jpm content-type refers to all of the profiles and extensions that build on JPEG 2000 [ISO-JPEG2000-1] encoded image data. The file format is also defined in [ISO-JPEG2000-6]. The recommended file suffix is "jpm" To: ietf-types@iana.org Subject: Registration of Standard MIME media type image/jpm MIME media type name: image MIME subtype name: jpm Required parameters: none Optional parameters: none It is up to the implementation to determine the application (if necessary) and render the image to the user. Encoding considerations: files are binary and should be transmitted in a suitable encoding without CR/LF conversion, 7-bit stripping etc.; base64 is a suitable encoding; Security considerations: see above Singer, et al. Standards Track [Page 9] RFC 3745 MIME Type Registrations for JPEG 2000 April 2004 Interoperability considerations: A number of interoperating implementations are under development within the JPEG 2000 community. Published specification: ISO/IEC 15444-6, JPEG 2000 Compound Image File Format Applications: Imaging, fax, messaging, scanning Additional information: Magic number(s): 12 byte string: X'0000 000C 6A50 2020 0D0A 870A' (for all JPEG-2000 family files) File extension(s): jpm and jpgm are both declared at http://www.nist.gov/nics/; jpm is preferred Macintosh File Type Code(s): 'jpm ' Person & email address to contact for further information: JPEG Webmaster - mimesupport@jpeg.org JPEG Convenor - convenor@jpeg.org JPEG 2000 Editor - J2KEditor@jpeg.org Intended usage: COMMON Change controller: JPEG Webmaster 5. IANA Considerations This document registers the MIME types image/jp2, image/jpx, video/mj2, and image/jpm, defined above. 6. Acknowledgments This document has benefited greatly by contributions from many people, including Eric Edwards and Takahiro Fukuhara. Their contribution is gratefully acknowledged. 6. References 6.1. Normative References [ISO-JPEG2000-1] ITU-T Recommendation T.800 | ISO/IEC 15444-1. International Organization for Standardization, "JPEG 2000 Image Coding System: Core Coding System". [ISO-JPEG2000-2] International Organization for Standardization, "JPEG 2000 Image Coding System: Extensions", IS 15444-2. [ISO-JPEG2000-3] International Organization for Standardization, "Motion JPEG 2000", IS 15444-3. Singer, et al. Standards Track [Page 10] RFC 3745 MIME Type Registrations for JPEG 2000 April 2004 [ISO-JPEG2000-6] International Organization for Standardization, "JPEG 2000 Image Coding System: Compound Image File Format", IS 15444-6. [ISO-JPEG2000-12] International Organization for Standardization, "JPEG 2000 Image Coding System: ISO base media file format", IS 15444-12 (technically identical to ISO/IEC 14496-12. [MIME1] Freed, N. and n. Borenstein, "Multipurpose Internet Mail Extensions [MIME] Part One: Format of Internet Message Bodies", RFC 2045, November 1996. 6.2. Informative References [ISO-JPEG2000-4] International Organization for Standardization, "JPEG 2000 Image Coding System: Conformance Testing", IS 15444-4. [ISO-JPEG2000-5] International Organization for Standardization, "JPEG 2000 Image Coding System: Reference Software", IS 15444-5. [ISO-JPEG2000-8] International Organization for Standardization, "JPEG 2000 Image Coding System: JPSEC - Secure JPEG 2000", IS 15444-8. [ISO-JPEG2000-9] International Organization for Standardization, "JPEG 2000 Image Coding System: JPIP - Interactivity tools, APIs and protocols", IS 15444-9. [ISO-JPEG2000-10] International Organization for Standardization, "JPEG 2000 Image Coding System: JP3D - 3-D and floating point data", IS 15444-10. [ISO-JPEG2000-11] International Organization for Standardization, "JPEG 2000 Image Coding System: JPWL - Wireless", IS 15444-11. [ISO-JPEG-1] ITU-T Recommendation T.81 | ISO/IEC 10918-1:1994, Information technology - Digital compression and coding of continuous-tone still images: Requirements and guidelines. Singer, et al. Standards Track [Page 11] RFC 3745 MIME Type Registrations for JPEG 2000 April 2004 [ISO-JPEG-2] ITU-T Recommendation T.83 | ISO/IEC 10918-2:1995, Information technology - Digital compression and coding of continuous-tone still images: Compliance testing. [ISO-JPEG-3] ITU-T Recommendation T.84 | ISO/IEC 10918-3:1996, Information technology - Digital compression and coding of continuous-tone still images: Extensions. [ISO-JPEG-4] ITU-T Recommendation T.86 | ISO/IEC 10918-4, Information technology - Digital compression and coding of continuous-tone still images: Registration of JPEG Profiles, SPIFF Profiles, SPIFF Tags, SPIFF colour Spaces, APPn Markers, SPIFF, Compression types and Registration authorities (REGAUT). [JFIF] JPEG File Interchange Format, Version 1.02. Published and made freely available by C-Cube Microsystems. Corporate Communications, 1778 McCarthy Blvd., Milpitas, CA 95035 [RFC-TIFF] Parsons, G. and J. Rafferty, "Tag Image File Format (TIFF) - image/tiff MIME Sub-type Registration", RFC 3302, September 2002. [ISO-MPEG4] ISO/IEC 14496, Information technology - Coding of Audio-Visual Objects. Singer, et al. Standards Track [Page 12] RFC 3745 MIME Type Registrations for JPEG 2000 April 2004 7. Authors' Addresses David Singer Apple Computer, Inc. One Infinite Loop, MS:302-3MT Cupertino CA 95014 USA Phone: +1 408 974 3162 EMail: singer@apple.com Richard Clark (Current JPEG Webmaster) Elysium Ltd Milton House Whitehill Road Crowborough East Sussex TN6 1LB UK Phone: +44 1892 667411 Fax: +44 1892 667433 EMail: richard@elysium.ltd.uk Dr. Daniel T Lee (Current JPEG Convenor) Yahoo!, Inc. 701, First Avenue Sunnyvale, California 94089, USA Phone: +1 408 349 7051 Fax: +1 253 830 0372 EMail: dlee@yahoo-inc.com Singer, et al. Standards Track [Page 13] RFC 3745 MIME Type Registrations for JPEG 2000 April 2004 8. Full Copyright Statement Copyright (C) The Internet Society (2004). This document is subject to the rights, licenses and restrictions contained in BCP 78 and except as set forth therein, the authors retain all their rights. This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Intellectual Property The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79. Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org. Acknowledgement Funding for the RFC Editor function is currently provided by the Internet Society. Singer, et al. Standards Track [Page 14]