1 /* 2 * Copyright (c) 2016, Alliance for Open Media. All rights reserved 3 * 4 * This source code is subject to the terms of the BSD 2 Clause License and 5 * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License 6 * was not distributed with this source code in the LICENSE file, you can 7 * obtain it at www.aomedia.org/license/software. If the Alliance for Open 8 * Media Patent License 1.0 was not distributed with this source code in the 9 * PATENTS file, you can obtain it at www.aomedia.org/license/patent. 10 */ 11 12 #ifndef AOM_AOM_DSP_QUANTIZE_H_ 13 #define AOM_AOM_DSP_QUANTIZE_H_ 14 15 #include "config/aom_config.h" 16 17 #include "aom_dsp/aom_dsp_common.h" 18 19 #ifdef __cplusplus 20 extern "C" { 21 #endif 22 23 void quantize_b_adaptive_helper_c( 24 const tran_low_t *coeff_ptr, intptr_t n_coeffs, const int16_t *zbin_ptr, 25 const int16_t *round_ptr, const int16_t *quant_ptr, 26 const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, 27 tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, 28 const int16_t *scan, const int16_t *iscan, const qm_val_t *qm_ptr, 29 const qm_val_t *iqm_ptr, const int log_scale); 30 31 void aom_quantize_b_adaptive_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, 32 const int16_t *zbin_ptr, 33 const int16_t *round_ptr, 34 const int16_t *quant_ptr, 35 const int16_t *quant_shift_ptr, 36 tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, 37 const int16_t *dequant_ptr, uint16_t *eob_ptr, 38 const int16_t *scan, const int16_t *iscan); 39 40 void aom_quantize_b_32x32_adaptive_c( 41 const tran_low_t *coeff_ptr, intptr_t n_coeffs, const int16_t *zbin_ptr, 42 const int16_t *round_ptr, const int16_t *quant_ptr, 43 const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, 44 tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, 45 const int16_t *scan, const int16_t *iscan); 46 47 void aom_quantize_b_64x64_adaptive_c( 48 const tran_low_t *coeff_ptr, intptr_t n_coeffs, const int16_t *zbin_ptr, 49 const int16_t *round_ptr, const int16_t *quant_ptr, 50 const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, 51 tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, 52 const int16_t *scan, const int16_t *iscan); 53 54 void highbd_quantize_b_adaptive_helper_c( 55 const tran_low_t *coeff_ptr, intptr_t n_coeffs, const int16_t *zbin_ptr, 56 const int16_t *round_ptr, const int16_t *quant_ptr, 57 const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, 58 tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, 59 const int16_t *scan, const int16_t *iscan, const qm_val_t *qm_ptr, 60 const qm_val_t *iqm_ptr, const int log_scale); 61 62 void aom_highbd_quantize_b_adaptive_c( 63 const tran_low_t *coeff_ptr, intptr_t n_coeffs, const int16_t *zbin_ptr, 64 const int16_t *round_ptr, const int16_t *quant_ptr, 65 const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, 66 tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, 67 const int16_t *scan, const int16_t *iscan); 68 69 void aom_highbd_quantize_b_32x32_adaptive_c( 70 const tran_low_t *coeff_ptr, intptr_t n_coeffs, const int16_t *zbin_ptr, 71 const int16_t *round_ptr, const int16_t *quant_ptr, 72 const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, 73 tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, 74 const int16_t *scan, const int16_t *iscan); 75 76 void aom_highbd_quantize_b_64x64_adaptive_c( 77 const tran_low_t *coeff_ptr, intptr_t n_coeffs, const int16_t *zbin_ptr, 78 const int16_t *round_ptr, const int16_t *quant_ptr, 79 const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, 80 tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, 81 const int16_t *scan, const int16_t *iscan); 82 83 void quantize_b_helper_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, 84 const int16_t *zbin_ptr, const int16_t *round_ptr, 85 const int16_t *quant_ptr, 86 const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, 87 tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, 88 uint16_t *eob_ptr, const int16_t *scan, 89 const int16_t *iscan, const qm_val_t *qm_ptr, 90 const qm_val_t *iqm_ptr, const int log_scale); 91 92 void aom_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, 93 const int16_t *zbin_ptr, const int16_t *round_ptr, 94 const int16_t *quant_ptr, const int16_t *quant_shift_ptr, 95 tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, 96 const int16_t *dequant_ptr, uint16_t *eob_ptr, 97 const int16_t *scan, const int16_t *iscan); 98 99 void highbd_quantize_b_helper_c( 100 const tran_low_t *coeff_ptr, intptr_t n_coeffs, const int16_t *zbin_ptr, 101 const int16_t *round_ptr, const int16_t *quant_ptr, 102 const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, 103 tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, 104 const int16_t *scan, const int16_t *iscan, const qm_val_t *qm_ptr, 105 const qm_val_t *iqm_ptr, const int log_scale); 106 107 void aom_highbd_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, 108 const int16_t *zbin_ptr, const int16_t *round_ptr, 109 const int16_t *quant_ptr, 110 const int16_t *quant_shift_ptr, 111 tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, 112 const int16_t *dequant_ptr, uint16_t *eob_ptr, 113 const int16_t *scan, const int16_t *iscan); 114 115 #ifdef __cplusplus 116 } // extern "C" 117 #endif 118 119 #endif // AOM_AOM_DSP_QUANTIZE_H_ 120