Lines Matching refs:mb_x
296 s->m.mb_x= in encode_q_branch()
513 static int get_dc(SnowContext *s, int mb_x, int mb_y, int plane_index){ in get_dc() argument
527 int index= mb_x + mb_y*b_stride; in get_dc()
540 int mb_x2= mb_x + (i &1) - 1; in get_dc()
550 … int index= x2-(block_w*mb_x - block_w/2) + (y2-(block_h*mb_y - block_h/2))*obmc_stride; in get_dc()
609 static int get_block_rd(SnowContext *s, int mb_x, int mb_y, int plane_index, uint8_t (*obmc_edged)[… in get_block_rd() argument
628 int sx= block_w*mb_x - block_w/2; in get_block_rd()
638 …ff_snow_pred_block(s, cur, tmp, ref_stride, sx, sy, block_w*2, block_h*2, &s->block[mb_x + mb_y*b_… in get_block_rd()
659 && (mb_x == 0 || mb_x == b_stride-1) in get_block_rd()
661 if(mb_x == 0) in get_block_rd()
702 rate += get_block_bits(s, mb_x + (i&1) - (i>>1), mb_y + (i>>1), 1); in get_block_rd()
704 if(mb_x == b_stride-2) in get_block_rd()
705 rate += get_block_bits(s, mb_x + 1, mb_y + 1, 1); in get_block_rd()
710 static int get_4block_rd(SnowContext *s, int mb_x, int mb_y, int plane_index){ in get_4block_rd() argument
734 int mb_x2= mb_x + (i%3) - 1; in get_4block_rd()
761 BlockNode *b= &s->block[mb_x+mb_y*b_stride]; in get_4block_rd()
770 rate = get_block_bits(s, mb_x, mb_y, 2); in get_4block_rd()
773 rate += get_block_bits(s, mb_x + dxy[i][0], mb_y + dxy[i][1], 1); in get_4block_rd()
906 static av_always_inline int check_block(SnowContext *s, int mb_x, int mb_y, int p[3], int intra, ui… in check_block() argument
908 BlockNode *block= &s->block[mb_x + mb_y * b_stride]; in check_block()
913 av_assert2(mb_x>=0 && mb_y>=0); in check_block()
914 av_assert2(mb_x<b_stride); in check_block()
933 rd= get_block_rd(s, mb_x, mb_y, 0, obmc_edged) + s->intra_penalty * !!intra; in check_block()
947 static av_always_inline int check_block_inter(SnowContext *s, int mb_x, int mb_y, int p0, int p1, u… in check_block_inter() argument
949 return check_block(s, mb_x, mb_y, p, 0, obmc_edged, best_rd); in check_block_inter()
952 static av_always_inline int check_4block_inter(SnowContext *s, int mb_x, int mb_y, int p0, int p1, … in check_4block_inter() argument
954 BlockNode *block= &s->block[mb_x + mb_y * b_stride]; in check_4block_inter()
967 av_assert2(mb_x>=0 && mb_y>=0); in check_4block_inter()
968 av_assert2(mb_x<b_stride); in check_4block_inter()
969 av_assert2(((mb_x|mb_y)&1) == 0); in check_4block_inter()
983 rd= get_4block_rd(s, mb_x, mb_y, 0); in check_4block_inter()
999 int pass, mb_x, mb_y; in iterative_me() local
1010 for(mb_x= 0; mb_x<s->b_width; mb_x++) in iterative_me()
1011 encode_q_branch(s, 0, mb_x, mb_y); in iterative_me()
1020 for(mb_x= 0; mb_x<b_width; mb_x++){ in iterative_me()
1024 const int index= mb_x + mb_y * b_stride; in iterative_me()
1027 … BlockNode *lb = mb_x ? &s->block[index -1] : NULL; in iterative_me()
1028 … BlockNode *rb = mb_x+1<b_width ? &s->block[index +1] : NULL; in iterative_me()
1030 … BlockNode *tlb= mb_x && mb_y ? &s->block[index-b_stride-1] : NULL; in iterative_me()
1031 … BlockNode *trb= mb_x+1<b_width && mb_y ? &s->block[index-b_stride+1] : NULL; in iterative_me()
1032 … BlockNode *blb= mb_x && mb_y+1<b_height ? &s->block[index+b_stride-1] : NULL; in iterative_me()
1033 … BlockNode *brb= mb_x+1<b_width && mb_y+1<b_height ? &s->block[index+b_stride+1] : NULL; in iterative_me()
1052 if(mb_x==0) in iterative_me()
1055 if(mb_x==b_stride-1) in iterative_me()
1073 if(mb_x==0 || mb_y==0 || mb_x==b_width-1 || mb_y==b_height-1){ in iterative_me()
1079 const int sx= block_w*mb_x - block_w/2; in iterative_me()
1101 color[i]= get_dc(s, mb_x, mb_y, i); in iterative_me()
1106 check_block(s, mb_x, mb_y, color0, 1, obmc_edged, &best_rd); in iterative_me()
1108 check_block_inter(s, mb_x, mb_y, block->mx, block->my, obmc_edged, &best_rd); in iterative_me()
1119 check_block_inter(s, mb_x, mb_y, mvr[0][0], mvr[0][1], obmc_edged, &best_rd); in iterative_me()
1120 check_block_inter(s, mb_x, mb_y, 0, 0, obmc_edged, &best_rd); in iterative_me()
1122 … check_block_inter(s, mb_x, mb_y, mvr[-b_stride][0], mvr[-b_stride][1], obmc_edged, &best_rd); in iterative_me()
1124 … check_block_inter(s, mb_x, mb_y, mvr[-1][0], mvr[-1][1], obmc_edged, &best_rd); in iterative_me()
1126 … check_block_inter(s, mb_x, mb_y, mvr[1][0], mvr[1][1], obmc_edged, &best_rd); in iterative_me()
1128 … check_block_inter(s, mb_x, mb_y, mvr[b_stride][0], mvr[b_stride][1], obmc_edged, &best_rd); in iterative_me()
1139 … dia_change |= check_block_inter(s, mb_x, mb_y, newx+4*(i-j), newy+(4*j), obmc_edged, &best_rd); in iterative_me()
1140 … dia_change |= check_block_inter(s, mb_x, mb_y, newx-4*(i-j), newy-(4*j), obmc_edged, &best_rd); in iterative_me()
1141 … dia_change |= check_block_inter(s, mb_x, mb_y, newx-(4*j), newy+4*(i-j), obmc_edged, &best_rd); in iterative_me()
1142 … dia_change |= check_block_inter(s, mb_x, mb_y, newx+(4*j), newy-4*(i-j), obmc_edged, &best_rd); in iterative_me()
1151 …dia_change |= check_block_inter(s, mb_x, mb_y, block->mx+square[i][0], block->my+square[i][1], obm… in iterative_me()
1164 check_block(s, mb_x, mb_y, color, 1, obmc_edged, &best_rd); in iterative_me()
1187 for(mb_x= 0; mb_x<b_width; mb_x+=2){ in iterative_me()
1190 const int index= mb_x + mb_y * b_stride; in iterative_me()
1206 init_rd= best_rd= get_4block_rd(s, mb_x, mb_y, 0); in iterative_me()
1209 check_4block_inter(s, mb_x, mb_y, in iterative_me()
1215 check_4block_inter(s, mb_x, mb_y, b[i]->mx, b[i]->my, b[i]->ref, &best_rd); in iterative_me()