Skip to content

Register plugin 32033 - #282

Open
ajelenak wants to merge 4 commits into
masterfrom
register-32033
Open

Register plugin 32033#282
ajelenak wants to merge 4 commits into
masterfrom
register-32033

Conversation

@ajelenak

@ajelenak ajelenak commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Register plugin ID 32033 for HTJ2K compression.

@t20100 t20100 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks to have registered the filter!
Here are some suggestions and updates for the description of the filter.

Comment thread docs/RegisteredFilterPlugins.md Outdated
Comment thread docs/RegisteredFilterPlugins.md Outdated
ajelenak and others added 2 commits August 17, 2026 14:23
Co-authored-by: Thomas VINCENT <thomas.vincent@esrf.fr>
Co-authored-by: Thomas VINCENT <thomas.vincent@esrf.fr>
@ajelenak

Copy link
Copy Markdown
Contributor Author

Thanks @t20100. I accepted your suggestions.

Comment on lines +918 to +938
#### Plugin ID `32033` <a name="htj2k"></a>

[High Throughput JPEG 2000 (HTJ2K)](https://jpeg.org/jpeg2000/htj2k.html) is an addition to the JPEG 2000 family of International Standards developed by JPEG Committee (ISO/IEC JTC 1/SC 29/WG 1).
HTJ2K brings an order of magnitude increase in throughput to JPEG 2000 at the expense of slightly reduced coding efficiency.
Plugin features:

* Bare high-throughput JPEG2000 codestream.
* Lossless compression only. For lossy compression use an HTJ2K library and write the chunk directly with `H5Dwrite_chunk`.
* Limited support of datatypes to ensure different HTJ2K libraries can read the chunks: `int8`, `uint8`, `int16`, `uint16`.
* Chunk shapes with at most 3 non-unity dimensions.
* Limited JPEG2000 "components": For chunks with 3 non-unity dimensions, the last non-unity dimension must be 3.
* Not limited to a particular HTJ2K implementation.

Plugin's `cd_values[]` are described at https://github.com/silx-kit/h5z-htj2k#filter-cd_values.

Repository: https://github.com/silx-kit/h5z-htj2k.

##### Contact

https://github.com/silx-kit/h5z-htj2k

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just realized this is added before filter ID 32032 while all the other filters are ordered by ID: maybe best to move the htj2k description after BitRound to avoid adding ID 32033 for the next new filter.

* Lossless compression only. For lossy compression use an HTJ2K library and write the chunk directly with `H5Dwrite_chunk`.
* Limited support of datatypes to ensure different HTJ2K libraries can read the chunks: `int8`, `uint8`, `int16`, `uint16`.
* Chunk shapes with at most 3 non-unity dimensions.
* Limited JPEG2000 "components": For chunks with 3 non-unity dimensions, the last non-unity dimension must be 3.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* Limited JPEG2000 "components": For chunks with 3 non-unity dimensions, the last non-unity dimension must be 3.
* Limited JPEG2000 "components" support: For chunks with 3 non-unity dimensions, the last non-unity dimension must be 3.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants