Instrument Neutral Distributed Interface INDI  2.0.2
Classes | Macros | Functions
jpegutils.c File Reference
#include "jpegutils.h"
#include <jpeglib.h>
#include <jerror.h>
#include <assert.h>
#include <setjmp.h>
#include <stdint.h>
#include <stdlib.h>
#include <string.h>

Go to the source code of this file.

Classes

struct  my_error_mgr
 

Macros

#define MAX_LUMA_WIDTH   4096
 
#define MAX_CHROMA_WIDTH   2048
 

Functions

int decode_jpeg_raw (unsigned char *jpeg_data, int len, int itype, int ctype, unsigned int width, unsigned int height, unsigned char *raw0, unsigned char *raw1, unsigned char *raw2)
 decode JPEG buffer More...
 
int decode_jpeg_gray_raw (unsigned char *jpeg_data, int len, int itype, int ctype, unsigned int width, unsigned int height, unsigned char *raw0, unsigned char *raw1, unsigned char *raw2)
 decode JPEG raw gray buffer More...
 
int encode_jpeg_raw (unsigned char *jpeg_data, int len, int quality, int itype, int ctype, unsigned int width, unsigned int height, unsigned char *raw0, unsigned char *raw1, unsigned char *raw2)
 encode raw JPEG buffer More...
 
int decode_jpeg_rgb (unsigned char *inBuffer, unsigned long inSize, uint8_t **memptr, size_t *memsize, int *naxis, int *w, int *h)
 decode_jpeg_rgb Read jpeg in memory buffer and produce RGB image More...
 

Macro Definition Documentation

◆ MAX_CHROMA_WIDTH

#define MAX_CHROMA_WIDTH   2048

Definition at line 292 of file jpegutils.c.

◆ MAX_LUMA_WIDTH

#define MAX_LUMA_WIDTH   4096

Definition at line 291 of file jpegutils.c.

Function Documentation

◆ decode_jpeg_gray_raw()

int decode_jpeg_gray_raw ( unsigned char *  jpeg_data,
int  len,
int  itype,
int  ctype,
unsigned int  width,
unsigned int  height,
unsigned char *  raw0,
unsigned char *  raw1,
unsigned char *  raw2 
)

decode JPEG raw gray buffer

Definition at line 837 of file jpegutils.c.

◆ decode_jpeg_raw()

int decode_jpeg_raw ( unsigned char *  jpeg_data,
int  len,
int  itype,
int  ctype,
unsigned int  width,
unsigned int  height,
unsigned char *  raw0,
unsigned char *  raw1,
unsigned char *  raw2 
)

decode JPEG buffer

Definition at line 461 of file jpegutils.c.

◆ decode_jpeg_rgb()

int decode_jpeg_rgb ( unsigned char *  inBuffer,
unsigned long  inSize,
uint8_t **  memptr,
size_t *  memsize,
int *  naxis,
int *  w,
int *  h 
)

decode_jpeg_rgb Read jpeg in memory buffer and produce RGB image

Parameters
inBufferpointer to jpeg file in memory
inSizefile of jpeg file in bytes
memptrpointer to store RGB data. To enhance performance, the memory must be allocated at least byte. memptr = malloc(1) since subsequent calls will use realloc to allocate memory. The caller is responsible for free(*memptr) eventually.
memsizesize of RGB data as determined after jpeg decompression
naxis1 for mono, 3 for color
wwidth of image in pixels
hheight image in pixels
Returns
0 if decoding sucseeds, -1 otherwise.

Definition at line 1309 of file jpegutils.c.

◆ encode_jpeg_raw()

int encode_jpeg_raw ( unsigned char *  jpeg_data,
int  len,
int  quality,
int  itype,
int  ctype,
unsigned int  width,
unsigned int  height,
unsigned char *  raw0,
unsigned char *  raw1,
unsigned char *  raw2 
)

encode raw JPEG buffer

Definition at line 1156 of file jpegutils.c.