Image MIME Reference
HSJ2
JPEG 2000 Image Sequence (Obsolete)
image/hsj2
VS
Khronos Texture
image/ktx
KTX
A complete technical comparison of JPEG 2000 Image Sequence (Obsolete) and Khronos Texture — covering compression, feature support, browser compatibility, magic bytes, and when to choose each format.
Equal browser support
Feature Support
| Feature | HSJ2 | KTX |
|---|---|---|
| Transparency (Alpha) | Yes | Yes |
| Animation Support | Yes | ✕ No |
| Progressive Loading | Yes | ✕ No |
| HDR Support | Yes | Yes |
| EXIF Metadata | Yes | ✕ No |
| ICC Color Profile | Yes | ✕ No |
JPEG 2000 Image Sequence (Obsolete)
image/hsj2
Extension
.hsj2
Container
HEIF / ISOBMFF (ISO/IEC 15444-16 Obsolete)
Compression
Lossy / Lossless
Algorithm
Motion JPEG 2000 (ISO/IEC 15444-3)
Color Depth
8-bit, 10-bit, 12-bit, 16-bit
Developed by
ISO/IEC JTC 1 / ITU-T
Released
2019
Magic Bytes
XX XX XX XX 66 74 79 70 68 73 6A 32
Khronos Texture
image/ktx
Extension
.ktx
Container
KTX (Khronos Texture 1.1)
Compression
Uncompressed / GPU Compressed (ASTC, ETC, BCn, PVRTC)
Algorithm
ASTCETC1 / ETC2BCn (DXT)PVRTCBasis Universal (in KTX2)
Color Depth
8-bit, 16-bit, 32-bit (Integer/Float)
Developed by
Khronos Group
Released
2010
Magic Bytes
AB 4B 54 58 20 31 31 BB 0D 0A 1A 0A
Browser Support Comparison
| Browser | HSJ2 | KTX |
|---|---|---|
|
|
✕ | ✕ |
|
|
✕ | ✕ |
|
|
✕ | ✕ |
|
|
✕ | ✕ |
|
|
✕ | ✕ |
HSJ2
HSJ2 Strengths
- Historically attempted to combine Motion JPEG 2000 sequences with the flexible metadata capabilities of the HEIF container
- Supported mathematically lossless compression and scalable wavelet decoding
Limitations
- Officially deprecated by the standardization body (ISO/IEC JTC 1)
- Completely superseded by image/hej2k, rendering hsj2 files obsolete for any new development or archiving
- Zero web browser compatibility and negligible modern software support
KTX
KTX Strengths
- Enables direct-to-GPU texture uploading, drastically reducing load times and CPU overhead in 3D applications
- Supports complex texture types natively (mipmaps, cubemaps, 3D volumes, texture arrays)
- Standardized across major Khronos APIs (OpenGL, Vulkan, WebGL) unlike vendor-specific formats like DDS
Limitations
- Requires custom JavaScript loaders to parse and display on the web
- Zero native support in consumer image viewers or 2D photo editing software
- Format fragmentation: a KTX file containing an ASTC payload will fail to render on hardware that only supports BCn compression (KTX2 and Basis Universal solve this)
When to choose which format
HSJ2
Use HSJ2 when…
- Legacy Archival
- Deprecated Workflows
KTX
Use KTX when…
- Real-time 3D Graphics
- WebGL / WebGPU Applications
- Mobile Games
- Virtual/Augmented Reality (VR/AR)