libjxl

FORK: libjxl patches used on blog
git clone https://git.neptards.moe/blog/libjxl.git
Log | Files | Refs | Submodules | README | LICENSE

enc_fields.h (1188B)


      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 #ifndef LIB_JXL_ENC_FIELDS_H_
      7 #define LIB_JXL_ENC_FIELDS_H_
      8 
      9 #include "lib/jxl/base/status.h"
     10 #include "lib/jxl/enc_bit_writer.h"
     11 #include "lib/jxl/frame_header.h"
     12 #include "lib/jxl/headers.h"
     13 #include "lib/jxl/image_metadata.h"
     14 #include "lib/jxl/quantizer.h"
     15 
     16 namespace jxl {
     17 
     18 struct AuxOut;
     19 
     20 // Write headers from the CodecMetadata. Also may modify nonserialized_...
     21 // fields of the metadata.
     22 Status WriteCodestreamHeaders(CodecMetadata* metadata, BitWriter* writer,
     23                               AuxOut* aux_out);
     24 
     25 Status WriteFrameHeader(const FrameHeader& frame,
     26                         BitWriter* JXL_RESTRICT writer, AuxOut* aux_out);
     27 
     28 Status WriteQuantizerParams(const QuantizerParams& params,
     29                             BitWriter* JXL_RESTRICT writer, size_t layer,
     30                             AuxOut* aux_out);
     31 
     32 Status WriteSizeHeader(const SizeHeader& size, BitWriter* JXL_RESTRICT writer,
     33                        size_t layer, AuxOut* aux_out);
     34 
     35 }  // namespace jxl
     36 
     37 #endif  // LIB_JXL_ENC_FIELDS_H_