robot-piglet 026a62a52e Intermediate changes 8 months ago
..
include 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
AUTHORS.md 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
CHANGELOG.md 026a62a52e Intermediate changes 8 months ago
INSTALL.md 026a62a52e Intermediate changes 8 months ago
LICENSE 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
NEWS.md 026a62a52e Intermediate changes 8 months ago
README.md 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
THANKS.md 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
bio.c 026a62a52e Intermediate changes 8 months ago
bio.h 026a62a52e Intermediate changes 8 months ago
cio.c 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
cio.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
dwt.c 026a62a52e Intermediate changes 8 months ago
dwt.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
event.c 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
event.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
function_list.c 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
function_list.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
ht_dec.c 026a62a52e Intermediate changes 8 months ago
image.c 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
image.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
invert.c 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
invert.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
j2k.c 026a62a52e Intermediate changes 8 months ago
j2k.h 026a62a52e Intermediate changes 8 months ago
jp2.c 026a62a52e Intermediate changes 8 months ago
jp2.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
mct.c 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
mct.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
mqc.c 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
mqc.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
mqc_inl.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
openjpeg.c 026a62a52e Intermediate changes 8 months ago
openjpeg.h 026a62a52e Intermediate changes 8 months ago
opj_clock.c 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
opj_clock.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
opj_codec.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
opj_common.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
opj_config.h 026a62a52e Intermediate changes 8 months ago
opj_config_private-linux.h 026a62a52e Intermediate changes 8 months ago
opj_config_private-osx.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
opj_config_private-win.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
opj_config_private.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
opj_includes.h 026a62a52e Intermediate changes 8 months ago
opj_intmath.h 026a62a52e Intermediate changes 8 months ago
opj_malloc.c 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
opj_malloc.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
pi.c 026a62a52e Intermediate changes 8 months ago
pi.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
sparse_array.c 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
sparse_array.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
t1.c 026a62a52e Intermediate changes 8 months ago
t1.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
t1_ht_luts.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
t1_luts.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
t2.c 026a62a52e Intermediate changes 8 months ago
t2.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
tcd.c 026a62a52e Intermediate changes 8 months ago
tcd.h 026a62a52e Intermediate changes 8 months ago
tgt.c 026a62a52e Intermediate changes 8 months ago
tgt.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
thread.c 026a62a52e Intermediate changes 8 months ago
thread.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
tls_keys.h 77eb2d3fdc KIKIMR-19287: add task_stats_drawing script 1 year ago
ya.make 026a62a52e Intermediate changes 8 months ago

README.md

OPENJPEG Library and Applications

What is OpenJPEG ?

OpenJPEG is an open-source JPEG 2000 codec written in C language. It has been developed in order to promote the use of JPEG 2000, a still-image compression standard from the Joint Photographic Experts Group (JPEG). Since April 2015, it is officially recognized by ISO/IEC and ITU-T as a JPEG 2000 Reference Software.

Who can use the code ?

badge-license

Anyone. As the OpenJPEG code is released under the BSD 2-clause "Simplified" License, anyone can use or modify the code, even for commercial applications. The only restriction is to retain the copyright in the sources or in the binaries documentation. Of course, if you modified the code in a way that might be of interest for other users, you are encouraged to share it (through a github pull request or by filling an issue) but this is not a requirement.

How to install and use OpenJPEG ?

API Documentation needs a major refactoring. Meanwhile, you can check installation instructions and codec documentation.

Current Status

badge-build

badge-msvc-build

badge-coverity

Who are the developers ?

The library is developed and maintained by the Image and Signal Processing Group (ISPGroup), in the Université catholique de Louvain (UCL, with the support of the CNES, the CS company and the intoPIX company. The JPWL module has been developed by the Digital Signal Processing Lab (DSPLab) of the University of Perugia, Italy (UNIPG).

Details on folders hierarchy

  • src
    • lib
    • openjp2: contains the sources of the openjp2 library (Part 1 & 2)
    • openjpip: complete client-server architecture for remote browsing of jpeg 2000 images.
    • bin: contains all applications that use the openjpeg library
    • common: common files to all applications
    • jp2: a basic codec
    • jpip: OpenJPIP applications (server and dec server)
      • java: a Java client viewer for JPIP
    • wx
      • OPJViewer: gui for displaying j2k files (based on wxWidget)
  • wrapping
    • java: java jni to use openjpeg in a java program
  • thirdparty: thirdparty libraries used by some applications. These libraries will be built only if there are not found on the system. Note that libopenjpeg itself does not have any dependency.
  • doc: doxygen documentation setup file and man pages
  • tests: configuration files and utilities for the openjpeg test suite. All test images are located in openjpeg-data repository.
  • cmake: cmake related files
  • scripts: scripts for developers

See LICENSE for license and copyright information.

See INSTALL for installation procedures.

See NEWS for user visible changes in successive releases.

Deprecated components

The openjpwl, openjp3d and openmj2 components have been removed after the 2.4.0 release. Their building and working state is unknown. People interested in them should start from the 2.4.0 tag.

API/ABI

An API/ABI timeline is automatically updated here.

OpenJPEG strives to provide a stable API/ABI for your applications. As such it only exposes a limited subset of its functions. It uses a mechanism of exporting/hiding functions. If you are unsure which functions you can use in your applications, you should compile OpenJPEG using something similar to gcc: -fvisibility=hidden compilation flag. See also: http://gcc.gnu.org/wiki/Visibility

On windows, MSVC directly supports export/hiding function and as such the only API available is the one supported by OpenJPEG.