Lines Matching defs:block

81 static void dnxhd_8bit_get_pixels_8x4_sym(int16_t *av_restrict block,
87 block[0] = pixels[0];
88 block[1] = pixels[1];
89 block[2] = pixels[2];
90 block[3] = pixels[3];
91 block[4] = pixels[4];
92 block[5] = pixels[5];
93 block[6] = pixels[6];
94 block[7] = pixels[7];
96 block += 8;
98 memcpy(block, block - 8, sizeof(*block) * 8);
99 memcpy(block + 8, block - 16, sizeof(*block) * 8);
100 memcpy(block + 16, block - 24, sizeof(*block) * 8);
101 memcpy(block + 24, block - 32, sizeof(*block) * 8);
105 void dnxhd_10bit_get_pixels_8x4_sym(int16_t *av_restrict block,
109 memcpy(block + 0 * 8, pixels + 0 * line_size, 8 * sizeof(*block));
110 memcpy(block + 7 * 8, pixels + 0 * line_size, 8 * sizeof(*block));
111 memcpy(block + 1 * 8, pixels + 1 * line_size, 8 * sizeof(*block));
112 memcpy(block + 6 * 8, pixels + 1 * line_size, 8 * sizeof(*block));
113 memcpy(block + 2 * 8, pixels + 2 * line_size, 8 * sizeof(*block));
114 memcpy(block + 5 * 8, pixels + 2 * line_size, 8 * sizeof(*block));
115 memcpy(block + 3 * 8, pixels + 3 * line_size, 8 * sizeof(*block));
116 memcpy(block + 4 * 8, pixels + 3 * line_size, 8 * sizeof(*block));
119 static int dnxhd_10bit_dct_quantize_444(MpegEncContext *ctx, int16_t *block,
129 ctx->fdsp.fdct(block);
131 block[0] = (block[0] + 2) >> 2;
141 level = block[j] * qmat[j];
147 block[j]=0;
153 level = block[j] * qmat[j];
158 block[j] = level;
161 block[j] = -level;
165 block[j] = 0;
172 ff_block_permute(block, ctx->idsp.idct_permutation,
178 static int dnxhd_10bit_dct_quantize(MpegEncContext *ctx, int16_t *block,
186 ctx->fdsp.fdct(block);
189 block[0] = (block[0] + 2) >> 2;
193 int sign = FF_SIGNBIT(block[j]);
194 int level = (block[j] ^ sign) - sign;
196 block[j] = (level ^ sign) - sign;
203 ff_block_permute(block, ctx->idsp.idct_permutation,
311 * quantized = sign(block[i]) * floor(abs(block[i]/s) * p /
578 void dnxhd_encode_block(DNXHDEncContext *ctx, int16_t *block,
584 dnxhd_encode_dc(ctx, block[0] - ctx->m.last_dc[n]);
585 ctx->m.last_dc[n] = block[0];
589 slevel = block[j];
604 void dnxhd_unquantize_c(DNXHDEncContext *ctx, int16_t *block, int n,
621 level = block[j];
647 block[j] = level;
652 static av_always_inline int dnxhd_ssd_block(int16_t *qblock, int16_t *block)
657 score += (block[i] - qblock[i]) * (block[i] - qblock[i]);
662 int dnxhd_calc_ac_bits(DNXHDEncContext *ctx, int16_t *block, int last_index)
669 level = block[j];
828 LOCAL_ALIGNED_16(int16_t, block, [64]);
849 memcpy(block, src_block, 64 * sizeof(*block));
850 last_index = ctx->m.dct_quantize(&ctx->m, block,
853 ac_bits += dnxhd_calc_ac_bits(ctx, block, last_index);
855 diff = block[0] - ctx->m.last_dc[n];
864 ctx->m.last_dc[n] = block[0];
867 dnxhd_unquantize_c(ctx, block, i, qscale, last_index);
868 ctx->m.idsp.idct(block);
869 ssd += dnxhd_ssd_block(block, src_block);
902 int16_t *block = ctx->blocks[i];
904 int last_index = ctx->m.dct_quantize(&ctx->m, block,
908 dnxhd_encode_block(ctx, block, last_index, n);