A JPEG-LS plugin for the Pillow imaging library
Project description
JPEG-LS plugin for Python Pillow
A plugin for the Python Pillow imaging library for the JPEG-LS codec, based on the Charls JPEG-LS implemetation. Python bindings implemented using pybind11.
Usage
pip install .
With Pillow
import pillow_jpls
from PIL import Image
from io import BytesIO
img = Image.open("image.jls")
img.save("image_copy.jls)
# Saving to a buffer
buffer = BytesIO()
img.save(buffer, "JPEG-LS")
Options
The encoder supports the following options. See the specification for details, and the tests for example usage.
near_lossless
:0
is lossless - the default.interleave
: one ofnone
,line
orsample
bits_per_component
: override the number of bits encoded per component, otherwise taken from the image formatmaxval
: override the maximum value of any component, otherwise taken frombits_per_component
t1
t2
t3
reset
Build
The build is driven by PEP 517 and Scikit Build. cibuildwheel is used to generate packages using Github Actions.
pip install pep517
python -m pep517.build --binary .
Tests
A suite of tests covering the applicable conformance tests from the specification is provided. You will need git-lfs to clone the data.
pip install pytest .
pytest -v test
Limitations
16 bit multichannel images are not supported, as these are not supported in Pillow. 16bit greyscale images are supported, however.
References
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Hashes for pillow_jpls-1.0.0-pp37-pypy37_pp73-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6b45d50f5db260a657ccece564e33046b328a41c2a9311186f256045fb139299 |
|
MD5 | 1d53c32af77b1bd051e790c2aa847246 |
|
BLAKE2b-256 | 95e62224a1b3ce398b2d7ddead3f4b241d22e39954136a42fcec2d3228e23842 |
Hashes for pillow_jpls-1.0.0-pp37-pypy37_pp73-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0c1203d9e162ebe4cf5aab5db4aed4957d327c97ecbcbd050aea49510e1f418f |
|
MD5 | dca400a82a0fcc214ad511b8c2689c4d |
|
BLAKE2b-256 | 67897ad4c8a5eabe5a290a8b0db683a4621aa27b56721ad490ee65cf1c663811 |
Hashes for pillow_jpls-1.0.0-pp36-pypy36_pp73-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2b453dc5a4e984d0e1ae416bfe6c57467e0cf4d0ffabe27644a159f97e059235 |
|
MD5 | 6d458e7c69eef792e282a36ea6d29076 |
|
BLAKE2b-256 | f9840eedfb8c386709c349a369af2bbedffad811f064fffa57bae3266810f66a |
Hashes for pillow_jpls-1.0.0-pp36-pypy36_pp73-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | af41bf14d5135b4b40d9ec26b40ebd814e0f5d833cd7840fd9f1dc766dd8bfb4 |
|
MD5 | f9abc05f2f8d7bfdbcfba6658d32428b |
|
BLAKE2b-256 | 5659e8e41157a10309ab41b7818347b325ea7e810996ef59cd77b6c8e1f80ae0 |
Hashes for pillow_jpls-1.0.0-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 213dfe375b5d4ff2c60e09c9f9e64cf85e7b0695c986e2957eaf33495f6d89d9 |
|
MD5 | d2106583ad0930b18f2a8ea9951af4f8 |
|
BLAKE2b-256 | ea9942f0ab73db971da36bf59e228fe5b78a48228b8cfa1ae50f4d410b552373 |
Hashes for pillow_jpls-1.0.0-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 22c153a198f0e53b7c3d339bcc645cedd82442d1ca5dd3d35d1e2191edbe7d74 |
|
MD5 | f79a903bd45a6e95bd06f6458af88d69 |
|
BLAKE2b-256 | eae9967d3289e325d7122185bc17d125a1518f883a50bfaba21f85a0152b3582 |
Hashes for pillow_jpls-1.0.0-cp39-cp39-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3126cca30c94c09d1a159cb332f4d8c6b6dadc6c2c189040ea556bf1a796c94c |
|
MD5 | c240cc9fb6990c69d4588c0471d467e6 |
|
BLAKE2b-256 | 598c99c0e3045cfba7bb19b7251aee25e958f755ef06798d15e26b5ceae9a0eb |
Hashes for pillow_jpls-1.0.0-cp39-cp39-manylinux2010_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 835dcdf8f7530fd15513d96274cb7455119ccd5ed596fb162ee7fde81e5094bd |
|
MD5 | e4fa02255c11762f7444f5ef0d98d602 |
|
BLAKE2b-256 | 0ccfbde92503099fbeedcd580567714c71978802f32ef79e59cb2c4b0c640184 |
Hashes for pillow_jpls-1.0.0-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | eb393560e5f561a1de1f7cd36835132474fc5194ff1c50c9130fdfde05379711 |
|
MD5 | db6ab834157b5aa324e1bd247e318ec1 |
|
BLAKE2b-256 | 6a983b43ba77829ac32fe1fa3be5865afbf9c623f085ad7259e717ded1f07be5 |
Hashes for pillow_jpls-1.0.0-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 656c5da17393b64e51b2a5229b3af3156e5fb0a20f0578179834b5aca7b689b6 |
|
MD5 | d56906f6f92f5e1ea31f1c4639fd91b1 |
|
BLAKE2b-256 | e484fbb8ce477cf315d1c1f48ec7f74feded2cc07692442b8ae322b45027b079 |
Hashes for pillow_jpls-1.0.0-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aaa102bcc7d8645612c6fda4360345e5bd241a7ccd108e7dc92e2c8b186e80e1 |
|
MD5 | 88d07c2f207a961914079c1cff56ef1b |
|
BLAKE2b-256 | 6917deb2399b1f33f01e13cc22189deaad0262a6de02debe253bfd32cc482a1e |
Hashes for pillow_jpls-1.0.0-cp38-cp38-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ddc16e8f8bc0e66c76a86948195c06c292bd888af52424c9fff689b51414bcf6 |
|
MD5 | fd72ca6826f1cec2859ef90266d057a1 |
|
BLAKE2b-256 | 919aa749dc03575cb2a9ae1e232b410cdc238659c0b1d1f915eaededd424021b |
Hashes for pillow_jpls-1.0.0-cp38-cp38-manylinux2010_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5fd513364ff0ff9f52fc2e95be2a91c277c509ff7116e6f8b814b2434aaa1ddd |
|
MD5 | 822ea5052ba181b3adfdc9fd2f935f35 |
|
BLAKE2b-256 | f573a439c4f5b318219a8128110b1c16dfc54f3388e391922562255269becd57 |
Hashes for pillow_jpls-1.0.0-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | eba63b33b9c5bed917057050a7375eb2c82934d86096b9f80ff1abd5a1cc8c2e |
|
MD5 | 445b244c3f0e62ed348439ebc5ef9637 |
|
BLAKE2b-256 | 8c121ab71f4b2413c5180ca81a8949e5efbf1f8f87bc1ee9d396e013001a3e2a |
Hashes for pillow_jpls-1.0.0-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c3e83eaa618b2725c6845f09076e2c05add7144bde17b30831edaca4c3d82350 |
|
MD5 | ccce25ff9c30b65b9e8d55c545230fef |
|
BLAKE2b-256 | 2217d4a92c3d769336413639004d8877b0c2874dc9e60589478c00dbc8616f19 |
Hashes for pillow_jpls-1.0.0-cp37-cp37m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cf6ce98719499daf8657756fd0aec3610724d5e6595b3afdc1dee7639988372c |
|
MD5 | 05f66dcccb2314dfd980ce005224b78e |
|
BLAKE2b-256 | 4f629a3a9892ef1b75d423f72ba4e0927bd0d807bb81021dcb3f741f3af9cbc2 |
Hashes for pillow_jpls-1.0.0-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 36b44cca258c9fa8968e4f8d1b36ad64e92f7624981b8780738f7fb258ca3010 |
|
MD5 | 21b76480380a4808022d42d20dc790e2 |
|
BLAKE2b-256 | 1de30fe67d0a8c22d6925d508349598f1536c7a51771b67bd716c6b1d446a300 |
Hashes for pillow_jpls-1.0.0-cp37-cp37m-manylinux2010_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 243b080f17ed8632621ab1ada755337a066c6eb8e40ff7cecc8a6534a43b007f |
|
MD5 | 39ca88c9d164a7c013236b37d4cd8014 |
|
BLAKE2b-256 | a79b90be17423bf5117857ff90a2b003d2cccaa01b2d139b403c56578017c459 |
Hashes for pillow_jpls-1.0.0-cp37-cp37m-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bba6def7806d19f7592a85343109a22aa008b048cf3387663a345a318db9aab7 |
|
MD5 | e8636da81e2d7d1c8e23d7d621e89a8f |
|
BLAKE2b-256 | deb85d7886332142792422d40287ceee87ab2921b80136d865a3ccd5f8fdfa53 |
Hashes for pillow_jpls-1.0.0-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0ba708ba044aa88e4108929efca2abc2701158b34de7e6dab8c20ee8f9fa763a |
|
MD5 | 0a6ca06bc50e0ddef561922ea2da4cb6 |
|
BLAKE2b-256 | 35c12bad092e7fcee4123bb71b04aeac94afd6e0b3652f4a1a0acfab37558a9f |
Hashes for pillow_jpls-1.0.0-cp36-cp36m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d077a22d5847d551227d88f18ffe60ca92af9a07b68d2fe85d30e5581ec633e5 |
|
MD5 | 797e8ca2b606583d51caa232cfc33025 |
|
BLAKE2b-256 | fc4a1651a92688ed8878cc3ab93cb00c1c842fe86a28ada96c50caedae0aa2a4 |
Hashes for pillow_jpls-1.0.0-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | eb15ba79aa7fadc057d174dd9829046e3646b6af66470cbd8455ddb578f6eed5 |
|
MD5 | f0233dcb6a8e9869b09421c7e47f9fd6 |
|
BLAKE2b-256 | a28d6d5823c63a232745753e2735be11e1ab455cadd69ce56fbb33969596456e |
Hashes for pillow_jpls-1.0.0-cp36-cp36m-manylinux2010_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 43d60766928cb4fbf72f57114d7e09893ba66b586f4dbdfd829e85691ca55db2 |
|
MD5 | e02bd7b87b7386d11b77ee2ea6d83c6a |
|
BLAKE2b-256 | 01d44e97ab68f81cd03e0e615ac51e1452eebed5bc8656ccae35628a8872f382 |
Hashes for pillow_jpls-1.0.0-cp36-cp36m-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4ac1afb78f9c5b6d08144cc419707b7bf176a2978b1dba0bd03f68b525904533 |
|
MD5 | c084e42b0992414a5a5668aa1fde7418 |
|
BLAKE2b-256 | d682b520703afcd755c1a0c3a0c32bd5784c7a39f43f1a7580560855633320bb |