# libjpeg

> C programming language library for JPEG images

**Wikidata**: [Q131741](https://www.wikidata.org/wiki/Q131741)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/Libjpeg)  
**Source**: https://4ort.xyz/entity/libjpeg

## Summary
Libjpeg is a free software library written in the C programming language designed for the handling of JPEG images. Developed by Tom Lane and first released on October 7, 1991, it functions as a cross-platform software library that allows computer programs to read and write the JPEG File Interchange Format. It serves as a fundamental resource for software developers, enabling the implementation of JPEG compression and decompression across multiple computing environments.

## Key Facts
- **Inception:** October 7, 1991.
- **Developer:** Tom Lane (American computer scientist, born September 18, 1955).
- **Type:** Free software and software library.
- **Programming Language:** C.
- **Operating System:** Cross-platform.
- **File Format Support:** JPEG File Interchange Format (version 1.02), for both reading and writing.
- **Latest Stable Version:** Version 10 (released January 25, 2026).
- **Previous Stable Version:** Version 9f (released January 14, 2024).
- **Website:** https://www.ijg.org/
- **Derivative Work:** libjpeg-turbo.
- **Package Identifiers:**
  - AUR: libjpeg9
  - Gentoo: media-libs/jpeg
  - NetBSD: graphics/jpeg
  - Homebrew: jpeg
  - Repology: jpeg
  - FreeBSD: graphics/jpeg (deprecated as of December 1, 2020)
- **External IDs:**
  - Freebase: /m/02yvqb
  - Open Hub: libjpeg
  - SourceForge: libjpeg
- **Dependencies/Integrations:** Used by OpenSlide, Scan Tailor Universal, and Wine.

## FAQs
**Who created libjpeg?**
Tom Lane, an American computer scientist and engineer born in 1955, is the developer credited with creating libjpeg.

**What file formats does the library support?**
Libjpeg specifically implements the JPEG File Interchange Format version 1.02, which it uses for both readable and writable file operations.

**Is libjpeg compatible with different operating systems?**
Yes, the software is classified as cross-platform, meaning it is capable of being implemented and operating on multiple computing platforms.

**What is the current version of libjpeg?**
The preferred stable version is 10, released on January 25, 2026, following the previous stable release of version 9f on January 14, 2024.

**What other software relies on or relates to libjpeg?**
Libjpeg is utilized by various tools including the OpenSlide library, Scan Tailor Universal, and the Wine compatibility layer; it also serves as the basis for the derivative project libjpeg-turbo.

## Why It Matters
Libjpeg is significant because it provides the core non-volatile resources necessary for computer programs to process JPEG images, one of the most widely used image formats in the world. As a free software library, it empowers users and developers to run, study, change, and distribute the code, ensuring broad accessibility and adaptability for software development. Its cross-platform capability allows it to function seamlessly across diverse systems, making it a critical dependency for major projects like Wine and OpenSlide, thereby standardizing how JPEG images are handled digitally.

## Notable For
- **Long-term Versioning:** Maintains a history of releases spanning over three decades, from version 5 in 1994 to version 10 in 2026.
- **Reference Implementation:** Serves as a foundational implementation for JPEG handling, maintained by the Independent JPEG Group.
- **Broad Repository Support:** Included in numerous package management systems, including Gentoo, NetBSD, Arch Linux (AUR), and Homebrew.
- **Derivative Foundation:** Acts as the upstream base for libjpeg-turbo, a notable derivative work focused on performance optimization.

## Body

### Overview and Classification
Libjpeg is a software library written in the C programming language, specifically categorized as free software. It is designed to facilitate the handling of JPEG images within computer programs. As a software library, it acts as a collection of non-volatile resources that developers utilize for software development, particularly for image compression and decompression tasks. The library is classified as cross-platform, indicating its capability to be implemented and operate effectively across multiple computing platforms without being restricted to a single operating system.

### Development and Creator
The development of libjpeg is attributed to Tom Lane, an American computer scientist, engineer, and programmer. Lane was born on September 18, 1955, and holds citizenship in the United States. The project inception dates back to October 7, 1991. The library is maintained and distributed under the terms of free software, allowing users the freedom to run, study, change, and distribute both the software and modified versions of it.

### Version History
The library has undergone extensive versioning since its initial release, with a detailed timeline of updates:
*   **Early Versions:** Version 5 was released on September 24, 1994, followed by Version 6 on August 2, 1995, and Version 6b on March 27, 1998.
*   **2000s Updates:** Version 7 was released in June 2009, followed by Version 8 in January 2010.
*   **Version 9 Series:** This series began with Version 9 in January 2013. Subsequent releases included Version 9a (January 19, 2014), Version 9b (January 17, 2016), Version 9c (January 14, 2018), Version 9d (January 12, 2020), and Version 9e (January 16, 2022).
*   **Recent Releases:** Version 9f was released as a stable version on January 14, 2024. The preferred stable version, 10, was released on January 25, 2026.

### Technical Specifications
Libjpeg operates as an implementation of the JPEG File Interchange Format, specifically version 1.02. It supports this format as both a readable and writable file format. The library's official website is hosted at https://www.ijg.org/. While the specific programming language analysis references data from Open Hub, the library is widely recognized as a C programming language library.

### Ecosystem and Integration
The library plays a vital role in the software ecosystem, serving as a dependency or related component for various other projects:
*   **Related Software:** It is associated with OpenSlide (a free software library), Scan Tailor Universal (an interactive post-processing tool for scanned pages), and Wine (a compatibility layer for running Windows software on Unix-like systems).
*   **Derivative Works:** A significant derivative of libjpeg is libjpeg-turbo.
*   **Package Management:** Libjpeg is distributed across various systems with specific package identifiers:
    *   **Arch Linux:** `libjpeg9` (AUR package)
    *   **FreeBSD:** `graphics/jpeg` (Note: This port was deprecated with an end time of December 1, 2020)
    *   **Gentoo:** `media-libs/jpeg`
    *   **NetBSD:** `graphics/jpeg`
    *   **Homebrew:** `jpeg`
    *   **Repology:** `jpeg`

### External Identifiers and Metadata
The entity is registered under numerous external databases and identification systems:
*   **Freebase ID:** `/m/02yvqb`
*   **Open Hub ID:** `libjpeg`
*   **SourceForge Project:** `libjpeg`
*   **ProLinux.de DBapp ID:** 14957
*   **Wikipedia:** The article is titled "Libjpeg" and is available in multiple languages including Commons, German, English, French, Japanese, Korean, Norwegian, Polish, Portuguese, Russian, Ukrainian, and Chinese.
*   **Wikimedia Commons:** Category is "Libjpeg".
*   **Logo:** Available at https://commons.wikimedia.org/wiki/Special:FilePath/Logo_JPEG_10.svg.

## References

1. [Source](https://jpegclub.org/reference/new-version-of-libjpeg-ver-9d-of-independent-jpeg-group-available-now/)
2. [The libjpeg Open Source Project on Open Hub: Languages Page. Open Hub](https://www.openhub.net/p/libjpeg/analyses/latest/languages_summary)
3. [Independent JPEG Group](http://www.ijg.org/)
4. [Source](http://www.infai.org/jpeg/)
5. [Source](http://www.ijg.org/)
6. [Independent JPEG Group](https://www.ijg.org/)
7. Freebase Data Dumps. 2013
8. [Source](https://svnweb.freebsd.org/ports?view=revision&revision=556784)