Revision d375c104 libavcodec/vp8.c

View differences:

libavcodec/vp8.c
471 471
                                  mb - 1 /* left */,
472 472
                                  mb + 1 /* top-left */ };
473 473
    enum { CNT_ZERO, CNT_NEAREST, CNT_NEAR, CNT_SPLITMV };
474
    enum { EDGE_TOP, EDGE_LEFT, EDGE_TOPLEFT };
474
    enum { VP8_EDGE_TOP, VP8_EDGE_LEFT, VP8_EDGE_TOPLEFT };
475 475
    int idx = CNT_ZERO;
476 476
    int cur_sign_bias = s->sign_bias[mb->ref_frame];
477 477
    int8_t *sign_bias = s->sign_bias;
......
512 512
        mb->mode = VP8_MVMODE_MV;
513 513

  
514 514
        /* If we have three distinct MVs, merge first and last if they're the same */
515
        if (cnt[CNT_SPLITMV] && AV_RN32A(&near_mv[1+EDGE_TOP]) == AV_RN32A(&near_mv[1+EDGE_TOPLEFT]))
515
        if (cnt[CNT_SPLITMV] && AV_RN32A(&near_mv[1+VP8_EDGE_TOP]) == AV_RN32A(&near_mv[1+VP8_EDGE_TOPLEFT]))
516 516
            cnt[CNT_NEAREST] += 1;
517 517

  
518 518
        /* Swap near and nearest if necessary */
......
526 526

  
527 527
                /* Choose the best mv out of 0,0 and the nearest mv */
528 528
                clamp_mv(s, &mb->mv, &near_mv[CNT_ZERO + (cnt[CNT_NEAREST] >= cnt[CNT_ZERO])]);
529
                cnt[CNT_SPLITMV] = ((mb_edge[EDGE_LEFT]->mode    == VP8_MVMODE_SPLIT) +
530
                                    (mb_edge[EDGE_TOP]->mode     == VP8_MVMODE_SPLIT)) * 2 +
531
                                    (mb_edge[EDGE_TOPLEFT]->mode == VP8_MVMODE_SPLIT);
529
                cnt[CNT_SPLITMV] = ((mb_edge[VP8_EDGE_LEFT]->mode    == VP8_MVMODE_SPLIT) +
530
                                    (mb_edge[VP8_EDGE_TOP]->mode     == VP8_MVMODE_SPLIT)) * 2 +
531
                                    (mb_edge[VP8_EDGE_TOPLEFT]->mode == VP8_MVMODE_SPLIT);
532 532

  
533 533
                if (vp56_rac_get_prob_branchy(c, vp8_mode_contexts[cnt[CNT_SPLITMV]][3])) {
534 534
                    mb->mode = VP8_MVMODE_SPLIT;

Also available in: Unified diff