SixLabors / SixLabors/ImageSharp

EXR Format Supported and Unsupported Features

Open
#3,116 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

formats:exr
Dominant language
C#
Stars
8k
Forks
899
Avg merge
1d 5h
Merged PRs (30d)
7

Description

This is a tracking issue for EXR features which are currently supported and which are not.

Supported pixel types:

  • Half: 16-bit floating-point numbers
  • Float: 32-bit IEEE-754 floating-point numbers
  • Uint: 32-bit unsigned integers;

Supported compression's for decoding:

  • NO_COMPRESSION: pixel data is not compressed
  • RLE_COMPRESSION: run length encoding
  • ZIPS_COMPRESSION: zlib compression, one scan line at a time
  • ZIP_COMPRESSION: zlib compression, in blocks of 16 scan lines
  • B44_COMPRESSION: lossy 4-by-4 pixel block compression, fixed compression rate
  • B44A_COMPRESSION: lossy 4-by-4 pixel block compression, flat fields are compressed more
  • DWAA_COMPRESSION: lossy DCT based compression, in blocks of 32 scanlines. More efficient for partial buffer access.
  • DWAB_COMPRESSION: lossy DCT based compression, in blocks of 256 scanlines. More efficient space-wise and faster to decode full frames than DWAA_COMPRESSION.
  • PIZ_COMPRESSION: piz-based wavelet compression
  • PXR24_COMPRESSION: lossy 24-bit float compression, Pull-Request
  • HTJ2K256_COMPRESSION: JPEG 2000 lossless coding, in blocks of 256 scanlines and using the High-Throughput block coder specified in Rec. ITU-T T.814 and ISO/IEC 15444-15. The compressor offers both speed and high coding efficiency.
  • HTJ2K32_COMPRESSION: Same as HTJ2K256_COMPRESSION, but in blocks of 32 scanlines, More efficient for partial buffer access, but slightly less efficient space-wise.

Other EXR image features:

  • Tiled images
  • Multi-part EXR files

The EXR specification can be found here: https://openexr.com/en/latest/index.html

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the EXR specification linked in the issue and compare its unchecked compression and image features with the repository's current EXR support. Done means implementing the selected missing features, validating them against suitable EXR files or tests, and updating the tracking checklist.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
computer-graphics
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.