Home
last modified time | relevance | path

Searched refs:qcoeff (Results 1 – 25 of 70) sorted by relevance

123

/external/libvpx/libvpx/vpx_dsp/arm/
Dquantize_neon.c18 static INLINE void calculate_dqcoeff_and_store(const int16x8_t qcoeff, in calculate_dqcoeff_and_store() argument
22 vmull_s16(vget_low_s16(qcoeff), vget_low_s16(dequant)); in calculate_dqcoeff_and_store()
24 vmull_s16(vget_high_s16(qcoeff), vget_high_s16(dequant)); in calculate_dqcoeff_and_store()
70 int16x8_t qcoeff = vshrq_n_s16(vqdmulhq_s16(rounded, quant), 1); in vpx_quantize_b_neon() local
72 qcoeff = vaddq_s16(qcoeff, rounded); in vpx_quantize_b_neon()
75 qcoeff = vshrq_n_s16(vqdmulhq_s16(qcoeff, quant_shift), 1); in vpx_quantize_b_neon()
78 qcoeff = veorq_s16(qcoeff, coeff_sign); in vpx_quantize_b_neon()
79 qcoeff = vsubq_s16(qcoeff, coeff_sign); in vpx_quantize_b_neon()
81 qcoeff = vandq_s16(qcoeff, zbin_mask); in vpx_quantize_b_neon()
84 eob_max = vandq_u16(vtstq_s16(qcoeff, neg_one), v_iscan); in vpx_quantize_b_neon()
[all …]
/external/libaom/libaom/av1/encoder/x86/
Dav1_highbd_quantize_sse4.c24 __m128i *qcoeff, __m128i *dquan, in quantize_coeff_phase1() argument
33 qcoeff[0] = _mm_add_epi32(*coeff, param[0]); in quantize_coeff_phase1()
34 qcoeff[1] = _mm_unpackhi_epi32(qcoeff[0], zero); in quantize_coeff_phase1()
35 qcoeff[0] = _mm_unpacklo_epi32(qcoeff[0], zero); in quantize_coeff_phase1()
37 qcoeff[0] = _mm_mul_epi32(qcoeff[0], param[1]); in quantize_coeff_phase1()
38 qcoeff[0] = _mm_srli_epi64(qcoeff[0], shift); in quantize_coeff_phase1()
39 dquan[0] = _mm_mul_epi32(qcoeff[0], param[2]); in quantize_coeff_phase1()
42 qcoeff[2] = _mm_cmplt_epi32(abs_s, param[3]); in quantize_coeff_phase1()
46 static INLINE void quantize_coeff_phase2(__m128i *qcoeff, __m128i *dquan, in quantize_coeff_phase2() argument
54 qcoeff[1] = _mm_mul_epi32(qcoeff[1], param[1]); in quantize_coeff_phase2()
[all …]
Dav1_quantize_avx2.c30 static INLINE void write_zero(tran_low_t *qcoeff) { in write_zero() argument
33 _mm256_storeu_si256((__m256i *)qcoeff, zero); in write_zero()
34 _mm256_storeu_si256((__m256i *)qcoeff + 1, zero); in write_zero()
36 _mm256_storeu_si256((__m256i *)qcoeff, zero); in write_zero()
108 const int16_t *iscan_ptr, tran_low_t *qcoeff, in quantize() argument
121 store_two_quan(q, qcoeff, dq, dqcoeff); in quantize()
130 write_zero(qcoeff); in quantize()
295 tran_low_t *qcoeff, tran_low_t *dqcoeff, in quantize_32x32() argument
312 store_two_quan(q, qcoeff, dq, dqcoeff); in quantize_32x32()
321 write_zero(qcoeff); in quantize_32x32()
[all …]
/external/libaom/libaom/aom_dsp/x86/
Dadaptive_quantize_avx2.c57 static INLINE void update_mask0_avx2(__m256i *qcoeff, __m256i *threshold, in update_mask0_avx2() argument
62 coeff[0] = _mm256_unpacklo_epi16(*qcoeff, zero); in update_mask0_avx2()
63 coeff[1] = _mm256_unpackhi_epi16(*qcoeff, zero); in update_mask0_avx2()
76 __m256i tmp, qcoeff; in calculate_qcoeff_avx2() local
77 qcoeff = _mm256_adds_epi16(*coeff, *round); in calculate_qcoeff_avx2()
78 tmp = _mm256_mulhi_epi16(qcoeff, *quant); in calculate_qcoeff_avx2()
79 qcoeff = _mm256_add_epi16(tmp, qcoeff); in calculate_qcoeff_avx2()
80 *coeff = _mm256_mulhi_epi16(qcoeff, *shift); in calculate_qcoeff_avx2()
83 static INLINE __m256i calculate_dqcoeff_avx2(__m256i qcoeff, __m256i dequant) { in calculate_dqcoeff_avx2() argument
84 return _mm256_mullo_epi16(qcoeff, dequant); in calculate_dqcoeff_avx2()
[all …]
Dquantize_x86.h42 __m128i tmp, qcoeff; in calculate_qcoeff() local
43 qcoeff = _mm_adds_epi16(*coeff, round); in calculate_qcoeff()
44 tmp = _mm_mulhi_epi16(qcoeff, quant); in calculate_qcoeff()
45 qcoeff = _mm_add_epi16(tmp, qcoeff); in calculate_qcoeff()
46 *coeff = _mm_mulhi_epi16(qcoeff, shift); in calculate_qcoeff()
54 __m128i tmp, tmp1, qcoeff; in calculate_qcoeff_log_scale() local
55 qcoeff = _mm_adds_epi16(*coeff, round); in calculate_qcoeff_log_scale()
56 tmp = _mm_mulhi_epi16(qcoeff, quant); in calculate_qcoeff_log_scale()
57 qcoeff = _mm_add_epi16(tmp, qcoeff); in calculate_qcoeff_log_scale()
58 tmp = _mm_mullo_epi16(qcoeff, *shift); in calculate_qcoeff_log_scale()
[all …]
Dquantize_ssse3.c25 __m128i tmp, qcoeff, tmp1; in calculate_qcoeff_64x64() local
26 qcoeff = _mm_adds_epi16(*coeff, round); in calculate_qcoeff_64x64()
27 tmp = _mm_mulhi_epi16(qcoeff, quant); in calculate_qcoeff_64x64()
28 qcoeff = _mm_add_epi16(tmp, qcoeff); in calculate_qcoeff_64x64()
29 tmp = _mm_mullo_epi16(qcoeff, *shift); in calculate_qcoeff_64x64()
31 tmp1 = _mm_mulhi_epi16(qcoeff, *shift); in calculate_qcoeff_64x64()
36 static INLINE void calculate_dqcoeff_and_store_64x64(const __m128i qcoeff, in calculate_dqcoeff_and_store_64x64() argument
41 const __m128i coeff = _mm_abs_epi16(qcoeff); in calculate_dqcoeff_and_store_64x64()
43 const __m128i sign_0 = _mm_unpacklo_epi16(zero, qcoeff); in calculate_dqcoeff_and_store_64x64()
44 const __m128i sign_1 = _mm_unpackhi_epi16(zero, qcoeff); in calculate_dqcoeff_and_store_64x64()
Dhighbd_adaptive_quantize_avx2.c80 __m256i tmp, qcoeff; in highbd_calculate_qcoeff_avx2() local
81 qcoeff = _mm256_add_epi32(*coeff, *round); in highbd_calculate_qcoeff_avx2()
82 highbd_mul_shift_avx2(&qcoeff, quant, &tmp, 16); in highbd_calculate_qcoeff_avx2()
83 qcoeff = _mm256_add_epi32(tmp, qcoeff); in highbd_calculate_qcoeff_avx2()
84 highbd_mul_shift_avx2(&qcoeff, shift, coeff, 16 - *log_scale); in highbd_calculate_qcoeff_avx2()
87 static INLINE __m256i highbd_calculate_dqcoeff_avx2(__m256i qcoeff, in highbd_calculate_dqcoeff_avx2() argument
89 return _mm256_mullo_epi32(qcoeff, dequant); in highbd_calculate_dqcoeff_avx2()
93 __m256i qcoeff, __m256i dequant, const int log_scale) { in highbd_calculate_dqcoeff_log_scale_avx2() argument
94 __m256i abs_coeff = _mm256_abs_epi32(qcoeff); in highbd_calculate_dqcoeff_log_scale_avx2()
96 return _mm256_sign_epi32(abs_coeff, qcoeff); in highbd_calculate_dqcoeff_log_scale_avx2()
[all …]
Dhighbd_adaptive_quantize_sse2.c50 __m128i tmp, qcoeff; in highbd_calculate_qcoeff() local
51 qcoeff = _mm_add_epi32(*coeff, *round); in highbd_calculate_qcoeff()
52 highbd_mul_shift_sse2(&qcoeff, quant, &tmp, 16); in highbd_calculate_qcoeff()
53 qcoeff = _mm_add_epi32(tmp, qcoeff); in highbd_calculate_qcoeff()
54 highbd_mul_shift_sse2(&qcoeff, shift, coeff, 16 - *log_scale); in highbd_calculate_qcoeff()
86 static INLINE __m128i highbd_calculate_dqcoeff(__m128i qcoeff, __m128i dequant, in highbd_calculate_dqcoeff() argument
88 __m128i coeff_sign = _mm_srai_epi32(qcoeff, 31); in highbd_calculate_dqcoeff()
89 __m128i abs_coeff = invert_sign_32_sse2(qcoeff, coeff_sign); in highbd_calculate_dqcoeff()
276 const int qcoeff = qcoeff_ptr[rc]; in aom_highbd_quantize_b_adaptive_sse2() local
277 if (qcoeff) { in aom_highbd_quantize_b_adaptive_sse2()
[all …]
/external/libvpx/libvpx/vp9/encoder/arm/neon/
Dvp9_quantize_neon.c29 static INLINE void calculate_dqcoeff_and_store(const int16x8_t qcoeff, in calculate_dqcoeff_and_store() argument
33 vmull_s16(vget_low_s16(qcoeff), vget_low_s16(dequant)); in calculate_dqcoeff_and_store()
35 vmull_s16(vget_high_s16(qcoeff), vget_high_s16(dequant)); in calculate_dqcoeff_and_store()
165 int16x8_t qcoeff = vqaddq_s16(coeff_abs, round); in vp9_quantize_fp_32x32_neon() local
174 qcoeff = vqdmulhq_s16(qcoeff, quant); in vp9_quantize_fp_32x32_neon()
177 qcoeff = veorq_s16(qcoeff, coeff_sign); in vp9_quantize_fp_32x32_neon()
178 qcoeff = vsubq_s16(qcoeff, coeff_sign); in vp9_quantize_fp_32x32_neon()
179 qcoeff = vandq_s16(qcoeff, dequant_mask); in vp9_quantize_fp_32x32_neon()
182 dqcoeff_0 = vmull_s16(vget_low_s16(qcoeff), dequant); in vp9_quantize_fp_32x32_neon()
183 dqcoeff_1 = vmull_n_s16(vget_high_s16(qcoeff), dequant_ptr[1]); in vp9_quantize_fp_32x32_neon()
[all …]
/external/libvpx/libvpx/vpx_dsp/x86/
Dquantize_sse2.h40 __m128i tmp, qcoeff; in calculate_qcoeff() local
41 qcoeff = _mm_adds_epi16(*coeff, round); in calculate_qcoeff()
42 tmp = _mm_mulhi_epi16(qcoeff, quant); in calculate_qcoeff()
43 qcoeff = _mm_add_epi16(tmp, qcoeff); in calculate_qcoeff()
44 *coeff = _mm_mulhi_epi16(qcoeff, shift); in calculate_qcoeff()
47 static INLINE void calculate_dqcoeff_and_store(__m128i qcoeff, __m128i dequant, in calculate_dqcoeff_and_store() argument
50 const __m128i low = _mm_mullo_epi16(qcoeff, dequant); in calculate_dqcoeff_and_store()
51 const __m128i high = _mm_mulhi_epi16(qcoeff, dequant); in calculate_dqcoeff_and_store()
59 const __m128i dqcoeff16 = _mm_mullo_epi16(qcoeff, dequant); in calculate_dqcoeff_and_store()
Dquantize_ssse3.h20 static INLINE void calculate_dqcoeff_and_store_32x32(const __m128i qcoeff, in calculate_dqcoeff_and_store_32x32() argument
25 const __m128i coeff = _mm_abs_epi16(qcoeff); in calculate_dqcoeff_and_store_32x32()
27 const __m128i sign_0 = _mm_unpacklo_epi16(zero, qcoeff); in calculate_dqcoeff_and_store_32x32()
28 const __m128i sign_1 = _mm_unpackhi_epi16(zero, qcoeff); in calculate_dqcoeff_and_store_32x32()
/external/libvpx/libvpx/vpx_dsp/ppc/
Dquantize_vsx.c43 int16x8_t qcoeff = vec_mulhi(rounded, quant); in quantize_coeff() local
44 qcoeff = vec_add(qcoeff, rounded); in quantize_coeff()
45 qcoeff = vec_mulhi(qcoeff, quant_shift); in quantize_coeff()
46 qcoeff = vec_sign(qcoeff, coeff); in quantize_coeff()
47 return vec_and(qcoeff, mask); in quantize_coeff()
56 int16x8_t qcoeff = vec_mulhi(rounded, quant); in quantize_coeff_32() local
57 qcoeff = vec_add(qcoeff, rounded); in quantize_coeff_32()
61 qcoeff = vec_madds(qcoeff, quant_shift, vec_zeros_s16); in quantize_coeff_32()
62 qcoeff = vec_sign(qcoeff, coeff); in quantize_coeff_32()
63 return vec_and(qcoeff, mask); in quantize_coeff_32()
[all …]
/external/libvpx/libvpx/vp9/encoder/
Dvp9_encodemb.c73 tran_low_t *const qcoeff = BLOCK_OFFSET(p->qcoeff, block); in vp9_optimize_b() local
121 token_cache[rc] = vp9_pt_energy_class[vp9_get_token(qcoeff[rc])]; in vp9_optimize_b()
135 const int x = qcoeff[rc]; in vp9_optimize_b()
213 (i + 1 != eob) ? vp9_get_token(qcoeff[scan[i + 1]]) : EOB_TOKEN; in vp9_optimize_b()
264 qcoeff[rc] = x1; in vp9_optimize_b()
276 if (sharpness > 0 && abs(qcoeff[rc]) > 1) count_high_values_after_eob++; in vp9_optimize_b()
278 x_prev = qcoeff[rc]; // Update based on selected quantized value. in vp9_optimize_b()
303 const int x = qcoeff[rc]; in vp9_optimize_b()
316 qcoeff[rc] = before_best_eob_qc; in vp9_optimize_b()
321 qcoeff[rc] = 0; in vp9_optimize_b()
[all …]
Dvp9_context_tree.c33 CHECK_MEM_ERROR(cm, ctx->qcoeff[i][k], in alloc_mode_context()
34 vpx_memalign(32, num_pix * sizeof(*ctx->qcoeff[i][k]))); in alloc_mode_context()
40 ctx->qcoeff_pbuf[i][k] = ctx->qcoeff[i][k]; in alloc_mode_context()
55 vpx_free(ctx->qcoeff[i][k]); in free_mode_context()
56 ctx->qcoeff[i][k] = 0; in free_mode_context()
/external/libaom/libaom/av1/encoder/
Dencodetxb.c376 const tran_low_t qc = txb_info->qcoeff[coeff_idx];
440 const tran_low_t qc = txb_info->qcoeff[coeff_idx];
461 txb_info->qcoeff[coeff_idx] = qc;
739 const int qcoeff = qcoeff_ptr[rc]; local
744 if (((abs_coeff << (1 + shift)) < zbin[rc != 0]) || (qcoeff == 0)) {
763 const tran_low_t *const qcoeff = p->qcoeff + BLOCK_OFFSET(block); local
778 av1_txb_init_levels(qcoeff, width, height, levels);
791 const tran_low_t v = qcoeff[pos];
817 const tran_low_t v = qcoeff[pos];
832 const tran_low_t v = qcoeff[pos];
[all …]
Dencodemb.c139 tran_low_t *const qcoeff = p->qcoeff + BLOCK_OFFSET(block); in av1_dropout_qcoeff() local
178 if (qcoeff[scan_idx] > DROPOUT_COEFF_MAX) { // Keep large coefficients. in av1_dropout_qcoeff()
183 } else if (qcoeff[scan_idx] == 0) { // Count zeros. in av1_dropout_qcoeff()
215 qcoeff[scan_order->scan[j]] = 0; in av1_dropout_qcoeff()
229 (uint8_t)av1_get_txb_entropy_context(qcoeff, scan_order, eob); in av1_dropout_qcoeff()
275 tran_low_t *const qcoeff = p->qcoeff + block_offset; in av1_xform_quant() local
290 coeff, n_coeffs, p, qcoeff, dqcoeff, eob, scan_order, qparam); in av1_xform_quant()
293 coeff, n_coeffs, p, qcoeff, dqcoeff, eob, scan_order, qparam); in av1_xform_quant()
296 av1_quantize_skip(n_coeffs, qcoeff, dqcoeff, eob); in av1_xform_quant()
305 (uint8_t)av1_get_txb_entropy_context(qcoeff, scan_order, *eob); in av1_xform_quant()
/external/libvpx/libvpx/vp8/common/
Dinvtrans.h42 vp8_short_inv_walsh4x4(&xd->block[24].dqcoeff[0], xd->qcoeff); in vp8_inverse_transform_mby()
44 vp8_short_inv_walsh4x4_1(&xd->block[24].dqcoeff[0], xd->qcoeff); in vp8_inverse_transform_mby()
46 eob_adjust(xd->eobs, xd->qcoeff); in vp8_inverse_transform_mby()
50 vp8_dequant_idct_add_y_block(xd->qcoeff, DQC, xd->dst.y_buffer, in vp8_inverse_transform_mby()
Dmbpitch.c37 x->block[r].qcoeff = x->qcoeff + r * 16; in vp8_setup_block_dptrs()
/external/libvpx/libvpx/vp8/decoder/
Ddecodeframe.c134 memset(xd->qcoeff, 0, sizeof(xd->qcoeff)); in decode_macroblock()
180 vp8_dequant_idct_add(b->qcoeff, DQC, dst, dst_stride); in decode_macroblock()
182 vp8_dc_only_idct_add(b->qcoeff[0] * DQC[0], dst, dst_stride, dst, in decode_macroblock()
184 memset(b->qcoeff, 0, 2 * sizeof(b->qcoeff[0])); in decode_macroblock()
211 vp8_short_inv_walsh4x4(&b->dqcoeff[0], xd->qcoeff); in decode_macroblock()
212 memset(b->qcoeff, 0, 16 * sizeof(b->qcoeff[0])); in decode_macroblock()
214 b->dqcoeff[0] = (short)(b->qcoeff[0] * xd->dequant_y2[0]); in decode_macroblock()
215 vp8_short_inv_walsh4x4_1(&b->dqcoeff[0], xd->qcoeff); in decode_macroblock()
216 memset(b->qcoeff, 0, 2 * sizeof(b->qcoeff[0])); in decode_macroblock()
225 vp8_dequant_idct_add_y_block(xd->qcoeff, DQC, xd->dst.y_buffer, in decode_macroblock()
[all …]
Dthreading.c126 memset(xd->qcoeff, 0, sizeof(xd->qcoeff)); in mt_decode_macroblock()
194 vp8_dequant_idct_add(b->qcoeff, DQC, dst, dst_stride); in mt_decode_macroblock()
196 vp8_dc_only_idct_add(b->qcoeff[0] * DQC[0], dst, dst_stride, dst, in mt_decode_macroblock()
198 memset(b->qcoeff, 0, 2 * sizeof(b->qcoeff[0])); in mt_decode_macroblock()
225 vp8_short_inv_walsh4x4(&b->dqcoeff[0], xd->qcoeff); in mt_decode_macroblock()
226 memset(b->qcoeff, 0, 16 * sizeof(b->qcoeff[0])); in mt_decode_macroblock()
228 b->dqcoeff[0] = b->qcoeff[0] * xd->dequant_y2[0]; in mt_decode_macroblock()
229 vp8_short_inv_walsh4x4_1(&b->dqcoeff[0], xd->qcoeff); in mt_decode_macroblock()
230 memset(b->qcoeff, 0, 2 * sizeof(b->qcoeff[0])); in mt_decode_macroblock()
239 vp8_dequant_idct_add_y_block(xd->qcoeff, DQC, xd->dst.y_buffer, in mt_decode_macroblock()
[all …]
/external/libvpx/libvpx/vp8/common/x86/
Didctllm_sse2.asm16 ; short *qcoeff - 0
33 mov rax, arg(0) ; qcoeff
101 ; short *qcoeff - 0
118 ; dc is set as first coeff, so no need to load qcoeff
119 mov rax, arg(0) ; qcoeff
141 ; dequantize qcoeff buffer
357 ; short *qcoeff - 0
373 ; dc is set as first coeff, so no need to load qcoeff
374 mov rax, arg(0) ; qcoeff
433 ; short *qcoeff - 0
[all …]
/external/libvpx/libvpx/vp8/encoder/x86/
Dvp8_quantize_sse2.c36 short *qcoeff_ptr = d->qcoeff; in vp8_regular_quantize_b_sse2()
129 y0 = _mm_load_si128((__m128i *)(d->qcoeff)); in vp8_regular_quantize_b_sse2()
130 y1 = _mm_load_si128((__m128i *)(d->qcoeff + 8)); in vp8_regular_quantize_b_sse2()
183 _mm_store_si128((__m128i *)(d->qcoeff), x0); in vp8_fast_quantize_b_sse2()
184 _mm_store_si128((__m128i *)(d->qcoeff + 8), x1); in vp8_fast_quantize_b_sse2()
/external/libvpx/libvpx/vp8/common/mips/mmi/
Ddequantize_mmi.c54 : [dqcoeff] "r"(d->dqcoeff), [qcoeff] "r"(d->qcoeff), [DQC] "r"(DQC) in vp8_dequantize_b_mmi()
/external/libvpx/libvpx/test/
Dquantize_test.cc100 EXPECT_EQ(0, memcmp(vp8_comp_->mb.e_mbd.qcoeff, macroblockd_dst_->qcoeff, in CheckOutput()
101 sizeof(*macroblockd_dst_->qcoeff) * kNumBlocks * in CheckOutput()
/external/libaom/libaom/test/
Dquantize_func_test.cc116 tran_low_t *qcoeff = dqcoeff_ref + n_coeffs; in QuantizeRun() local
117 tran_low_t *dqcoeff = qcoeff + n_coeffs; in QuantizeRun()
149 quant_shift, qcoeff, dqcoeff, dequant, in QuantizeRun()
153 ASSERT_EQ(qcoeff_ref[j], qcoeff[j]) in QuantizeRun()
283 tran_low_t *qcoeff = dqcoeff_ref + n_coeffs; in TEST_P() local
284 tran_low_t *dqcoeff = qcoeff + n_coeffs; in TEST_P()
309 qcoeff, dqcoeff, dequant, eob, sc->scan, sc->iscan); in TEST_P()
315 quant_(coeff_ptr, n_coeffs, zbin, round_fp, quant_fp, quant_shift, qcoeff, in TEST_P()

123