MJ2

video/mj2

Safe

Magic Bytes

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

Motion JPEG 2000 (MJ2) is a video file format defined in Part 3 of the ISO/IEC 15444 standard by the Joint Photographic Experts Group. It serves as a container for sequences of JPEG 2000 images, supporting both lossless and lossy compression for medical imaging, digital cinema, and professional surveillance. While largely considered a legacy format compared to modern inter-frame codecs, it remains relevant in archival environments requiring high-quality independent frame access.

Extension

.mj2

MIME Type

video/mj2

Byte Offset

0

Risk Level

Safe

Validation Code

How to validate .mj2 files in Python

Python
def is_mj2(file_path: str) -> bool:
    """Check if file is a valid MJ2 by magic bytes."""
    signature = bytes([0x00, 0x00, 0x00, 0x0C, 0x6A, 0x50, 0x20, 0x20, 0x0D, 0x0A, 0x87, 0x0A])
    with open(file_path, "rb") as f:
        return f.read(12) == signature

How to validate .mj2 files in Node.js

Node.js
function isMJ2(buffer: Buffer): boolean {
  const signature = Buffer.from([0x00, 0x00, 0x00, 0x0C, 0x6A, 0x50, 0x20, 0x20, 0x0D, 0x0A, 0x87, 0x0A]);
  return buffer.subarray(0, 12).equals(signature);
}
Go
func IsMJ2(data []byte) bool {
    signature := []byte{0x00, 0x00, 0x00, 0x0C, 0x6A, 0x50, 0x20, 0x20, 0x0D, 0x0A, 0x87, 0x0A}
    if len(data) < 12 {
        return false
    }
    return bytes.Equal(data[:12], signature)
}

API Endpoint

GET /api/v1/mj2
curl https://filesignature.org/api/v1/mj2

Related Formats