--- id: pylibjpeg-libjpeg version: "2.4.0" license: GPL V3.0 license_treatment: copyleft maintenance: active --- # pylibjpeg-libjpeg — A Python wrapper for libjpeg, with a focus on use as a plugin for for pylibjpeg License: copyleft · Maintenance: active · Downloads: 251.4K/mo ## What it is and what it does pylibjpeg-libjpeg is a Python wrapper around Thomas Richter's libjpeg library, designed primarily as a plugin for the pylibjpeg ecosystem and pydicom. It decodes JPEG and JPEG-LS images into NumPy arrays, supporting both standalone use and integration with DICOM workflows. The package handles multiple DICOM transfer syntaxes including JPEG Baseline, JPEG Extended, JPEG Lossless, and JPEG-LS variants. The package is built on compiled C++ bindings and ships with pre-built wheels for modern Python versions (3.10–3.13) across Linux, macOS, and Windows, reducing installation complexity for most users. It depends only on NumPy and is maintained as part of the pydicom project. Encoding is not currently supported; the focus is on decoding medical and standard JPEG formats. Use it for: - Decompress JPEG-encoded DICOM medical images within a pydicom workflow - Decode JPEG-LS lossless images for archival or diagnostic imaging applications - Standalone conversion of JPEG files to NumPy arrays for scientific image processing - Plugin integration with pylibjpeg to support multiple JPEG codecs in a single application - Batch processing of DICOM datasets with JPEG-compressed pixel data ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Decodes JPEG and JPEG-LS images to NumPy arrays, with support for multiple DICOM transfer syntaxes and integration with pylibjpeg and pydicom. Yes, if you need JPEG or JPEG-LS decoding in a DICOM or scientific imaging context. The package is actively maintained, has no known vulnerabilities, and offers broad platform support. The GPL v3.0 copyleft license is a hard blocker for closed-source projects; open-source and research users should install without hesitation. Encoding is not supported, so it is not suitable for JPEG generation workflows. ## Install pip install pylibjpeg-libjpeg uv add pylibjpeg-libjpeg poetry add pylibjpeg-libjpeg ## Installing pylibjpeg-libjpeg Before you install: Pre-built wheels available for Python 3.10–3.13 on Linux, macOS, and Windows reduce install friction. Repository is active with recent commits. Medium install friction reflects compiled C++ bindings; development builds require Microsoft C++ Build Tools on Windows. License in practice: Licensed under GPL v3.0 (copyleft). Any derivative work or distribution must comply with copyleft obligations; proprietary or closed-source projects should review compatibility before use. Quickstart: from libjpeg import decode import numpy as np # Decode JPEG file to NumPy array arr = decode('filename.jpg') # Or with file object with open('filename.jpg', 'rb') as f: arr = decode(f.read()) Requires Python 3.10 or later; NumPy must be installed. On Windows, development builds require Microsoft C++ Build Tools. Verify before relying: - Performance characteristics (decode speed, memory usage) relative to other JPEG decoders - Completeness of JPEG-LS support and any known limitations - Stability and bug-fix frequency beyond the stated active maintenance status ## Package facts - License: GPL V3.0 (copyleft) - Python support: supports_current - Install friction: medium - Maintenance: active - Downloads: 251.4K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags jpeg decoding python, jpeg-ls decoder, dicom jpeg decompression, libjpeg python wrapper, medical image jpeg, numpy jpeg decoder, pydicom jpeg plugin, medical-imaging, dicom, image-codec [View on SkillFed](https://skillfed.io/packages/pylibjpeg-libjpeg) · [View on PyPI](https://pypi.org/project/pylibjpeg-libjpeg/)