Lines Matching refs:mb_xy

380 static av_always_inline void add_blocklist(int (*blocklist)[2], int *blocklist_length, uint8_t *fixed, int mb_x, int mb_y, int mb_xy)
382 if (fixed[mb_xy])
384 fixed[mb_xy] = MV_LISTED;
416 const int mb_xy = s->mb_index2xy[i];
418 int error = s->error_status_table[mb_xy];
420 if (IS_INTRA(s->cur_pic.mb_type[mb_xy]))
425 fixed[mb_xy] = f;
429 const int mb_y= mb_xy / s->mb_stride;
430 const int mb_x= mb_xy % s->mb_stride;
434 s->cur_pic.ref_index[0][4*mb_xy] = s->last_pic.ref_index[0][4*mb_xy];
442 const int mb_xy = mb_x + mb_y * s->mb_stride;
445 if (IS_INTRA(s->cur_pic.mb_type[mb_xy]))
447 if (!(s->error_status_table[mb_xy] & ER_MV_ERROR))
462 const int mb_xy = mb_x + mb_y * mb_stride;
463 if (fixed[mb_xy] == MV_FROZEN) {
464 if (mb_x) add_blocklist(blocklist, &blocklist_length, fixed, mb_x - 1, mb_y, mb_xy - 1);
465 if (mb_y) add_blocklist(blocklist, &blocklist_length, fixed, mb_x, mb_y - 1, mb_xy - mb_stride);
466 if (mb_x+1 < mb_width) add_blocklist(blocklist, &blocklist_length, fixed, mb_x + 1, mb_y, mb_xy + 1);
467 if (mb_y+1 < mb_height) add_blocklist(blocklist, &blocklist_length, fixed, mb_x, mb_y + 1, mb_xy + mb_stride);
483 const int mb_xy = mb_x + mb_y * mb_stride;
495 av_assert2(fixed[mb_xy] != MV_FROZEN);
498 av_assert1(!IS_INTRA(s->cur_pic.mb_type[mb_xy]));
503 j |= fixed[mb_xy - 1];
505 j |= fixed[mb_xy + 1];
507 j |= fixed[mb_xy - mb_stride];
509 j |= fixed[mb_xy + mb_stride];
520 if (mb_x > 0 && fixed[mb_xy - 1] > 1) {
526 s->cur_pic.ref_index[0][4 * (mb_xy - 1)];
529 if (mb_x + 1 < mb_width && fixed[mb_xy + 1] > 1) {
535 s->cur_pic.ref_index[0][4 * (mb_xy + 1)];
538 if (mb_y > 0 && fixed[mb_xy - mb_stride] > 1) {
544 s->cur_pic.ref_index[0][4 * (mb_xy - s->mb_stride)];
547 if (mb_y + 1<mb_height && fixed[mb_xy + mb_stride] > 1) {
553 s->cur_pic.ref_index[0][4 * (mb_xy + s->mb_stride)];
612 prev_ref = s->cur_pic.ref_index[0][4 * mb_xy];
640 if (mb_x > 0 && fixed[mb_xy - 1] > 1) {
646 if (mb_x + 1 < mb_width && fixed[mb_xy + 1] > 1) {
652 if (mb_y > 0 && fixed[mb_xy - mb_stride] > 1) {
657 if (mb_y + 1 < mb_height && fixed[mb_xy + mb_stride] > 1) {
683 fixed[mb_xy] = MV_CHANGED;
686 fixed[mb_xy] = MV_UNCHANGED;
698 const int mb_xy = mb_x + mb_y * mb_stride;
700 if (fixed[mb_xy] & (MV_CHANGED|MV_UNCHANGED|MV_FROZEN)) {
701 fixed[mb_xy] = MV_FROZEN;
703 add_blocklist(next_blocklist, &next_blocklist_length, fixed, mb_x - 1, mb_y, mb_xy - 1);
705 add_blocklist(next_blocklist, &next_blocklist_length, fixed, mb_x, mb_y - 1, mb_xy - mb_stride);
707 add_blocklist(next_blocklist, &next_blocklist_length, fixed, mb_x + 1, mb_y, mb_xy + 1);
709 add_blocklist(next_blocklist, &next_blocklist_length, fixed, mb_x, mb_y + 1, mb_xy + mb_stride);
730 const int mb_xy = s->mb_index2xy[i];
731 const int error = s->error_status_table[mb_xy];
746 const int mb_xy = mb_x + mb_y * s->mb_stride;
748 error = s->error_status_table[mb_xy];
776 if (IS_INTRA(s->cur_pic.mb_type[mb_xy]))
984 const int mb_xy = s->mb_index2xy[i];
985 int error = s->error_status_table[mb_xy];
993 s->error_status_table[mb_xy] |= 1 << error_type;
1006 const int mb_xy = s->mb_index2xy[i];
1007 int error = s->error_status_table[mb_xy];
1017 s->error_status_table[mb_xy]|= ER_AC_ERROR;
1030 const int mb_xy = s->mb_index2xy[i];
1031 int error1 = s->error_status_table[mb_xy];
1046 s->error_status_table[mb_xy] |= ER_MB_ERROR;
1055 const int mb_xy = s->mb_index2xy[i];
1056 int error = s->error_status_table[mb_xy];
1058 if (!s->mbskip_table || !s->mbskip_table[mb_xy]) // FIXME partition specific
1065 s->error_status_table[mb_xy] |= 1 << error_type;
1068 s->error_status_table[mb_xy] |= 1 << error_type;
1080 const int mb_xy = s->mb_index2xy[i];
1081 int old_error = s->error_status_table[mb_xy];
1087 s->error_status_table[mb_xy] |= error;
1094 const int mb_xy = s->mb_index2xy[i];
1095 int error = s->error_status_table[mb_xy];
1098 s->error_status_table[mb_xy] = error;
1105 const int mb_xy = s->mb_index2xy[i];
1106 int error = s->error_status_table[mb_xy];
1123 const int mb_xy = s->mb_index2xy[i];
1124 int error = s->error_status_table[mb_xy];
1129 s->cur_pic.mb_type[mb_xy] = MB_TYPE_INTRA4x4;
1131 s->cur_pic.mb_type[mb_xy] = MB_TYPE_16x16 | MB_TYPE_L0;
1138 const int mb_xy = s->mb_index2xy[i];
1139 if (!IS_INTRA(s->cur_pic.mb_type[mb_xy]))
1140 s->cur_pic.mb_type[mb_xy] = MB_TYPE_INTRA4x4;
1146 const int mb_xy = mb_x + mb_y * s->mb_stride;
1147 const int mb_type = s->cur_pic.mb_type[mb_xy];
1152 int error = s->error_status_table[mb_xy];
1185 const int mb_xy = mb_x + mb_y * s->mb_stride;
1186 const int mb_type = s->cur_pic.mb_type[mb_xy];
1189 int error = s->error_status_table[mb_xy];
1234 const int mb_xy = mb_x + mb_y * s->mb_stride;
1235 const int mb_type = s->cur_pic.mb_type[mb_xy];
1237 // error = s->error_status_table[mb_xy];
1290 const int mb_xy = mb_x + mb_y * s->mb_stride;
1291 const int mb_type = s->cur_pic.mb_type[mb_xy];
1293 int error = s->error_status_table[mb_xy];
1334 const int mb_xy = s->mb_index2xy[i];
1335 int error = s->error_status_table[mb_xy];
1339 s->mbskip_table[mb_xy] = 0;
1342 s->mbintra_table[mb_xy] = 1;