Skip to content

0.17.0

Latest
Compare
Choose a tag to compare
@aous72 aous72 released this 22 Sep 04:52
· 1 commit to master since this release
f9fdf80

Adding support for NLT marker segment of type 3.

The code is not very complete, but it is in a useful state for publishing.

To make use of the NLT marker segment for type 3, partial support for the .pfm file format has been added.
For .pfm files, lossy compression is not supported -- it is possible to add support at some future point.
Reversible coding of .pfm files is supported, where the NLT marker is automatically inserted.
The current implementation supports no less than 27 bit for encoding and 26 bits decoding; you can get more precision if you disable colour transform (1 bit) and use no more than 5 levels of decomposition (1 bit). If more than that is required, a complete new path must be developed that uses 64-bit integers instead of 32-bit integers; this requires changes to all arithmetic and also changes to the block encoder and decoder.
Therefore floating point values stored in a .pfm file, which are 32-bit, need to be truncated.
Using the '-bit_depth' option, ojph_compress can perform this truncation.
'ojph_compress' should work correctly with codestreams generated with ojph_compress, converting truncated values back to normal floating point values.

All other features should be working.

Importantly, the code also fixes an important bug in the block decoder in commit 9f8011c

What's Changed

  • Adding support for NLT marker segment of type 3 by @aous72 in #154

Full Changelog: 0.16.0...0.17.0