NCEPLIBS-g2c 2.0.0
Loading...
Searching...
No Matches
decenc_jpeg2000.c File Reference

Decode/encode a JPEG2000 code stream. More...

#include "grib2_int.h"
#include "jasper/jasper.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

Go to the source code of this file.

Macros

#define MAXOPTSSIZE   1024
 Maximum size of options.
 

Functions

int dec_jpeg2000 (char *injpc, g2int bufsize, g2int *outfld)
 Decode a JPEG2000 code stream specified in the JPEG2000 Part-1 standard (i.e., ISO/IEC 15444-1) using JasPer Software.
 
int enc_jpeg2000 (unsigned char *cin, g2int width, g2int height, g2int nbits, g2int ltype, g2int ratio, g2int retry, char *outjpc, g2int jpclen)
 Encode a grayscale image into a JPEG2000 code stream specified in the JPEG2000 Part-1 standard (i.e., ISO/IEC 15444-1) using JasPer Software.
 
int g2c_dec_jpeg2000 (char *injpc, size_t bufsize, int *outfld)
 Decode a JPEG2000 code stream specified in the JPEG2000 Part-1 standard (i.e., ISO/IEC 15444-1) using JasPer Software.
 
int g2c_enc_jpeg2000 (unsigned char *cin, int width, int height, int nbits, int ltype, int ratio, int retry, char *outjpc, size_t jpclen)
 Encode a grayscale image into a JPEG2000 code stream specified in the JPEG2000 Part-1 standard (i.e., ISO/IEC 15444-1) using JasPer Software.
 
static int int_dec_jpeg2000 (char *injpc, g2int bufsize, void *outfld, int out_is_g2int)
 Decode a JPEG2000 code stream specified in the JPEG2000 Part-1 standard (i.e., ISO/IEC 15444-1) using JasPer Software.
 

Detailed Description

Decode/encode a JPEG2000 code stream.

Author
Alyson Stahl
Date
2024-14-08

Definition in file decenc_jpeg2000.c.

Macro Definition Documentation

◆ MAXOPTSSIZE

#define MAXOPTSSIZE   1024

Maximum size of options.

Definition at line 12 of file decenc_jpeg2000.c.

Function Documentation

◆ dec_jpeg2000()

int dec_jpeg2000 ( char *  injpc,
g2int  bufsize,
g2int outfld 
)

Decode a JPEG2000 code stream specified in the JPEG2000 Part-1 standard (i.e., ISO/IEC 15444-1) using JasPer Software.

Parameters
injpcPointer to buffer that holds the input JPEG2000 code stream.
bufsizeLength (in bytes) of the buffer that holds the input JPEG2000 code stream.
outfldPointer to g2int array, already allocated, that gets the unpacked data.
Returns
Author
Stephen Gilbert, Ed Hartnett

Definition at line 376 of file decenc_jpeg2000.c.

References int_dec_jpeg2000().

Referenced by jpcunpack_int().

◆ enc_jpeg2000()

int enc_jpeg2000 ( unsigned char *  cin,
g2int  width,
g2int  height,
g2int  nbits,
g2int  ltype,
g2int  ratio,
g2int  retry,
char *  outjpc,
g2int  jpclen 
)

Encode a grayscale image into a JPEG2000 code stream specified in the JPEG2000 Part-1 standard (i.e., ISO/IEC 15444-1) using JasPer Software.

  • ### Program History Log
    Date Programmer Comments
    2002-12-02 Gilbert Initial
    2004-12-16 Gilbert Added retry argument allowing increased guard bits.
    2022-04-15 Hartnett Converted to use jas_ instead of jpc_ functions.
Parameters
cinPacked matrix of Grayscale image values to encode.
widthwidth of image.
heightheight of image.
nbitsdepth (in bits) of image. i.e number of bits used to hold each data value.
ltypeindicator of lossless or lossy compression.
  • 1, for lossy compression
  • != 1, for lossless compression
ratiotarget compression ratio. (ratio:1) Used only when ltype == 1.
retryIf 1 try increasing number of guard bits.
outjpcOutput encoded JPEG2000 code stream.
jpclenNumber of bytes allocated for the output JPEG2000 code stream in outjpc.
Returns
  • > 0 = Length in bytes of encoded JPEG2000 code stream
  • G2_JASPER_INIT Error initializing jasper library.
  • G2_JASPER_ENCODE Error encode jpeg2000 code stream.
Note
Requires JasPer Software version 1.500.4 or 1.700.2 or later.
Author
Stephen Gilbert
Date
2002-12-02
Author
Ed Hartnett

Definition at line 94 of file decenc_jpeg2000.c.

References G2_JASPER_ENCODE, G2_JASPER_INIT, G2C_JASPER_JPEG_FORMAT_NAME, LOG, and MAXOPTSSIZE.

Referenced by g2c_enc_jpeg2000(), and jpcpack_int().

◆ g2c_dec_jpeg2000()

int g2c_dec_jpeg2000 ( char *  injpc,
size_t  bufsize,
int *  outfld 
)

Decode a JPEG2000 code stream specified in the JPEG2000 Part-1 standard (i.e., ISO/IEC 15444-1) using JasPer Software.

Parameters
injpcPointer to buffer that holds the input JPEG2000 code stream.
bufsizeLength (in bytes) of the buffer that holds the input JPEG2000 code stream.
outfldPointer to int array, already allocated, that gets the unpacked data.
Returns
Author
Ed Hartnett
Date
9/7/22

Definition at line 349 of file decenc_jpeg2000.c.

References int_dec_jpeg2000().

◆ g2c_enc_jpeg2000()

int g2c_enc_jpeg2000 ( unsigned char *  cin,
int  width,
int  height,
int  nbits,
int  ltype,
int  ratio,
int  retry,
char *  outjpc,
size_t  jpclen 
)

Encode a grayscale image into a JPEG2000 code stream specified in the JPEG2000 Part-1 standard (i.e., ISO/IEC 15444-1) using JasPer Software.

Parameters
cinPacked matrix of Grayscale image values to encode.
widthwidth of image.
heightheight of image.
nbitsdepth (in bits) of image. i.e number of bits used to hold each data value.
ltypeindicator of lossless or lossy compression.
  • 1, for lossy compression
  • != 1, for lossless compression
ratiotarget compression ratio. (ratio:1) Used only when ltype == 1.
retryIf 1 try increasing number of guard bits.
outjpcOutput encoded JPEG2000 code stream.
jpclenNumber of bytes allocated for the output JPEG2000 code stream in outjpc.
Returns
  • > 0 = Length in bytes of encoded JPEG2000 code stream
  • G2_JASPER_INIT Error initializing jasper library.
  • G2_JASPER_ENCODE Error encode jpeg2000 code stream.
Note
Requires JasPer Software version 1.500.4 or 1.700.2 or later.
Author
Stephen Gilbert
Date
2002-12-02
Author
Ed Hartnett

Definition at line 45 of file decenc_jpeg2000.c.

References enc_jpeg2000().

◆ int_dec_jpeg2000()

static int int_dec_jpeg2000 ( char *  injpc,
g2int  bufsize,
void *  outfld,
int  out_is_g2int 
)
static

Decode a JPEG2000 code stream specified in the JPEG2000 Part-1 standard (i.e., ISO/IEC 15444-1) using JasPer Software.

Parameters
injpcPointer to buffer that holds the input JPEG2000 code stream.
bufsizeLength (in bytes) of the buffer that holds the input JPEG2000 code stream.
outfldPointer to either int or g2int array, already allocated, that gets the unpacked data.
out_is_g2intNon-zero if the output array is of type g2int (i.e. 64-bit ints), zero if output is an int array (32-bits).
Returns
Author
Stephen Gilbert
Date
2002-12-02
Author
Ed Hartnett
Eric Engle

Definition at line 220 of file decenc_jpeg2000.c.

References G2_JASPER_DECODE, G2_JASPER_DECODE_COLOR, G2_JASPER_INIT, G2C_JASPER_JPEG_FORMAT_NAME, G2C_JASPER_MAX_MEM, and LOG.

Referenced by dec_jpeg2000(), and g2c_dec_jpeg2000().