libjxl

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

enc_transforms.h (978B)


      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_TRANSFORMS_H_
      7 #define LIB_JXL_ENC_TRANSFORMS_H_
      8 
      9 // Facade for (non-inlined) integral transforms.
     10 
     11 #include <stddef.h>
     12 
     13 #include "lib/jxl/ac_strategy.h"
     14 #include "lib/jxl/base/compiler_specific.h"
     15 
     16 namespace jxl {
     17 
     18 void TransformFromPixels(AcStrategy::Type strategy,
     19                          const float* JXL_RESTRICT pixels, size_t pixels_stride,
     20                          float* JXL_RESTRICT coefficients,
     21                          float* JXL_RESTRICT scratch_space);
     22 
     23 // Equivalent of the above for DC image.
     24 void DCFromLowestFrequencies(AcStrategy::Type strategy, const float* block,
     25                              float* dc, size_t dc_stride);
     26 
     27 void AFVDCT4x4(const float* JXL_RESTRICT pixels, float* JXL_RESTRICT coeffs);
     28 
     29 }  // namespace jxl
     30 
     31 #endif  // LIB_JXL_ENC_TRANSFORMS_H_