// header (5 bytes)
- short - Image width in pixels
- short - Image height in pixels
- byte(1) - Bit depth of each pixel
byte(x) - Pixel data
Pixel bit depth is always either 24 or 32; 24-bit pixels use RGB888 while 32-bit pixels use RGBA8888.
Because of the very simple format, it's trivial to calculate filesize in bytes to confirm a file is valid:
width * height * (depth / 8) + 5. For example, a 1024x1024 32-bit image should have a filesize of 4,194,309 bytes.