LIBJXL

Loading...
Searching...
No Matches
decode.h
Go to the documentation of this file.
1/* Copyright (c) the JPEG XL Project Authors. All rights reserved.
2 *
3 * Use of this source code is governed by a BSD-style
4 * license that can be found in the LICENSE file.
5 */
6
13#ifndef JXL_DECODE_H_
14#define JXL_DECODE_H_
15
16#include <jxl/cms_interface.h>
17#include <jxl/codestream_header.h>
18#include <jxl/color_encoding.h>
19#include <jxl/jxl_export.h>
20#include <jxl/memory_manager.h>
21#include <jxl/parallel_runner.h>
22#include <jxl/types.h>
23#include <jxl/version.h> // TODO(eustas): remove before v1.0
24#include <stddef.h>
25#include <stdint.h>
26
27#if defined(__cplusplus) || defined(c_plusplus)
28 extern "C" {
29#endif
30
38JXL_EXPORT uint32_t JxlDecoderVersion(void);
39
42 typedef enum {
45 JXL_SIG_NOT_ENOUGH_BYTES = 0,
46
48 JXL_SIG_INVALID = 1,
49
53 JXL_SIG_CODESTREAM = 2,
54
58 JXL_SIG_CONTAINER = 3,
59} JxlSignature;
60
76JXL_EXPORT JxlSignature JxlSignatureCheck(const uint8_t* buf, size_t len);
77
84 typedef struct JxlDecoderStruct JxlDecoder;
85
98JXL_EXPORT JxlDecoder* JxlDecoderCreate(const JxlMemoryManager* memory_manager);
99
107JXL_EXPORT void JxlDecoderReset(JxlDecoder* dec);
108
114JXL_EXPORT void JxlDecoderDestroy(JxlDecoder* dec);
115
122 typedef enum {
136 JXL_DEC_SUCCESS = 0,
137
141 JXL_DEC_ERROR = 1,
142
157 JXL_DEC_NEED_MORE_INPUT = 2,
158
168 JXL_DEC_NEED_PREVIEW_OUT_BUFFER = 3,
169
177 JXL_DEC_NEED_IMAGE_OUT_BUFFER = 5,
178
184 JXL_DEC_JPEG_NEED_MORE_OUTPUT = 6,
185
190 JXL_DEC_BOX_NEED_MORE_OUTPUT = 7,
191
199 JXL_DEC_BASIC_INFO = 0x40,
200
209 JXL_DEC_COLOR_ENCODING = 0x100,
210
219 JXL_DEC_PREVIEW_IMAGE = 0x200,
220
240 JXL_DEC_FRAME = 0x400,
241
253 JXL_DEC_FULL_IMAGE = 0x1000,
254
266 JXL_DEC_JPEG_RECONSTRUCTION = 0x2000,
267
303 JXL_DEC_BOX = 0x4000,
304
320 JXL_DEC_FRAME_PROGRESSION = 0x8000,
321} JxlDecoderStatus;
322
331 typedef enum {
335 kFrames = 0,
339 kDC = 1,
344 kLastPasses = 2,
349 kPasses = 3,
353 kDCProgressive = 4,
357 kDCGroups = 5,
361 kGroups = 6,
362} JxlProgressiveDetail;
363
387JXL_EXPORT void JxlDecoderRewind(JxlDecoder* dec);
388
407JXL_EXPORT void JxlDecoderSkipFrames(JxlDecoder* dec, size_t amount);
408
421JXL_EXPORT JxlDecoderStatus JxlDecoderSkipCurrentFrame(JxlDecoder* dec);
422
435JXL_EXPORT JxlDecoderStatus
436 JxlDecoderSetParallelRunner(JxlDecoder* dec, JxlParallelRunner parallel_runner,
437 void* parallel_runner_opaque);
438
454JXL_EXPORT size_t JxlDecoderSizeHintBasicInfo(const JxlDecoder* dec);
455
468JXL_EXPORT JxlDecoderStatus JxlDecoderSubscribeEvents(JxlDecoder* dec,
469 int events_wanted);
470
502JXL_EXPORT JxlDecoderStatus
503 JxlDecoderSetKeepOrientation(JxlDecoder* dec, JXL_BOOL skip_reorientation);
504
521JXL_EXPORT JxlDecoderStatus
522 JxlDecoderSetUnpremultiplyAlpha(JxlDecoder* dec, JXL_BOOL unpremul_alpha);
523
534JXL_EXPORT JxlDecoderStatus
535 JxlDecoderSetRenderSpotcolors(JxlDecoder* dec, JXL_BOOL render_spotcolors);
536
550JXL_EXPORT JxlDecoderStatus JxlDecoderSetCoalescing(JxlDecoder* dec,
551 JXL_BOOL coalescing);
552
593JXL_EXPORT JxlDecoderStatus JxlDecoderProcessInput(JxlDecoder* dec);
594
609JXL_EXPORT JxlDecoderStatus JxlDecoderSetInput(JxlDecoder* dec,
610 const uint8_t* data,
611 size_t size);
612
632JXL_EXPORT size_t JxlDecoderReleaseInput(JxlDecoder* dec);
633
652JXL_EXPORT void JxlDecoderCloseInput(JxlDecoder* dec);
653
665JXL_EXPORT JxlDecoderStatus JxlDecoderGetBasicInfo(const JxlDecoder* dec,
666 JxlBasicInfo* info);
667
680JXL_EXPORT JxlDecoderStatus JxlDecoderGetExtraChannelInfo(
681 const JxlDecoder* dec, size_t index, JxlExtraChannelInfo* info);
682
697JXL_EXPORT JxlDecoderStatus JxlDecoderGetExtraChannelName(const JxlDecoder* dec,
698 size_t index,
699 char* name,
700 size_t size);
701
707 typedef enum {
710 JXL_COLOR_PROFILE_TARGET_ORIGINAL = 0,
711
713 JXL_COLOR_PROFILE_TARGET_DATA = 1,
714} JxlColorProfileTarget;
715
764JXL_EXPORT JxlDecoderStatus JxlDecoderGetColorAsEncodedProfile(
765 const JxlDecoder* dec, JxlColorProfileTarget target,
766 JxlColorEncoding* color_encoding);
767
790JXL_EXPORT JxlDecoderStatus JxlDecoderGetICCProfileSize(
791 const JxlDecoder* dec, JxlColorProfileTarget target, size_t* size);
792
808JXL_EXPORT JxlDecoderStatus JxlDecoderGetColorAsICCProfile(
809 const JxlDecoder* dec, JxlColorProfileTarget target, uint8_t* icc_profile,
810 size_t size);
811
822JXL_EXPORT JxlDecoderStatus JxlDecoderSetPreferredColorProfile(
823 JxlDecoder* dec, const JxlColorEncoding* color_encoding);
824
835JXL_EXPORT JxlDecoderStatus JxlDecoderSetDesiredIntensityTarget(
836 JxlDecoder* dec, float desired_intensity_target);
837
879JXL_EXPORT JxlDecoderStatus JxlDecoderSetOutputColorProfile(
880 JxlDecoder* dec, const JxlColorEncoding* color_encoding,
881 const uint8_t* icc_data, size_t icc_size);
882
895JXL_EXPORT JxlDecoderStatus JxlDecoderSetCms(JxlDecoder* dec,
896 JxlCmsInterface cms);
897// TODO(firsching): add a function JxlDecoderSetDefaultCms() for setting a
898// default in case libjxl is build with a CMS.
899
912JXL_EXPORT JxlDecoderStatus JxlDecoderPreviewOutBufferSize(
913 const JxlDecoder* dec, const JxlPixelFormat* format, size_t* size);
914
930JXL_EXPORT JxlDecoderStatus JxlDecoderSetPreviewOutBuffer(
931 JxlDecoder* dec, const JxlPixelFormat* format, void* buffer, size_t size);
932
945JXL_EXPORT JxlDecoderStatus JxlDecoderGetFrameHeader(const JxlDecoder* dec,
946 JxlFrameHeader* header);
947
960JXL_EXPORT JxlDecoderStatus JxlDecoderGetFrameName(const JxlDecoder* dec,
961 char* name, size_t size);
962
975JXL_EXPORT JxlDecoderStatus JxlDecoderGetExtraChannelBlendInfo(
976 const JxlDecoder* dec, size_t index, JxlBlendInfo* blend_info);
977
993JXL_EXPORT JxlDecoderStatus JxlDecoderImageOutBufferSize(
994 const JxlDecoder* dec, const JxlPixelFormat* format, size_t* size);
995
1012JXL_EXPORT JxlDecoderStatus JxlDecoderSetImageOutBuffer(
1013 JxlDecoder* dec, const JxlPixelFormat* format, void* buffer, size_t size);
1014
1031 typedef void (*JxlImageOutCallback)(void* opaque, size_t x, size_t y,
1032 size_t num_pixels, const void* pixels);
1033
1046 typedef void* (*JxlImageOutInitCallback)(void* init_opaque, size_t num_threads,
1047 size_t num_pixels_per_thread);
1048
1065 typedef void (*JxlImageOutRunCallback)(void* run_opaque, size_t thread_id,
1066 size_t x, size_t y, size_t num_pixels,
1067 const void* pixels);
1068
1076 typedef void (*JxlImageOutDestroyCallback)(void* run_opaque);
1077
1120JXL_EXPORT JxlDecoderStatus
1121 JxlDecoderSetImageOutCallback(JxlDecoder* dec, const JxlPixelFormat* format,
1122 JxlImageOutCallback callback, void* opaque);
1123
1143JXL_EXPORT JxlDecoderStatus JxlDecoderSetMultithreadedImageOutCallback(
1144 JxlDecoder* dec, const JxlPixelFormat* format,
1145 JxlImageOutInitCallback init_callback, JxlImageOutRunCallback run_callback,
1146 JxlImageOutDestroyCallback destroy_callback, void* init_opaque);
1147
1163JXL_EXPORT JxlDecoderStatus JxlDecoderExtraChannelBufferSize(
1164 const JxlDecoder* dec, const JxlPixelFormat* format, size_t* size,
1165 uint32_t index);
1166
1197JXL_EXPORT JxlDecoderStatus
1198 JxlDecoderSetExtraChannelBuffer(JxlDecoder* dec, const JxlPixelFormat* format,
1199 void* buffer, size_t size, uint32_t index);
1200
1219JXL_EXPORT JxlDecoderStatus JxlDecoderSetJPEGBuffer(JxlDecoder* dec,
1220 uint8_t* data, size_t size);
1221
1238JXL_EXPORT size_t JxlDecoderReleaseJPEGBuffer(JxlDecoder* dec);
1239
1262JXL_EXPORT JxlDecoderStatus JxlDecoderSetBoxBuffer(JxlDecoder* dec,
1263 uint8_t* data, size_t size);
1264
1281JXL_EXPORT size_t JxlDecoderReleaseBoxBuffer(JxlDecoder* dec);
1282
1303JXL_EXPORT JxlDecoderStatus JxlDecoderSetDecompressBoxes(JxlDecoder* dec,
1304 JXL_BOOL decompress);
1305
1371JXL_EXPORT JxlDecoderStatus JxlDecoderGetBoxType(JxlDecoder* dec,
1372 JxlBoxType type,
1373 JXL_BOOL decompressed);
1374
1384JXL_EXPORT JxlDecoderStatus JxlDecoderGetBoxSizeRaw(const JxlDecoder* dec,
1385 uint64_t* size);
1386
1400JXL_EXPORT JxlDecoderStatus JxlDecoderGetBoxSizeContents(const JxlDecoder* dec,
1401 uint64_t* size);
1402
1414JXL_EXPORT JxlDecoderStatus
1415 JxlDecoderSetProgressiveDetail(JxlDecoder* dec, JxlProgressiveDetail detail);
1416
1425JXL_EXPORT size_t JxlDecoderGetIntendedDownsamplingRatio(JxlDecoder* dec);
1426
1443JXL_EXPORT JxlDecoderStatus JxlDecoderFlushImage(JxlDecoder* dec);
1444
1457JXL_EXPORT JxlDecoderStatus
1458 JxlDecoderSetImageOutBitDepth(JxlDecoder* dec, const JxlBitDepth* bit_depth);
1459
1460#if defined(__cplusplus) || defined(c_plusplus)
1461}
1462#endif
1463
1464#endif /* JXL_DECODE_H_ */
1465
cms_interface.h
Interface to allow the injection of different color management systems (CMSes, also called color mana...
codestream_header.h
Definitions of structs and enums for the metadata from the JPEG XL codestream headers (signature,...
color_encoding.h
Color Encoding definitions used by JPEG XL. All CIE units are for the standard 1931 2 degree observer...
JxlBoxType
char JxlBoxType[4]
Definition types.h:146
JXL_BOOL
#define JXL_BOOL
Definition types.h:29
JxlDecoderReleaseBoxBuffer
JXL_EXPORT size_t JxlDecoderReleaseBoxBuffer(JxlDecoder *dec)
JxlDecoderSkipFrames
JXL_EXPORT void JxlDecoderSkipFrames(JxlDecoder *dec, size_t amount)
JxlDecoderVersion
JXL_EXPORT uint32_t JxlDecoderVersion(void)
JxlDecoderSetOutputColorProfile
JXL_EXPORT JxlDecoderStatus JxlDecoderSetOutputColorProfile(JxlDecoder *dec, const JxlColorEncoding *color_encoding, const uint8_t *icc_data, size_t icc_size)
JxlDecoderReleaseInput
JXL_EXPORT size_t JxlDecoderReleaseInput(JxlDecoder *dec)
JxlDecoderPreviewOutBufferSize
JXL_EXPORT JxlDecoderStatus JxlDecoderPreviewOutBufferSize(const JxlDecoder *dec, const JxlPixelFormat *format, size_t *size)
JxlDecoderSetImageOutBitDepth
JXL_EXPORT JxlDecoderStatus JxlDecoderSetImageOutBitDepth(JxlDecoder *dec, const JxlBitDepth *bit_depth)
JxlDecoderRewind
JXL_EXPORT void JxlDecoderRewind(JxlDecoder *dec)
JxlDecoderSetMultithreadedImageOutCallback
JXL_EXPORT JxlDecoderStatus JxlDecoderSetMultithreadedImageOutCallback(JxlDecoder *dec, const JxlPixelFormat *format, JxlImageOutInitCallback init_callback, JxlImageOutRunCallback run_callback, JxlImageOutDestroyCallback destroy_callback, void *init_opaque)
JxlDecoderGetColorAsEncodedProfile
JXL_EXPORT JxlDecoderStatus JxlDecoderGetColorAsEncodedProfile(const JxlDecoder *dec, JxlColorProfileTarget target, JxlColorEncoding *color_encoding)
JxlDecoderSetDesiredIntensityTarget
JXL_EXPORT JxlDecoderStatus JxlDecoderSetDesiredIntensityTarget(JxlDecoder *dec, float desired_intensity_target)
JxlDecoderSetPreviewOutBuffer
JXL_EXPORT JxlDecoderStatus JxlDecoderSetPreviewOutBuffer(JxlDecoder *dec, const JxlPixelFormat *format, void *buffer, size_t size)
JxlDecoderGetFrameName
JXL_EXPORT JxlDecoderStatus JxlDecoderGetFrameName(const JxlDecoder *dec, char *name, size_t size)
JxlDecoderGetExtraChannelName
JXL_EXPORT JxlDecoderStatus JxlDecoderGetExtraChannelName(const JxlDecoder *dec, size_t index, char *name, size_t size)
JxlDecoderSetCoalescing
JXL_EXPORT JxlDecoderStatus JxlDecoderSetCoalescing(JxlDecoder *dec, JXL_BOOL coalescing)
JxlDecoderSetInput
JXL_EXPORT JxlDecoderStatus JxlDecoderSetInput(JxlDecoder *dec, const uint8_t *data, size_t size)
JxlDecoderGetBoxSizeRaw
JXL_EXPORT JxlDecoderStatus JxlDecoderGetBoxSizeRaw(const JxlDecoder *dec, uint64_t *size)
JxlDecoderCloseInput
JXL_EXPORT void JxlDecoderCloseInput(JxlDecoder *dec)
JxlDecoderGetFrameHeader
JXL_EXPORT JxlDecoderStatus JxlDecoderGetFrameHeader(const JxlDecoder *dec, JxlFrameHeader *header)
JxlDecoderGetICCProfileSize
JXL_EXPORT JxlDecoderStatus JxlDecoderGetICCProfileSize(const JxlDecoder *dec, JxlColorProfileTarget target, size_t *size)
JxlDecoderSizeHintBasicInfo
JXL_EXPORT size_t JxlDecoderSizeHintBasicInfo(const JxlDecoder *dec)
JxlDecoderSetCms
JXL_EXPORT JxlDecoderStatus JxlDecoderSetCms(JxlDecoder *dec, JxlCmsInterface cms)
JxlDecoderSetImageOutBuffer
JXL_EXPORT JxlDecoderStatus JxlDecoderSetImageOutBuffer(JxlDecoder *dec, const JxlPixelFormat *format, void *buffer, size_t size)
JxlDecoderGetIntendedDownsamplingRatio
JXL_EXPORT size_t JxlDecoderGetIntendedDownsamplingRatio(JxlDecoder *dec)
JxlDecoderImageOutBufferSize
JXL_EXPORT JxlDecoderStatus JxlDecoderImageOutBufferSize(const JxlDecoder *dec, const JxlPixelFormat *format, size_t *size)
JxlDecoderGetExtraChannelInfo
JXL_EXPORT JxlDecoderStatus JxlDecoderGetExtraChannelInfo(const JxlDecoder *dec, size_t index, JxlExtraChannelInfo *info)
JxlDecoderSkipCurrentFrame
JXL_EXPORT JxlDecoderStatus JxlDecoderSkipCurrentFrame(JxlDecoder *dec)
JxlDecoderSetDecompressBoxes
JXL_EXPORT JxlDecoderStatus JxlDecoderSetDecompressBoxes(JxlDecoder *dec, JXL_BOOL decompress)
JxlDecoderCreate
JXL_EXPORT JxlDecoder * JxlDecoderCreate(const JxlMemoryManager *memory_manager)
JxlDecoderReleaseJPEGBuffer
JXL_EXPORT size_t JxlDecoderReleaseJPEGBuffer(JxlDecoder *dec)
JxlDecoderGetColorAsICCProfile
JXL_EXPORT JxlDecoderStatus JxlDecoderGetColorAsICCProfile(const JxlDecoder *dec, JxlColorProfileTarget target, uint8_t *icc_profile, size_t size)
JxlColorProfileTarget
JxlColorProfileTarget
Definition decode.h:707
JxlDecoderExtraChannelBufferSize
JXL_EXPORT JxlDecoderStatus JxlDecoderExtraChannelBufferSize(const JxlDecoder *dec, const JxlPixelFormat *format, size_t *size, uint32_t index)
JxlDecoderSetBoxBuffer
JXL_EXPORT JxlDecoderStatus JxlDecoderSetBoxBuffer(JxlDecoder *dec, uint8_t *data, size_t size)
JxlSignature
JxlSignature
Definition decode.h:42
JxlDecoderSubscribeEvents
JXL_EXPORT JxlDecoderStatus JxlDecoderSubscribeEvents(JxlDecoder *dec, int events_wanted)
JxlDecoderSetParallelRunner
JXL_EXPORT JxlDecoderStatus JxlDecoderSetParallelRunner(JxlDecoder *dec, JxlParallelRunner parallel_runner, void *parallel_runner_opaque)
JxlDecoderProcessInput
JXL_EXPORT JxlDecoderStatus JxlDecoderProcessInput(JxlDecoder *dec)
JxlDecoderGetBoxSizeContents
JXL_EXPORT JxlDecoderStatus JxlDecoderGetBoxSizeContents(const JxlDecoder *dec, uint64_t *size)
JxlImageOutInitCallback
void *(* JxlImageOutInitCallback)(void *init_opaque, size_t num_threads, size_t num_pixels_per_thread)
Definition decode.h:1046
JxlImageOutRunCallback
void(* JxlImageOutRunCallback)(void *run_opaque, size_t thread_id, size_t x, size_t y, size_t num_pixels, const void *pixels)
Definition decode.h:1065
JxlDecoderSetPreferredColorProfile
JXL_EXPORT JxlDecoderStatus JxlDecoderSetPreferredColorProfile(JxlDecoder *dec, const JxlColorEncoding *color_encoding)
JxlDecoderSetImageOutCallback
JXL_EXPORT JxlDecoderStatus JxlDecoderSetImageOutCallback(JxlDecoder *dec, const JxlPixelFormat *format, JxlImageOutCallback callback, void *opaque)
JxlImageOutCallback
void(* JxlImageOutCallback)(void *opaque, size_t x, size_t y, size_t num_pixels, const void *pixels)
Definition decode.h:1031
JxlDecoderGetBoxType
JXL_EXPORT JxlDecoderStatus JxlDecoderGetBoxType(JxlDecoder *dec, JxlBoxType type, JXL_BOOL decompressed)
JxlDecoderGetBasicInfo
JXL_EXPORT JxlDecoderStatus JxlDecoderGetBasicInfo(const JxlDecoder *dec, JxlBasicInfo *info)
JxlDecoderSetUnpremultiplyAlpha
JXL_EXPORT JxlDecoderStatus JxlDecoderSetUnpremultiplyAlpha(JxlDecoder *dec, JXL_BOOL unpremul_alpha)
JxlDecoderSetKeepOrientation
JXL_EXPORT JxlDecoderStatus JxlDecoderSetKeepOrientation(JxlDecoder *dec, JXL_BOOL skip_reorientation)
JxlImageOutDestroyCallback
void(* JxlImageOutDestroyCallback)(void *run_opaque)
Definition decode.h:1076
JxlDecoderFlushImage
JXL_EXPORT JxlDecoderStatus JxlDecoderFlushImage(JxlDecoder *dec)
JxlDecoderGetExtraChannelBlendInfo
JXL_EXPORT JxlDecoderStatus JxlDecoderGetExtraChannelBlendInfo(const JxlDecoder *dec, size_t index, JxlBlendInfo *blend_info)
JxlDecoderSetJPEGBuffer
JXL_EXPORT JxlDecoderStatus JxlDecoderSetJPEGBuffer(JxlDecoder *dec, uint8_t *data, size_t size)
JxlDecoderDestroy
JXL_EXPORT void JxlDecoderDestroy(JxlDecoder *dec)
JxlSignatureCheck
JXL_EXPORT JxlSignature JxlSignatureCheck(const uint8_t *buf, size_t len)
JxlDecoderSetProgressiveDetail
JXL_EXPORT JxlDecoderStatus JxlDecoderSetProgressiveDetail(JxlDecoder *dec, JxlProgressiveDetail detail)
JxlDecoderStatus
JxlDecoderStatus
Definition decode.h:122
JxlDecoder
struct JxlDecoderStruct JxlDecoder
Definition decode.h:84
JxlProgressiveDetail
JxlProgressiveDetail
Definition decode.h:331
JxlDecoderSetRenderSpotcolors
JXL_EXPORT JxlDecoderStatus JxlDecoderSetRenderSpotcolors(JxlDecoder *dec, JXL_BOOL render_spotcolors)
JxlDecoderReset
JXL_EXPORT void JxlDecoderReset(JxlDecoder *dec)
JxlDecoderSetExtraChannelBuffer
JXL_EXPORT JxlDecoderStatus JxlDecoderSetExtraChannelBuffer(JxlDecoder *dec, const JxlPixelFormat *format, void *buffer, size_t size, uint32_t index)
JXL_COLOR_PROFILE_TARGET_DATA
@ JXL_COLOR_PROFILE_TARGET_DATA
Definition decode.h:713
JXL_COLOR_PROFILE_TARGET_ORIGINAL
@ JXL_COLOR_PROFILE_TARGET_ORIGINAL
Definition decode.h:710
JXL_SIG_NOT_ENOUGH_BYTES
@ JXL_SIG_NOT_ENOUGH_BYTES
Definition decode.h:45
JXL_SIG_INVALID
@ JXL_SIG_INVALID
Definition decode.h:48
JXL_SIG_CONTAINER
@ JXL_SIG_CONTAINER
Definition decode.h:58
JXL_SIG_CODESTREAM
@ JXL_SIG_CODESTREAM
Definition decode.h:53
JXL_DEC_JPEG_RECONSTRUCTION
@ JXL_DEC_JPEG_RECONSTRUCTION
Definition decode.h:266
JXL_DEC_JPEG_NEED_MORE_OUTPUT
@ JXL_DEC_JPEG_NEED_MORE_OUTPUT
Definition decode.h:184
JXL_DEC_BASIC_INFO
@ JXL_DEC_BASIC_INFO
Definition decode.h:199
JXL_DEC_FRAME_PROGRESSION
@ JXL_DEC_FRAME_PROGRESSION
Definition decode.h:320
JXL_DEC_ERROR
@ JXL_DEC_ERROR
Definition decode.h:141
JXL_DEC_NEED_IMAGE_OUT_BUFFER
@ JXL_DEC_NEED_IMAGE_OUT_BUFFER
Definition decode.h:177
JXL_DEC_FULL_IMAGE
@ JXL_DEC_FULL_IMAGE
Definition decode.h:253
JXL_DEC_COLOR_ENCODING
@ JXL_DEC_COLOR_ENCODING
Definition decode.h:209
JXL_DEC_SUCCESS
@ JXL_DEC_SUCCESS
Definition decode.h:136
JXL_DEC_PREVIEW_IMAGE
@ JXL_DEC_PREVIEW_IMAGE
Definition decode.h:219
JXL_DEC_BOX_NEED_MORE_OUTPUT
@ JXL_DEC_BOX_NEED_MORE_OUTPUT
Definition decode.h:190
JXL_DEC_BOX
@ JXL_DEC_BOX
Definition decode.h:303
JXL_DEC_NEED_MORE_INPUT
@ JXL_DEC_NEED_MORE_INPUT
Definition decode.h:157
JXL_DEC_NEED_PREVIEW_OUT_BUFFER
@ JXL_DEC_NEED_PREVIEW_OUT_BUFFER
Definition decode.h:168
JXL_DEC_FRAME
@ JXL_DEC_FRAME
Definition decode.h:240
kDCGroups
@ kDCGroups
Definition decode.h:357
kDCProgressive
@ kDCProgressive
Definition decode.h:353
kFrames
@ kFrames
Definition decode.h:335
kPasses
@ kPasses
Definition decode.h:349
kDC
@ kDC
Definition decode.h:339
kGroups
@ kGroups
Definition decode.h:361
kLastPasses
@ kLastPasses
Definition decode.h:344
JxlParallelRunner
JxlParallelRetCode(* JxlParallelRunner)(void *runner_opaque, void *jpegxl_opaque, JxlParallelRunInit init, JxlParallelRunFunction func, uint32_t start_range, uint32_t end_range)
Definition parallel_runner.h:122
memory_manager.h
Abstraction functions used by JPEG XL to allocate memory.
parallel_runner.h
JxlBasicInfo
Definition codestream_header.h:95
JxlBitDepth
Definition types.h:133
JxlBlendInfo
Definition codestream_header.h:330
JxlCmsInterface
Definition cms_interface.h:227
JxlColorEncoding
Definition color_encoding.h:116
JxlExtraChannelInfo
Definition codestream_header.h:265
JxlFrameHeader
Definition codestream_header.h:391
JxlMemoryManagerStruct
Definition memory_manager.h:51
JxlPixelFormat
Definition types.h:80
types.h
Data types for the JPEG XL API, for both encoding and decoding.